暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

RAID&LUN失效问题处理案例

原创 tby 2022-07-08
2155

RAID&LUN失效问题处理案例


【故障现象】

  1. 在存储界面存在紧急告警,显示RAID失效或者LUN失效,伴随硬盘失效告警。
  2. 在存储后台通过showrg和showlun的命令查询,有RAID和LUN的状态为Falut状态。

——详细描述故障现象

【问题影响】

  1. 失效的RAID或者LUN所承载的业务中断。

【可能原因】

RAID&LUN失效的可能性因素:——列出问题的可能性因素

  1. 硬盘故障;
  2. 软件版本低(按LUN失效版本或者BST未打开)。
  3. 软件问题:资源泄漏,软件误判等。

【定位思路】 ——列出当前问题几种场景

  1. 确认RAID&LUN失效表现:
  2. RAID失效,并且该RAID中所有的LUN都失效,这种情况需要按照硬盘失效的先后顺序做修复,同时分析硬盘失效的原因并进行风险评估。
  3. RAID降级,该RAID中的LUN,只有部分失效,仍有部分是Normal状态(当RAID组中只有1个LUN时,该LUN为失效状态)。此场景是由于版本没有BST功能(需要先升级至新版本再做恢复操作),或者BST功能未打开导致(恢复操作前打开BST功能)。
  4. 操作恢复中的注意事项
  5. 在未修复RAID之前,切勿拔插任何硬盘,避免搞混硬盘故障时间和硬盘位置。
  6. 优先修复RAID,再修复文件系统(若文件系统损坏),最后恢复业务。
  7. 全部恢复正常后,更换故障硬盘,然后收集存储日志和硬盘Smart信息分析硬盘故障原因。

【解决措施】——针对每种场景列出解决措施

场景1:RAID失效,其包含的所有的LUN都失效

恢复策略

  1. 若硬盘非同一时间故障,找到硬盘故障的先后顺序,将先失效的硬盘拔出(放至槽 位上),然后将后失效的故障的硬盘手动拔插(拔插间隔20s),确认后失效的硬盘物理状态正常之后,revive后失效的硬盘,将RAID修复为降级状态,进行重构或者数据备份。
    1. 对于数据很重要的设备,务必停业务进行备份数据,数据备份之后,再进行重做RAID或者重构(若再次重构失败,建议重做RAID)。
    2. 如果后失效的硬盘拔插后仍无法接入设备,根据客户的数据重要程度选择先失效的硬盘做恢复(风险务必和客户同步到位:存在丢失数据风险,丢失数据量无法评估),或者将硬盘邮寄至第三方数据恢复公司做恢复(镜像盘必须为华为硬盘,否则硬盘无法接入设备)。
  2. 若硬盘在同一时间点失效,可以将该RAID失效的所有硬盘强制revive之后,将RAID修复为Normal状态。
  3. RAID修复后,恢复业务,然后收集相关日志(存储日志和硬盘smart信息)返回分析。

RAID常规Revive恢复方法

以RAID5为例,一个RAID组中超过2块硬盘逻辑失效。

注意:本操作方法只适应于RAID失效且该RAID中所有的LUN全部失效,如果RAID中只有1个LUN,需要确认BST有未打开。

  1. 查看RAID类型,确认RAID状态、LUN状态以及失效硬盘的槽位号和时间点:

登录存储管理界面,找到告警ID为 900 的告警:硬盘失效,记录硬盘失效的时间点及先后顺序,如下图(产品不同,版本不同,分为OSM和ISM界面,下图为ISM界面):可知(0,8)槽位硬盘先失效,(0,4)槽位硬盘后失效(此项顺序务必正确,顺序记反,会导致数据丢失)。

通过后台登录至Cli模式,输入showrg获取RAID的ID、类型和状态,输入showlun获取LUN的ID和状态以及LUN归属的RAID,如下图:其中RAID1的类型为RAID5,状态为fault(失效),其所属的LUN状态全部为失效。

  1. 确认硬盘的物理状态和逻辑状态:

通过后台登录至Cli模式,输入showdisk –l 和showdisk –p 分别获取硬盘的逻辑状态和物理状态,如下图:(0,4)(0,8)逻辑状态为fault,物理状态为nomal。

  1. 修复RAID为降级状态

修复最后失效的硬盘为nomal状态:

进入mml命令模式下面,通过(revive disk框号 槽位号)命令操作恢复后失效的硬盘,如下图后失效的为(0,4)槽位硬盘。注意:如果(0,4)槽位的硬盘物理状态为fault,需要先拔插一下该槽位的硬盘使其物理状态恢复为noaml(查看方法同showdisk -p)

修复所有的LUN为nomal状态,RAID为降级状态:

修复完硬盘之后,通过(revive raidlun RAID-ID)命令继续修复所有的LUN为nomal,同时RAID的状态会变为降级状态(Degrade

  1. 确认修复完成

执行完第3步之后,exit到cli模式,重新查看最先失效的硬盘的状态是否为重构状态(Reconstruction is in process),如果为重构状态则修复完成,如下图(0,8)槽位硬盘的状态为重构状态:

如果硬盘的状态不为重构状态,为Fault状态,如下图:

当出现Fault状态时:

通过CLI模式下的 showdisk -p 确认该槽位的硬盘的物理状态也为fault时,需要对该槽位的硬盘进行拔插操作(拔和插间隔20s以上),拔插后硬盘会进入重构状态,若仍未进入,联系相关研发人员。如果确认硬盘的物理状态为Normal时,可以拔插操作恢复;若现场无人,可以通过mml下面的模拟拔插盘进行恢复,如下图(为S2000、S5000的R1版本操作命令):

spu ui>dev setdiskout 0 8

pu ui>dev setdiskin 0 8

上述命令为S2000和S5000 R1/R2版本命令,其他命令如下:

S2600 R1:dev setdiskou 框号 槽位号 0

S2600 R2/R5 & S5000 R5:dev diskoutset 框号 槽位号 1

注:此处的框号是内部框号。如果只有1个框,内部框号和外部框号是相同的,如果有多个框,需要确认内部框号和外部框号(用户框号)是否一致。

R1:

R5:

操作完成之后,再次确认该槽位的硬盘是否进入重构状态,若仍未进入重构状态,及时联系研发人员。若已经进入重构状态,可以先恢复业务(如果客户数据很重要时,需要考虑备份数据或者停业务重构)。

场景2:RAID降级,其包含的LUN失效(全失效或部分失效)

  • 仅讨论S5000V100R001和S2300E存储因硬盘坏道导致LUN失效场景下的处理。
  • 适用场景需要满足两个条件:第一,存在LUN失效;第二,失效LUN所在的RAID组不为Fault状态(可能为Degrade或者Normal状态)。
  • 修复操作以一个RAID组为单位,若LUN故障存在于多个RAID组,则需要对每个RAID分别处理。
  • 坏道导致LUN失效原因

当硬盘上发现有坏道,如果无法修复坏道所在的数据,如果存储无BST(坏块标记)功能,或BST功能默认关闭,便将坏道所在的LUN置为“Fault”状态,也就是LUN失效。主要两种场景,下面将分别介绍。如果通过下面方法还不能判断出属于哪一种,请联系技术支持。

  • BST功能在各个软件版本开关状态

BST功能项

S2300E

S5000

<1.02.01.217.T03

<1.03.01.116.T04

默认关闭

1.02.01.217.T03~1.02.01.221.T01

1.03.01.116.T04~1.03.01.117.T01

默认打开

>=1.02.01.222.T04

>=1.03.01.118.T04

LUN失效场景一

【触发条件】

    1. RAID 5一块硬盘故障(硬盘故障或者被拔出)后,RAID组处于降级状态。
    2. 故障盘在重构完成之前,该RAID组其他成员盘上出现坏道。

出现上述两个条件时,就会将坏道所在的LUN置为“Fault”状态;绝大

多数LUN失效都属于这种情况。

【识别方法】

  1. 分别查看LUN和RAID状态,确认失效LUN所在的RAID组不为Fault状态(如果为degrade说明故障盘正在重构或无热备盘可用)。
  2. 根据存储日志查看阵列告警文件curalarm.txt和运行日志,或者直接在OSM管理界面上查看告警,下面以告警文件为例,如下示例,红色框内6025告警ID表示硬盘物理故障(也有可能是900,表示硬盘逻辑故障),01、16表示故障盘槽框号和槽位号,即(1,16)号盘物理故障。

  1. 在硬盘故障后,紧跟着LUN失效告警,如上绿色框内913表示LUN失效告警,9表示失效LUN ID,即LUN 9失效。
  2. 通过上述告警时间点上确认,LUN 9有可能是(1,16)号盘故障,重构过程遇到同一RAID其它成员盘有坏道,导致LUN失效。
  3. 查看运行日志runlogxxxx-xx-xx-xx-xx-xx.txt,确认在故障盘重构开始之后是否有重构失败的打印,如下红色框内表示故障盘重构失败,绿色框内分别表示重构开始和重构成功,如下示例表示硬盘故障启动重构,重构过程中重构失败,跳过重构失败的地方,再次启动重构,最终重构成功(如果故障盘还未重构成功,则运行日志不会有重构成功的记录)。

  1. 查看硬盘故障告警时间和故障盘开始重构时间比较吻合,同时LUN失效告警时间和硬盘重构失败时间也比较吻合。
  2. 满足上述条件说明符合LUN失效场景一。

【恢复措施】

  1. 命令行下执行showdisk -l查看所有硬盘当前逻辑状态,如下示例(1、16)为

已重构。

  1. 若硬盘状态为“recontructing”或者“copy backing”,则需要等待完成。
  2. 若硬盘状态为“reconstructed”,showdisk –s x sl y(x、y为已重构故障盘的框号

和槽位号),确认故障盘的关联盘热备盘(Associated disk),如下示例(1、16)盘重构到(0,13)号盘,即关联到(0,13)号盘。

  1. 命令行下执行showallver确认磁盘阵列版本,参考

BST功能在各个软件版本开关状态,如果该版本BST功能项默认关闭(如果该版本无BST功能项,请直接跳到步骤7继续),登陆主控mml,在mml下输入bst enable 1,打开bst功能项,然后再输入bst enble 3确认bst的状态为1,如下示例图:

  1. 登录到阵列主控制器,进入mml模式,手动恢复失效的LUN。
  2. 拔插(间隔30s)已用的热备盘(故障盘关联重构的),然后(间隔30s)拔插故障盘,重新启动重构,此时可以恢复业务(如果业务数据重要时,进行备份数据,或者等待重构完成之后再起业务)。

OceanStor admin> debug //进入debug模式

Enter Password: //密码为654321

Oceanstor:~#mml //进入mml模式

spu ui>revive lun 9 //手动恢复失效的LUN,本例中9为失效LUN的LUN ID,如果有多个LUN都由于硬盘故障重构过程遇到坏道而失效,依次进行revive。

spu ui>exit //执行3次exit退出阵列。

Oceanstor:~#exit

OceanStor admin>exit

  1. 如果该版本无BST功能:

拔出故障盘和其相关联的热备盘,升级存储至新版本。待升级完成后,确认BST功能开关已打开,然后插入热备盘(设置为空闲热备盘),等待1分钟,确认原故障槽位硬盘状态为正在重构状态,若非此状态,重新插入原故障盘,等待30s后拔出,启动硬盘重构。

注:LUN失效后,由于设备重启、故障盘被拔插或硬盘自己闪断重新接入,导致该盘回拷,如果回拷贝成功,就会看到LUN失效,但无盘故障的现象,此时故障盘(回拷成功)上失效LUN的数据是无效的,不能直接revive恢复失效LUN,需要打开BST或升级存储软件后,拔掉该故障盘,重新重构该故障盘。

LUN失效场景二

【触发条件】

  1. 没有硬盘故障,RAID组为Normal状态。
  2. 两块(或者以上)成员盘相同LBA地址发现坏道,系统无法进行坏道修复,如果存储无BST(坏块标记)功能,或BST功能默认关闭,坏道所在的LUN也会被置为“Fault”状态。

【识别方法】

  1. RAID组当前Normal状态。
  2. 告警记录中LUN失效时间点之前没有该LUN所在RAID成员盘故障。
  3. 告警记录中LUN失效时间点之前没有该LUN所在RAID组降级告警。

【恢复措施】

  1. 命令行下执行showallver确认磁盘阵列版本,参考

BST功能在各个软件版本开关状态,如果该版本BST功能项默认关闭,登陆主控mml,在mml下输入bst enable 1,打开bst功能项,然后再输入bst enble 3确认bst的状态为1,如下示例图:

  1. 登录到阵列主控制器,进入mml模式,手动恢复失效的LUN。

OceanStor admin> debug //进入debug模式

Enter Password: //密码为654321

Oceanstor:~#mml //进入mml模式

spu ui>revive lun 9 //手动恢复失效的LUN,本例中9为失效LUN的LUN ID,如果有多个LUN都由于硬盘故障重构过程遇到坏道而失效,依次进行revive。

spu ui>exit //执行3次exit退出阵列。

Oceanstor:~#exit

OceanStor admin>exit

  1. 如果该版本无BST功能项,仍参考场景一中恢复措施执行升级及相关操作。

【恢复后检查】

1、确认系统双控正常,BST功能开关打开。

2、确认RAID为降级或者Normal状态,所有的LUN为normal状态。

【附录】

【适用范围】

V1000、S2000、S5000、S2600 产品

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论