集群诊断可以帮助用户发现容器服务集群中各类资源可能存在的潜在风险,包括:节点池、节点、容器组等。本文为您介绍如何配置节点诊断。
配置项 | 说明 |
---|---|
诊断类型 | 配置需要进行诊断的资源类型,本示例中选择 节点。 说明 当选择诊断资源为 节点 时,既支持对 ECS 节点进行诊断,也支持对 VCI 虚拟节点进行诊断。 |
节点 | 在左侧 全部节点 列表中,单击勾选需要进行诊断的节点,将其加入到右侧的 已选择节点 列表中。 |
诊断任务执行完成后,如果当前诊断任务的状态为 异常,则说明节点中存在风险项。您可以单击诊断任务列表 操作 列中对应的 查看详情,查看诊断报告。
诊断结果中会展示所有的诊断项、成功诊断项、未通过诊断项和警告诊断项,您需要查看 待处理 下的诊断项,并完成问题修复。
诊断任务完成后,您可以下载 PDF 格式的诊断报告。
说明
不同类型节点(ECS 节点、VCI 节点)的检查项略有不同,请以控制台为准。
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
节点状态检查 | 检查节点状态是否为 Running 状态。如果节点状态异常,会导致 Pod 无法被调度到该节点上。 | 请参考节点状态进行问题排查。 | 节点状态 |
节点是否可调度 | 检查节点是否可以调度。节点不可调度将导致集群实际资源和可用资源不一致。 | 查看节点调度配置(被封锁、置为不可调度等),排除故障。 | 管理节点 |
节点运行时和集群运行时是否一致 | 检查节点运行时与集群是否一致。 | 无 | 无 |
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
节点 CPU 负载 | 检查节点 CPU 最近一小时的平均使用率是否 ≥ 90%。 |
| |
节点 Memory 负载 | 检查节点内存最近一小时的平均使用率是否 ≥ 90%。 | ||
节点 MaxPod 检查 | 检查节点可容纳新 Pod 的数量是否 < 2。达到上限后,将无法调度新的 Pod 到该节点。 |
| |
节点 Swap 分区是否开启 | 检查节点内存交换区 (Memory Swap) 是否开启。 | 无 | 无 |
容器目录所在磁盘容量检查 | 检查节点磁盘的使用率 > 80%(仅针对系统盘 + 容器数据盘)。 | 登录节点,尝试清理磁盘,释放磁盘空间。 | 无 |
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
节点是否存在 unregister_netdevice | 检查节点内核是否出现 unregister_netdevice。可能存在网络设备无法正确注销,从而导致网络连接问题,影响到集群的整体运行。 | 提交工单 处理。 | 无 |
节点访问公网情况 | 检查节点是否可以访问公网。节点无法访问公网可能造成业务访问失败。 | 开启集群公网访问功能。 | 开启集群公网访问 |
节点 DNS 地址解析 | 检查节点的 DNS 地址解析功能是否正常。DNS 解析异常会导致节点无法通过域名访问公网。 | 检查节点 DNS 服务是否正常。 | 无 |
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
节点 CNI 组件状态检查 | 检查节点网络组件(VPC-CNI、Fannel)的运行状态。该组件异常会会导致节点容器网络不可用,无法执行创建删除容器操作。 | 提交工单 处理。 | 无 |
节点 CSI 组件状态检查 | 检查节点 CSI 组件运行状态。该组件异常会导致集群存储服务异常,无法使用存储服务。 | 提交工单 处理。 | 无 |
节点 Containerd 状态 | 检查节点 Containerd 服务状态是否为Active 。 | 无 | 无 |
节点 Cgroup 泄露检查 | 检查节点是否出现 cgroup 泄漏情况。节点出现 cgroup 泄漏可能导致监控采集出错,甚至容器无法启动。 |
| 无 |
节点 Kubelet 状态 | 检查节点 Kubelet 状态。 | 无 | 无 |
Kube-Proxy 组件运行状态检查 | 检查节点 Kube-Proxy 组件运行状态。 | 无 | 无 |
节点 Systemd Hung 情况 | 检查节点是否出现 Systemd Hung 情况。 | 登录节点,通过systemctl daemon-reexec 重启节点 Systemd。 | 登录节点 |
节点 Systemd 版本 | 检查节点的 Systemd 版本。Systemd 版本过低可能存在稳定性风险,导致组件无法正常运行。 | 无 | 无 |
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
内核 SoftLockupError | 检查节点内核是否出现 SoftLockupError 错误。通常表示 CPU 被某个进程长时间占用而无法执行其他任务,这可能导致整个系统或者某些关键服务变得不可响应。因此,出现该问题时,需要迅速定位并解决问题,以防止系统出现更严重的问题或者影响其他任务的正常运行。 | 提交工单 处理。 | 无 |
内核 RCUStallError | 检查节点内核是否出现 RCUStallError 错误。RCUStall 是 Linux 内核中用于同步的一种机制,如果出现 RCUStallError,意味着这个机制出现了问题,可能导致系统问题,例如:系统调用失败,进程死锁等,从而影响到整个系统的稳定性。 | 提交工单 处理。 | 无 |
内核 Oops | 检查节点内核是否出现 Oops。内核 Oops 表示操作系统内核遇到了无法处理的条件,或者严重的系统错误。通常会导致系统功能失效或者系统完全崩溃。因此,它直接关系到系统的稳定性和可用性,应被视为最高优先级。 | 提交工单 处理。 | 无 |
内核 Ext4FsError | 检查节点内核是否出现 Ext4FsError 错误。Ext4 是 Linux 系统中常用的文件系统,如果出现 Ext4FsError,通常意味着文件系统存在严重问题,l数据损坏,文件丢失等,这会影响到系统的正常运行。更严重的是,文件系统问题可能会导致数据丢失,这是非常严重的问题 | 提交工单 处理。 | 无 |
诊断项 | 检查内容 | 修复建议 | 参考文档 |
---|---|---|---|
检测 VCI 相关 AccountQuota,Quota 不足时提前预警 | 检查当前账户下 VCI 剩余资源配额是否少于 10%。资源过少可能导致业务使用时配额不足。 |
| |
检查 VCI 虚拟节点对应的元集群 Pod 的运行状态 | 检查 VCI 虚拟节点对应元集群 Pod 的运行状态,如果元集群 Pod 异常,可能导致虚拟节点上的工作负载运行异常。 | 提交工单 处理。 | 无 |
通过主动创建和删除 Pod,测试 VCI 虚拟节点创建、删除 POD 是否正常 | 在 VCI 虚拟节点上,执行 创建工作负载 巡检案例,确认此虚拟节点上的工作负载是否能正常创建。 | 提交工单 处理。 | 无 |
检查 VCI 虚拟节点上的 Pod 状态是否均正常 | 检查 VCI 虚拟节点上是否存在未就绪的 Pod。 | 请检查 VCI 虚拟节点上的 Pod 状态,及时确认 Pod 未就绪的原因并处理。 | 无 |