由于另一个磁盘上的URE,MSA20 RAID5恢复失败

我有MSA20 12个磁盘上的一个磁盘arrays和3个LUN(每个RAID 5)。 几天前,其中一个LUN中的一个磁盘出现故障,我将其replace。 但raid5恢复失败13%,我在ADU报告中看到,其中一个磁盘有“错误logging= 5566”,根据SCSI规范,它是URE(感知代码= 0x11,限定符= 0x00)。 在串行日志中,我也看到URE错误。 Raid5似乎不能因此而重build。 所以我有几个问题:

  1. 有没有办法恢复raid5仍然?

  2. 如果我保留已更换的新磁盘并使用URE移除磁盘,是否会损坏其他LUN或只是发生故障的LUN? 如果所有的LUN都会失败,那么如果2个失败的磁盘可以销毁所有的LUN,那么使每个LUN都拥有自己的RAID在一个磁盘组arrays上有什么意义?

  3. 据我所知,首选的方法是为将来的一个LUN创build一个磁盘arrays,而不是一个LUNless的arrays?

谢谢。

1)你不可能恢复这个特定的数组。 RAID不是备份。 这是您需要备份的众多原因之一。

2)这取决于如何build立LUN。 如果你有一个RAID 5arrays,所有的12个磁盘被分成3个逻辑单元,那么由于arrays消失了,所有的逻辑单元都消失了。 如果您有三个独立的RAID 5arrays,每个arrays都有4个磁盘,那么只有包含这两个磁盘的arrays不在了,而其他arrays(因此它们的逻辑单元)就没事了。

3)很大程度上取决于你想要做什么。 在单独的磁盘上有单独的arrays可能有很好的理由。 例如,您可能想要防止重载数组放慢其他数组。 如果arrays在同一个物理磁盘上,则不能这样做。 或者你可能想让一个重载的数组能够获得所有磁盘的所有带宽。 如果在单独的磁盘上有单独的arrays,则不能这样做。

还有一些原因可能会让多个逻辑单元在同一个arrays上。 您可能希望隔离文件系统,以便填充一个不会填满另一个。

如果你把所有的逻辑单元放在一个arrays上,你将失去更less的空间。 12个1TB磁盘上的单个RAID 5arrays为您提供了11TB的可用空间,分为三个相等的部分,每个部分为3.6TB。 如果您创build三个分别具有4个1TB磁盘的单独arrays,则每个磁盘的容量均为3TB。 所以,你们要考虑大小来获得额外的可靠性。

你有什么样的灵活性和影响的具体取决于你的控制器的具体情况。

而且,对未来的一些build议:

  1. 考虑RAID 6.它可以容忍两个驱动器的故障。

  2. 确保您的arrays能够100%定期进行testing,并及时更换发生故障的驱动器。 这将显着降低降级状态期间驱动器故障的可能性。

  3. RAID不是备份。 定期备份到一个物理上独立的设备。

如果您的数据尚未备份,请立即尽可能多地恢复。 但是,如果你甚至无法获得arrays,专业的恢复是你唯一的希望。

1)有没有办法恢复?

  • closuresarrays。
  • 逐个重置每个磁盘。
  • 重新启动arrays。 查看是否有任何失败的磁盘联机。

按照您的控制器维护和pipe理指南处理失败的卷。

arrays断电时,请检查故障驱动器上的SMART数据。 驱动器可能被标记为失败,但仍然可读,例如,如果数据重定位的预留扇区上的驱动器数量较less。

在MSA1500cs上,“ 维护和服务指南”的第9章介绍了恢复过程:

如果容错function受损,则插入更换的硬盘驱动器不会改善逻辑单元的状况。 在arraysconfiguration实用程序(ACU)或MSA命令行界面(MSA-CLI)中执行重新启用或接受无响应的LUN的过程。

  1. 停止所有的I / O活动。

  2. closures系统

  3. 删除,然后重新插入所有硬rives和控制器。

  4. 打开系统

    5.1。 检查液晶显示屏上是否显示以下信息:

    02 ENABLE VOLUME <n>? '<'=NO, '>'=YES 04 ENABLE VOLUMES ? '<'=NO, '>'=YES 

    5.2。 如果使用ACU:select重新启用失败的逻辑驱动器

    5.3。 如果使用MSA-CLI:inputaccept units以启用所有故障的LUN。

我发现MSA-CLI是pipe理arrays最方便的方法。

2)如果我保留更换的新磁盘,并且使用URE删除磁盘,其他LUN是否会被破坏或LUN是否失效?

这取决于你的数组的逻辑组织。

以下是一个磁盘架分成2个磁盘arrays的例子。 一个磁盘arrays上有4个逻辑卷,另一个有2个逻辑卷。

 # hpacucli controller csn=sga0xxxx0f array all show MSA1500 CS in MSA1500 array A logicaldrive 1 (2.0 TB, RAID 6 (ADG), OK) logicaldrive 10 (2.0 TB, RAID 5, OK) logicaldrive 11 (2.0 TB, RAID 5, OK) logicaldrive 12 (1.3 TB, RAID 5, OK) array B logicaldrive 2 (2.0 TB, RAID 6 (ADG), OK) logicaldrive 4 (2.0 TB, RAID 6 (ADG), OK) 

arraysA中2个磁盘的故障将导致逻辑​​驱动器10,11和12的故障。逻辑驱动器1不会因为它是RAID6而失败。

3)据我所知,首选的方法是为将来的一个LUN创build一个磁盘arrays,而不是一个LUNless的arrays?

这取决于。 因为负载分布在所有驱动器上,所以扩展LUN薄可能会提高性能。 将LUN分成不同的arrays可以在性能和可靠性方面防止LUN之间的干扰,但是需要付出代价。 从一个大池中切割任意大小的LUN通常比容纳多个小池更容易。