近期处理了一个NetApp FAS2554前面故障灯一直点亮的case,本文对于分析过程和最终的问题发现做一个分享,欢迎讨论,可以add wechat at StorageExpert。
外观检查:
客户反馈,一套FAS2554存储,没有任何扩展柜,前面板的故障灯近期一直是亮的,但没有其他任何故障灯,核对检查了控制器的故障灯,都是熄灭正常的。
客户做过的尝试:
某些所谓专业人员已经对这个存储做了故障分析,结论是需要重启控制器,然后控制器也重启了,但是故障依旧存在。至于为什么要重启控制器,就不知道了。基本上就是重启大法。
下面是我们的分析过程:
1. 检查两个控制器的message文件
对两个控制器近期的messages文件做了详细的检查,没有发现任何和硬件有关的报错。
2. 系统检查
检查了system health的情况,发现一个控制器是degraded
再仔细检查,发现是SP的网络没有接,这个问题不大,不是导致整个控制器亮灯的原因。
检查fru 的LED故障灯情况,两个控制器全都是off
检查DIMM的ECC报错,也正常。
检查sensor和environment 情况,所有都正常
检查storage fault的情况,发现如下的异常点。
四个电源模块的状态都是OK,但是status描述有三个显示 DC under VOLTAGE,这是不正常的。另外整个enclosure 的状态显示为FAIL。
3. sp检查
检查sp的状态,工作正常,但两个控制器的版本有差异,一个是 2.2.3, 另外一个是 2.2.4。
初步分析结论
到此,我们可以初步得出结论,导致FAS2554系统控制器故障灯点亮的原因在于四个电源模块的不正常的矛盾状态,但什么原因导致出现四个电源模块的status都显示DC under voltage呢?初步判断是2个sp的版本不同,低版本2.2.3的可能有bug,没有准确的读到电源的状态信息。
行动计划
基于上面的判断,计划如下:
1. 升级其中一个控制器的SP firmware版本到 2.2.4
2. 如果升级完成后,故障依然存在,就对有问题的电源模块依次做插拔动作。
执行情况
按照上面的计划,我们首先升级了SP的版本,但升级后我问题依旧,说明这个不是SP的bug导致。开始执行第二个计划,对电源模块做插拔动作,这个时候悲剧发生了,插拔了其中一个电源,30秒内又插了回去,但是系统console上马上给出提示:
[FAS2554-02:monitor.fan.critical:EMERGENCY]: 2 fans have failed. Replace them to avoid overheating. If not corrected, system will shutdown in 2 minutes.
然后紧接着给出提示,multiple fan failed, system will shutdown immediately.
两个控制器都shudown了。
进一步处理和分析
由于系统自己shutdown了系统,ontap是不会做failover之类的,两个控制器都关机了。通过插拔控制器让两个控制器重新启动恢复业务。进一步分析问题,解决问题的思路开始转移到bug方面。果然,找到了相关的一模一样的bug说明。
845945 - Fault LED stays lit after DC under-voltage event
网站连接 NetApp Support Site
bug的具体说明:
After a DC under-voltage event, the storage shelf OPS panel fault LED remains lit, and incorrect EMS messages continue to be generated, even after the voltage returns to correct levels.
影响的版本:
8.0.2P4, 8.1.2, 8.1.3, 8.1.4P2, 8.1.4P4, 8.1.4P8, 8.2.1, 8.2.1P1, 8.2.1P2, 8.2.1P3, 8.2.2, 8.2.2P1, 8.2.2P2, 8.2.3, 8.2.3P1, 8.2.3P2, 8.2.3P3, 8.2.3P4,8.2.3P5, 8.2.3P6, 8.2P3, 8.2P5, 8.3, 8.3P1, 8.3P2
客户的版本非常完美的命中了这个bug。
当然,解决这个问题,最彻底的办法就是升级ONTAP版本。如果不想升级,也有workaround的办法,
Remove and reinsert the power supply unit (PSU) that experienced the under-voltage event. To identify the PSU you need to operate on, use the "storage show fault -v" command (available in the nodeshell for clustered Data ONTAP) and look under the Power Supplies: Element Status section. E.g. Power Supplies: Element Status Status Bytes Status Descriptions 1: OK 01,00,04,A0 DC UNDER VOLTAGE, RQSTED ON 2: OK 01,00,00,A0 RQSTED ON
其实就是我们之前做的对有影响的电源做插拔动作。但不幸的是我们又命中了sp的一个bug,sp没有及时识别到电源又插了回去,依然认为多个fan有故障,直接shutdown了机器。
好了,不写了,都是泪,前后折腾了半天,还把机器搞挂了。