OceanStor 5800 V3克隆LUN在使用过程中,存储上报Lun Switchover failure告警

发布时间:  2015-12-18 浏览次数:  217 下载次数:  2
问题描述

客户在OceanStor 5800 V3存储上为不同的LUN创建了多个LUN克隆,在使用过程中有其中一个克隆LUN上报WarningSwitchover failure occurred on the LUN in the storage pool
 

告警信息

告警信息如下:
 

处理过程
为什么会出现单独对克隆从LUN切换归属控制器的现象呢?检查日志发现,在Lun Switchover failure告警前,有主机启动器与存储前端端口断链的告警。



根据告警中启动器WWN,确认出现断链的主机是BackUp_DMS_Host



根据运行日志,可以确认克隆从LUN 314正是映射给主机BackUp_DMS_Host的:



检查BackUp_DMS_Host主机多路径日志可以发现,主机与存储相连的4条物理链路确实出现过中断:


 

4条物理链路之后又先后恢复:
 


 

其中目标器260b8038bc1df01d(对应存储控制器AP3号端口)链接的物理链路1恢复时间先于目标器26198038bc1df01d(对应存储控制器BP1号端口)链接的物理链路2,时间间隔大于5s
 

主机多路径在检查到链路恢复后,5s内没有其余路径上报,按照最优路径原则选择一条与存储相连的最优路径下发切LUN命令,要求恢复映射的LUN切换控制器到最优路径上。链路1恢复后,5s内链路2还未上报路径恢复,因此多路径对克隆从LUN 314下发了切换归属控制器到A的命令:



这就造成了克隆从LUN 314接收到切LUN命令后,因克隆关系不能切换归属控制器而告警。
 

至此发现主机BackUp_DMS_Host与存储之间存在链路闪断,排查主机到存储线缆连接,发现光纤线缆有松动,重新对线缆进行了加固处理。

根因

WarningSwitchover failure occurred on the LUN in the storage pool”意味着对指定LUNID314)进行归属控制器切换失败。检查LUN 314的基本信息可以发现:
 



LUN 314的归属控制器是控制器0B,同时工作控制器也是0B。而LUN 314又是一个克隆LUN,它的克隆主LUNLUN 214
 

LUN克隆时,克隆主LUN和克隆从LUN的归属控制器必须保持一致。检查主LUN 214
 



克隆主LUN 214的归属控制器是控制器0B,同时工作控制器也是0B,克隆从LUN 314都与主LUN一致。在LUN克隆时,若要切换有克隆关系的LUN归属控制器,必须主LUN和从LUN同时切换以便保持归属控制器一致。而单独对克隆从LUN做归属控制器切换,而不对克隆主LUN做相应操作,管理系统会自动终止切换操作,导致出现WarningSwitchover failure occurred on the LUN in the storage pool”。
解决方案

确认LUN进行归属控制器切换的原因,在发现是由于主机与存储之间存在链路闪断导致后,排查主机到存储线缆连接,确认光纤线缆是否有松动,重新对线缆进行了加固处理。

建议与总结

这类问题是通过一条告警衍生出其他的故障。有时单纯的一条告警只是指明了故障的问题表象,真正引起问题的是潜藏的故障。在充分理解故障告警的意义和触发因素后,要检查故障附近时间点是否还有其他异常,把之前的关系进行梳理,这有助于我们找寻真实的故障原因,排查出潜在的隐患。

END