用隔离法定位电源故障
电源报错时,「模块坏了」只是三种可能之一:也可能是供电回路(市电、PDU、线缆)有问题,或者故障落在背板与主板侧。区分它们靠的是隔离——先记录 BMC 事件与指示灯状态,再通过单路测试和模块左右互换,观察告警是否随模块移动。与内存定位一样,核心纪律是每一步只改一个变量,否则现象变了也说不清是什么导致的。
基本信息
| 适用对象 | 支持冗余电源的机架服务器与刀片机箱 |
|---|---|
| 线索来源 | 模块指示灯、BMC 的 SDR 状态、SEL 事件 |
| 核心手段 | 单路运行测试 + 模块位置互换 |
| 前提条件 | 确认机型支持热插拔、冗余此前处于在线状态 |
| 关键判据 | 告警跟随模块移动还是留在插槽位置 |
| 收尾动作 | 故障模块贴标签走 RMA,恢复冗余并复查 SEL |
典型使用场景
- BMC 报某路电源故障,需要判断是换件还是报修线路
- 换上新模块后告警依旧,确认问题是否在背板或插槽
- 机房配电改造后出现批量电源告警,定位是否与回路相关
- 冗余丢失后无法恢复,判断两路是否真的来自独立链路
- 返修前完成初步隔离,减少厂商上门后的反复排查
定位步骤(确认支持热插拔后)
定位步骤(确认支持热插拔后)
# 1. 记录基线:BMC 事件、模块指示灯、当前功耗
# ipmitool sdr type "Power Supply"
# ipmitool sel elist | tail -20
# ipmitool dcmi power reading
# 2. 标记两路模块为 A / B,记录各自电源线来源
# 3. 单路测试:在冗余前提下拔除 B,观察系统状态与告警变化
# 4. 交换 A / B 的位置后复测,观察告警是否跟随模块移动
# 5. 判读:告警跟模块走 → 更换模块;
# 告警跟插槽走 → 查背板与供电回路
# 6. 恢复原状:确认冗余恢复、SEL 无新增告警判据对照表
| 观察结果 | 推断 | 后续动作 |
|---|---|---|
| 告警随模块迁移 | 模块本体故障 | 更换模块并复查冗余状态 |
| 告警留在原插槽 | 背板或插槽侧问题 | 上报硬件维修,避免反复换模块 |
| 单路供电即无法开机 | 单路容量不足或该路供电异常 | 核算负载并检查该路配电 |
| 两路都报输入丢失 | 上游配电或 PDU 问题 | 优先查机房侧,不要先换模块 |
| 换件后告警消失但冗余未恢复 | 配置或识别延迟 | 回读状态,必要时重置 BMC |
不支持热插拔的机型必须先彻底断电再操作:带电插拔电源模块可能损坏背板连接器,代价远高于多停几分钟。
做单路测试前先确认两路确实来自不同 PDU:接到同一路时,测试只能证明负载够用,证明不了冗余有效。