一、操作场景
注意:在健康检查过程中,你的集群内会自动新建 namespace tke-cluster-inspection,并安装一个 DaemonSet 进行节点信息采集,检查结束后均会被自动删除。
二、主要检查项目
| 检查类别 | 检查项 | 检查内容 | 仅独立集群 |
| 资源状态 | kube-apiserver 的状态 | 检测组件是否正在运行,如果组件以 Pod 形式运行,则检测其24小时内是否重启过。 | 是 |
| | | kube-scheduler 的状态 | 是 |
| | | kube-controller-manager 的状态 | 是 |
| | | etcd 的状态 | 是 |
| | | kubelet 的状态 | 否 |
| | | kube-proxy 的状态 | 否 |
| | | dockerd 的状态 | 否 |
| | master 节点的状态 | 检测节点状态是否 Ready 且无其他异常情况,如内存不足,磁盘不足等。 | 是 |
| | worker 节点的状态 | 检测节点状态是否 Ready 且无其他异常情况,如内存不足,磁盘不足等。 | 否 |
| | 各个工作负载的状态 | 检测工作负载当前可用 Pod 数是否符合其期望目标 Pod 数。 | 否 |
| 运行情况 | kube-apiserver 的参数配置 | 根据 master 节点配置检测以下参数:max-requests-inflight:给定时间内运行的非变更类请求的最大值。max-mutating-requests-inflight:给定时间内运行的变更类请求的最大值。 | 是 |
| | kube-scheduler 的参数配置 | 根据 master 节点配置检测以下参数:kube-api-qps:请求 kube-apiserver 使用的 QPS。kube-api-burst:和 kube-apiserver 通信的时候最大 burst 值。 | 是 |
| | kube-controller-manager 的参数配置 | 根据 master 节点配置检测以下参数:kube-api-qps:请求 kube-apiserver 使用的 QPS。kube-api-burst:和 kube-apiserver 通信的时候最大 burst 值。 | 是 |
| | etcd 的参数配置 | 根据 master 节点配置检测以下参数:quota-backend-bytes:存储大小。 | 是 |
| | master 节点的配置合理性 | 检测当前 master 节点配置是否足以支撑当前的集群规模。 | 是 |
| | node 高可用 | 检测目前集群是否是单节点集群;检测当前集群节点是否支持多可用区容灾。即当一个可用区不可用后,其他可用区的资源总和是否足以支撑当前集群业务规模。 | 否 |
| | 工作负载的 Request 和 Limit 配置 | 检测工作负载是否有未设置资源限制的容器,配置资源限制有益于完善资源规划、Pod 调度、集群可用性等。 | 否 |
| | 工作负载的反亲和性配置 | 检测工作负载是否配置了亲和性或者反亲和性,配置反亲和性有助于提高业务的高可用性。 | 否 |
| | 工作负载的 PDB 配置 | 检测工作负载是否配置了 PDB,配置 PDB 可避免你的业务因驱逐操作而不可用。 | 否 |
| | 工作负载的健康检查配置 | 检测工作负载是否配置了健康检查,配置健康检查有助于发现业务异常。 | 否 |
| | HPA-IP 配置 | 当前集群剩余的 Pod IP 数目是否满足 HPA 扩容的最大数。 | 否 |
| | |||
| | |||
| |
三、操作步骤
1. 登录 容器服务控制台,选择左侧导航栏中的运维中心 > 健康检查。
2. 在健康检查页,选择需要健康检查的集群,并为其选择合适的检查方式。健康检查的三种方式分别为批量检查、立即检查和自动检查。
·批量检查:适用于同时检查多个集群。
·立即检查:适用于只检查一个集群。
·自动检查:适用于需要周期性检查的集群。选择需要周期检查的集群,单击自动检查。如下:
在自动检查设置页面,可根据你的需求设置开启状态、检查周期和时刻。如下:
3. 选择好检查方式之后,等待检查完成,可查看检查进度。如下:
4. 检查完成后,可单击查看结果以查看检查报告。如下:
5. 在检查报告页面,选择资源状态和运行情况分别查看资源状态检查结果和运行情况检查结果:
·单击检查内容可展示具体的检查内容。
·单击异常可查看异常级别、异常描述、异常原因、异常影响和修复建议。如下: