本文是对近期更换一个net App AFF-A300 控制器更换过程中遇到问题的简单总结,希望对大家有所帮助,避免未来再进坑。
客户环境:
客户是一台NetApp的All Flash存储系统A300的一个控制器offline,另外一个控制器已经成功takeover了这个故障控制器,并且这个故障控制器也无任何串口输出。
客户的基本环境是 Data ONTAP版本是 9.3P9,BIOS版本是11.2.1,SP版本是5.3。
Data ONTAP 9版本更换控制器相对比较容易,基本上1个小时左右就可以轻松搞定。但随着将故障控制器从chassis机头中抽出来,厄运就开始了。先后命中了四个bug,其中三个是严重bug。对于细节内容感兴趣或者遇到相同问题可以联系我们。加vx wechat: StorageExpert。下面就是各种问题复盘,可以搬小板凳来听了。
为了描述方便起见,客户正常的控制器是A,故障控制器是B。
1. 抽出故障控制器B,正常控制器A马上宕机,客户反馈业务挂了
一个cluster 系统,将故障控制器B抽出来准备更换,但客户反馈说A控有问题了,刚听到这个消息,有点不相信。没有动A控,怎么会A控宕机呢?马上将串口线切换到A控,发现A控已经到了Loader。
这是我们幸运的命中的第一个bug
1339659 - Storage systems experience an "invalid partner module" system disruption
这个在很多的ONTAP版本中都有这个bug,主要的设备是FAS27,FAS26和FAS82这一代产品。
下面是问题描述:简单来说就是一个正常的HA环境,一个控制器接管了另外的一个控制器,这时候将被接管的控制器从机头中抽出,将对正常控制器触发panic,导致宕机。
Some storage systems might intermittently experience a system disruption and trigger a "PANIC: Partner Present: invalid partner module" error message when one controller is removed from the chassis while the HA partner controller has taken over the controller. The panic is initiated when information about the HA partner controller cannot be read over the midplane of the chassis.
2. 启动A控,没有启动成功
由于A控还在继续提供客户业务,所以马上对A控做重启,尽快恢复业务。串口线到A控后,发现A控是loader状态,输入boot_ontao启动设备。悲剧再次发生,系统没有启动成功,abort了。abort信息如下:
Boot Loader version 6.0.5
Copyright (C) 2000-2003 Broadcom Corporation.
Portions Copyright (C) 2002-2018 NetApp, Inc. All Rights Reserved.
BIOS POST Failure(s) detected: PCIe device missing error detected. Abort AUTOBOOT
这个问题是BIOS的bug导致,当前BIOS的版本是11.2.1,升级到11.20以后就可以解决这个bug。
3. A控彻底挂掉
当时看到PCIe device missing的报错,马上想到可能是SP或者BIOS的问题,因为对于这个控制器没有做任何的物理动作。所以安排现场工程师对控制器做一个插拔重启,看是否可以正常启动。
悲剧又发生了,对A控做插拔后,串口没有任何反应。但主板上可以看到已经加电了。其实正常这个情况,SP应该是可以通的。由于串口没有任何反应,就无法对存储做任何操作。对存储下电,完全放电,重新启动,也是一样效果。这个应该是命中了FAS8200一个批次设备中的超级电容故障bug。现象就是控制器重启,可以看到加电,但串口无任何输出。
4. 新更换控制器亮黄灯
到此,原来已经故障的B控,加上又彻底挂掉的A控,现场只有一个新的控制器。利用新的控制器,对最后故障的A控做了更换,手工assign了磁盘,先恢复业务。但更换A控启动后,又命中了第四个bug,新的控制器亮黄灯,service event显示 NV battery 的Sensor 234 Fault。如下图所示:
这个是SP的bug,对于FAS8200/A300 在SP 5.8以后做了修正。
bug描述是 During the NVRAM battery learning cycle the battery status the fault LED may turn on。大概每间隔70天会有一次锂电池的学习周期,用时19个小时完成。完成以后,这个故障灯就正常了。
到此,我们可以看到,这次控制器更换完美的命中了Data ONTAP的bug导致正常控制器宕机,BIOS bug导致控制器无法启动,SP的bug导致控制器亮黄灯,再加上一个物理缺陷的bug,非常完美的一个case。