本文提供了一份指南,帮助您正确安装、配置和使用ACK GPU故障检测组件,以便更好地管理和维护ACK环境中的GPU资源。通过本文内容,您可以了解如何监测GPU资源的健康状态,提高集群的可靠性和效率。
背景信息
ack-node-problem-detector组件是ACK基于社区开源项目node-problem-detector进行改造和增强的集群节点异常事件监控组件。ACK在该组件中提供了丰富的GPU相关的故障检测项以增强GPU场景的故障发现能力,当发现对应的故障时会根据故障类型产生相应的Kubernetes Event或Kubernetes Node Condition。
使用NPD检测GPU故障
前提条件
已安装ack-node-problem-detector组件,且组件版本为1.2.23及以上。
注意事项
NVIDIA的XID和SXID是GPU驱动通过NVRM事件机制写入
/var/log/messages
或/var/log/syslog
中。NPD会记录每个XID和SXID是否已被处理,如果在发现XID或SXID后,只要对节点进行重启操作,不管这条XID或SXID所对应的问题是否已被解决(例如Xid 79指明需要更换GPU设备才能解决问题),NPD将不会对这条XID或SXID产生Event或Condition,即NPD认为这条XID已被解决。NPD检测NVIDIA XID或者NVIDIA SXID是通过检测节点
/var/log/messages
文件或/var/log/syslog
文件完成的。如果dmesg日志被重定向到其他文件,NPD将无法检测NVIDIA XID和SXID。
检测内容及修复建议
修复建议为None表示无需采取任何操作。
检测项名称 | 是否产生Node Condition | 是否产生Event | 描述 | 修复建议 |
检测项名称 | 是否产生Node Condition | 是否产生Event | 描述 | 修复建议 |
NvidiaXID13Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID31Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID43Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID45Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID48Error | 是
| 是(持续产生事件,直到问题修复)
|
| 重启节点。 |
NvidiaXID63Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID64Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID74Error | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |
NvidiaXID79Error | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |
NvidiaXID92Error | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |
NvidiaXID94Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaXID95Error | 是
| 是(持续产生事件,直到问题修复)
|
| 重启节点。 |
NvidiaXID119Error | 是
| 是(持续产生事件,直到问题修复)
|
| 关闭GSP并重启节点。 |
NvidiaXID120Error | 是
| 是(持续产生事件,直到问题修复)
|
| 关闭GSP并重启节点。 |
NvidiaXID140Error | 是
| 是(持续产生事件,直到问题修复)
|
| 重启节点。 |
NvidiaXID[code]Error | 否 | 是(仅产生三次事件)
| 未出现在该表中的其他XID。 | 提交工单。 |
NvidiaSXID[code]Error | 否 | 是(仅产生三次事件)
|
| None |
NvidiaEccModeNotEnabled | 是
| 是(持续产生事件,直到问题修复)
| 节点ECC Mode未开启。 | 开启ECC Mode并重启节点。 |
NvidiaPendingRetiredPages | 是
| 是(持续产生事件,直到问题修复)
|
| 重启节点。 |
NvidiaRemappingRowsFailed | 是
| 是(持续产生事件,直到问题修复)
| GPU存在行重映射失败。 | 更换GPU设备。 |
NvidiaRemappingRowsRequireReset | 是
| 是(持续产生事件,直到问题修复)
|
| 重启节点。 |
NvidiaDeviceLost | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |
NvidiaInfoRomCorrupted | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |
NvidiaPowerCableErr | 是
| 是(持续产生事件,直到问题修复)
|
| 更换GPU设备。 |