本文主要为您介绍安全组常见问题。
-
为什么容器之间网络不通?
-
如何给Kubernetes集群指定安全组?
-
集群审计功能是否可以取消或者在创建集群后再部署?
-
Kubernetes专有版本集群怎么更换证书有效期,以及更换各个组件的证书?
-
Pod无法创建,报错详情:no providers available to validate pod request
-
Secret在新建的Namespace下面无法使用
-
无法挂载default-token
-
审计日志查询方法
-
如何收集边缘Kubernetes集群节点的诊断信息?
-
CentOS 7.6系统的Kubernetes集群中kubelet日志含有“Reason:KubeletNotReady Message:PLEG is not healthy:”信息
为什么容器之间网络不通?
您可以参考以下步骤解决容器服务Kubernetes集群由于安全组导致网络不通的问题。
-
入方向授权对象为Pod 网络CIDR,且协议类型为全部的规则被删除。
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择集群信息。
-
在集群信息页面,选择集群资源页签,单击虚拟专有网络 VPC右侧的链接。
-
在资源管理页签,单击安全组下的数字。
-
单击目标安全组操作列的配置规则。
-
在入方向页面,单击手动添加。
-
填写协议类型、端口范围、授权对象,并单击保存。
说明
-
协议类型请选择全部。
-
授权对象填写为Pod的网段地址。
Pod的网段地址(Pod网络CIDR)可在容器服务管理控制台集群详细信息页面,集群信息区域查看。
授权对象的设置,可参见安全组应用案例。
入方向授权对象为Pod网络CIDR,且协议类型为全部的规则已添加。
-
-
新增ECS实例的安全组与集群所在的安全组不同。
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择集群信息。
-
在集群信息页面,选择集群资源页签,单击虚拟专有网络 VPC。
-
在专有网络详情页面,单击资源管理页签安全组下的数字,跳转到云服务器ECS管理控制台的安全组列表页面查看安全组的详细信息。
-
在安全组列表页面,查看安全组的名称。
-
在云服务器ECS管理控制台,选择左侧导航栏实例与镜像 > 实例。
-
在实例列表页面,单击目标实例的操作列的更多 > 网络和安全组 > 加入安全组,进入ECS实例加入安全组页面。
-
单击安全组复选框右侧的下拉箭头,输入步骤d查询到的集群安全组名称。
-
单击确定。
执行结果:
-
在云服务器管理控制台左侧导航栏,选择实例与镜像 > 实例,在实例列表页面,单击目标实例的名称。
-
在安全组列表区域,可看到ECS实例已加入集群所在的安全组。
-
如何给Kubernetes集群指定安全组?
当前暂不支持给Kubernetes集群指定安全组。但是创建Kubernetes集群时,容器服务ACK会自动创建一个默认安全组,您可以通过修改默认安全组的规则,达到指定安全组的效果。
集群审计功能是否可以取消或者在创建集群后再部署?
可以。具体操作,请参见使用集群API Server审计功能。
Kubernetes专有版本集群怎么更换证书有效期,以及更换各个组件的证书?
-
集群临近过期前两个月左右您会收到站内和短信通知,收到通知后在控制台集群列表页面单击证书更新按钮即可。具体操作,请参见更新专有版集群即将过期的证书。
-
如果Kubernetes集群证书已过期,具体操作,请参见更新专有版集群已过期的证书。
Pod无法创建,报错详情:no providers available to validate pod request
-
如果您没有自定义PSP,出现该报错是因为您把默认PSP删除了,恢复使用默认的PSP规则即可。具体操作,请参见【已弃用】使用Pod安全策略。
-
如果您需要自定义PSP,具体操作,请参见配置容器安全策略(新版)。
Secret在新建的Namespace下面无法使用
Secret是命名空间级别的,您需要在新建的Namespace下新建Secret。
无法挂载default-token
无法挂载default-token,具体报错信息如下:
Normal Scheduled 13m default-scheduler Successfully assigned dev/alibaba-demo-67fcdbfb8-zklnp to cn-hangzhou.10.7.3.16 Warning FailedMount 13m (x2 over 13m) kubelet, cn-hangzhou.10.7.3.16 MountVolume.SetUp failed for volume 'default-token-8twx9' : mount failed: exit status 1 Mounting command: systemd-run Mounting arguments: --description=Kubernetes transient mount for /var/lib/kubelet/pods/62d39b35-9a4d-11ea-9870-c24d56a0e904/volumes/kubernetes.io~secret/default-token-8twx9 --scope -- mount -t tmpfs tmpfs /var/lib/kubelet/pods/62d39b35-9a4d-11ea-9870-c24d56a0e904/volumes/kubernetes.io~secret/default-token-8twx9 Output: Failed to start transient scope unit: Argument list too long Warning FailedCreatePodContainer 3m40s (x49 over 13m) kubelet, cn-hangzhou.10.7.3.16 unable to ensure pod container exists: failed to create container for [kubepods burstable pod62d39b35-9a4d-11ea-9870-c24d56a0e904] : Argument list too long
Systemd版本太老旧。
-
升级Systemd,具体操作,请参见systemd。
-
执行
sudo systemctl daemon-reload
命令重启清零。更多信息,请参见systemd。
审计日志查询方法
RBAC相关变更操作的审计日志查询方法
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择集群信息。
-
在集群信息页面,选择集群资源页签,单击日志服务Project右侧的链接。
-
在日志存储 > 日志库页面,选择对应的
audit-
,单击查询分析。 单击右上角15分钟(相对),选择需要查询的时间段。
说明
时间段覆盖的范围是正常到出现问题时的这段时间,比如:3 天、7天或15天。
-
在查询/分析文本框中输入以下SQL查询命令,然后单击查询/分析。
requestURI: "rbac.authorization.k8s.io" not (verb: get or verb: watch)
-
单击
图标,在弹出的日志下载对话框中,选中通过Cloud Shell下载,单击确定。
ConfigMap相关变更操作的审计日志查询方法
在查询/分析文本框中输入以下SQL查询命令,然后单击查询/分析。更多操作,请参见审计日志查询方法。
requestURI: "configmaps" and not (verb: get or verb: watch or verb: list)
说明
上述查询命令在查询时,需要将替换为实际的ConfigMap名称。
Deployment的Pod扩缩容相关操作的审计日志查询方法
在查询/分析文本框中输入以下SQL查询命令,然后单击查询/分析。更多操作,请参见审计日志查询方法。
requestURI: deployments and (verb: update or verb: patch) and replicas and deployments and not deployment-controller
说明
上述查询命令在查询时,需要将替换为实际的Deployment名称。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/159127.html