如何定位和处理Cluster资源池节点故障
故障说明和处理建议
对于ModelArts 轻量算力集群,每个节点会以DaemonSet方式部署node-agent组件,该组件会检测节点状态,并将检测结果写到K8S NodeCondition中。同时,节点故障指标默认会上报到AOM,您可在AOM配置告警通知。
当发生节点异常时,在故障初步分析阶段,您可先按表1识别是否为亚健康并自助进行处理,如果不是,则为故障,请联系客户经理发起维修流程(如果无客户经理可提交工单)。
| NodeCondition Type | 分类 | 子类 | 异常中文描述 | 检测方法 | 处理建议 |
|---|---|---|---|---|---|
| NT_NPU_DRIVER | NPU | 其他 | npu dcmi driver异常。 | NPU驱动环境异常。 | 发起维修流程。 |
| NT_NPU_DEVICE | NPU | 其他 | npu dcmi device异常。 | NPU设备异常,昇腾dcmi接口中返回设备存在重要或紧急告警。 | 可能是亚健康,建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
| NT_NPU_NET | NPU | 链路 | npu dcmi net异常。 | NPU网络连接异常。 | 可能是亚健康,建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
| NT_NPU_CARD_LOSE | NPU | 掉卡 | NPU卡丢失。 | 节点规格的NPU卡数和k8sNode中可调度的卡数不一致。 | 可能是亚健康,建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
| NT_NPU_CHECK_RESIDUAL_PROCESS | NPU | 其他 | NPU残留进程检测。 | 从dp获取原始信息进行判断是否有残留进程。 | 建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
| NT_NPU_OTHER | NPU | 其他 | NPU其他错误。 | 检测到的其他NPU错误,通常为不可自纠正的异常,请联系技术人员支持。 | 发起维修流程。 |
| NT_NPU_NET_FLICKER_CHECK | NPU | 链路 | hccn tool网口闪断检查。 | NPU网络不稳定,存在闪断情况。通过hccn_tool-i ${device_id} -link_stat -g 查看4小时内闪断5次以上。 | 发起维修流程。 |
| NT_NPU_NET_CONFIG | NPU | 链路 | NPU网络配置异常。 | NPU参数面或超平面使能失败。 | 发起维修流程。 |
| NT_NPU_ECC_COUNT | NPU | 显存 | NPU ECC次数达到维修阈值。 | NPU的HBM总的多Bit Ecc隔离地址记录达到64个。 | 发起维修流程。 |
| NT_HIGH_FREQUENCY_FAULT | NPU | 其他 | NPU发生高频故障。 | 从节点annotation获取信息 | 发起维修流程。 |
| NT_NET_NTP_CHECK | Runtime | 其他 | ntp异常。 | ntpd或者chronyd服务异常。 | 发起维修流程。 |
| NT_KUBE_DISK_READONLY_CHECK | Runtime | 其他 | Kubelet硬盘只读 | 以下目录只读: /mnt/paas/kubernetes/kubelet | 发起维修流程。 |
| NT_SFS_CLIENT_PLUS_MANAGEMENT | Runtime | 其他 | SFS turbo client+安装失败。 | 从SFS侧OBS桶下载SFS turbo client+软件包后安装异常失败,原因未知,需要运维介入处理。 | 发起维修流程。 |
| NT_WARM_REDUNDANT_CLEAR | 节点管理 | 其他 | 权重预热的pod被删除,但是节点上存在/tmp/ckpt-warm-up-xxx的tmpfs挂载点。 | 权重预热的pod被删除,但是节点上存在/tmp/ckpt-warm-up-xxx的tmpfs挂载点。 | 1. 预期冗余的权重预热项会被自动卸载,不能卸载只可能对应的目录有人使用。 2. 找到残留的挂载点 cat /var/log/maos-node-agent/node-agent.log | grep NT_WARM_REDUNDANT_CLEAR | grep True 3. 找到使用的容器 lsof /tmp/ckpt-warm-up-xxx 4. 停止相关的容器后,5分钟左右挂载点可自动清理,故障码可恢复。 |
| NT_RX_QUEUE_CHECK | 节点管理 | 网络 | 网卡接收队列异常。 | 检查节点网络收包队列,判断是否只有0号队列在收包。 | 发起维修流程。 |
| NT_GPU_SMI_ECC_CHECK | GPU | 显存 | GPU ECC错误。 | 通过nvidia-smi -a查询到存在Pending Page Blacklist为Yes的记录,或多比特Register File大于0。对于Ampere架构的GPU,存在以下场景:
(参考NVIDIA GPU Memory Error Management)。 Ampere架构GPU显存错误分级:
| 可能是亚健康,建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
| NT_GPU_SMI_ERROR | GPU | 其他 | nvidia-smi返回信息中包含ERR。 | 通过nvidia-smi -a查询到ERR!,通常为硬件问题,如电源风扇等问题。 | 发起维修流程。 |
| NT_GPU_SMI_RUNTIME | GPU | 其他 | nvidia-smi执行错误,超时或者不存在。 | 执行nvidia-smi退出码非0。 | 发起维修流程。 |
| NT_GPU_SMI_ECC_COUNT | GPU | 显存 | ECC错误到达64次 | 通过nvidia-smi -a查询到Retired Pages中,Single Bit和Double Bit之和大于64。 | 发起维修流程。 |
| NT_GPU_CARD_LOSE | GPU | 掉卡 | GPU卡丢失。 | 节点规格的GPU卡数和以下任意值不相等:
| 发起维修流程。 |
| NT_GPU_SMI_INFOROM_ERROR | GPU | 其他 | infoROM告警。 | 执行nvidia-smi的返回信息中包含“infoROM is corrupted”告警。 | 发起维修流程。 |
| NT_GPU_OTHER | GPU | 其他 | GPU其他错误。 | 检测到的其他GPU错误,通常为硬件问题,请联系技术人员支持。 | 发起维修流程。 |
| NT_NET_IB_CHECK | IB | 链路 | IB网卡异常。 | ibstat查看网卡非Active状态。 | 可能是亚健康,建议先重启节点,如果重启节点后未恢复,发起维修流程。 |
部分故障模式通过华为云运维平台硬件告警监控发现,相关的故障定义和处理建议如表2所示。同时,这类故障产生时默认会上报AOM事件,您可在AOM配置告警通知。
| 故障码 | 分类 | 子类 | 异常中文描述 | 检测方法 | 处理建议 |
|---|---|---|---|---|---|
| A050804 | 硬件故障 | 硬件故障 | 通过硬件告警发现。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050809 | 硬件故障 | 硬件亚健康 | 底层硬件亚健康。 | 节点亚健康后,通过重启节点,故障10分钟仍未关闭,MAOS自动升级成该故障。 | 请在事件中心授权修复。 |
| A050812 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在超平面L1级别亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050813 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在超平面L2级别亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050814 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在超平面L3级别亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050815 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在参数面L1级别亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050816 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在参数面L2级别亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050820 | 硬件故障 | 硬件亚健康 | 通过硬件告警发现存在服务器相关亚健康故障。 | 硬件告警监控发现。 | 请在事件中心授权修复。 |
| A050899 | 硬件故障 | 其他 | 故障配合维修。 | 硬件告警监控发现硬件故障,此硬件进行维修时相关关联硬件需要停止业务配合维修。 | 请在事件中心授权修复。 |
| A050817 | 节点管理 | 节点运维 | 隔离与故障节点同 slice 下的非故障节点。 | 在 slice 某节点触发重部署时由计划事件进行创建,用于隔离与故障节点同 slice 下的非故障节点。 | 请在事件中心对同一slice下的故障节点进行授权修复。 |
| A200008 | 节点管理 | 节点准入 | 准入检测。 | 节点正在进行节点准入检测,包括基本的节点配置检查和简单的业务验证。 | 请等待一段时间,若长时间未清除,请联系华为云技术支持。 |
配置节点指标类告警通知
节点故障指标(nt_npg)默认会上报到AOM,您可以在AOM配置短信、邮件等通知方式。
以下步骤基于AOM2.0配置。
nt_npg指标type=2是无效值,nt_npg{type="NT_NPU_CARD_LOSE"} !=2表示过滤掉无效值。
- 登录AOM控制台
- 在左侧导航栏选择“告警中心 > 告警规则”,单击“创建告警规则”。
- 设置告警规则(以NPU掉卡为例)。
- 规则类型:选择指标告警规则。
- 配置方式:选择PromQL。
- 默认规则:选择自定义,命令行输入框:
sum(nt_npg{type="NT_NPU_CARD_LOSE"} !=2) by (cluster_name, node_ip,type) > 0图2 告警规则设置
- 告警条件:选择触发条件为持续时间1分钟,产生重要告警。
- 告警通知(可选):如果需要将告警通过邮件、手机方式通知您,可在告警通知处,为此告警规则配置行动规则。如果此处无行动规则,请新建告警行动规则。
配置节点事件类告警通知
节点故障事件会上报到AOM,您可以在AOM配置短信、邮件等通知方式。
以下步骤基于AOM2.0配置。
