RAID-5:两个磁盘同时失败?

我们有一台运行CentOS的戴尔PowerEdge T410服务器,其中包含5个希捷酷鱼3 TB SATA磁盘的RAID-5arrays。 昨天系统崩溃(我不知道如何,我没有任何日志)。

在启动RAID控制器BIOS后,我看到5个磁盘中的1个被标记为“丢失”,而3个磁盘被标记为“被降级”。 我强制备份磁盘3,并将磁盘1换成新的硬盘(大小相同)。 BIOS检测到这一点,并开始重build磁盘1 – 但它卡在%1。 纺纱进度指标并没有整夜通宵。 完全冻结。

我在这里有什么select? 除了使用一些专业的数据恢复服务,还有什么方法可以尝试重build吗? 两个硬盘如何能同时失效? 似乎过于巧合。 磁盘1是否有可能失败,结果磁盘3“不同步?” 如果是这样,是否有任何工具可以用来恢复“同步?”

你有一个双磁盘故障。 这意味着您的数据已经消失,您将不得不从备份进行恢复。 这就是为什么我们不应该在大型磁盘上使用RAID 5。 你想设置你的RAID,所以你总是有能力承受两个磁盘故障,特别是对于大型慢速磁盘。

您的select是:

  1. 从备份中恢复。
    • 你有备份,不是吗? RAID不是备份。
  2. 专业的数据恢复
    • 这是可能的,虽然非常昂贵,不能保证,专业的恢复服务将能够恢复您的数据。
  3. 接受你的数据丢失,并从经验中学习。
    • 正如评论中指出的那样,build议不要将大型SATA磁盘用于RAID 5configuration,因为在重build过程中出现双重故障的可能性会导致arrays发生故障。
      • 如果它必须是奇偶校验RAID,RAID 6更好,下一次使用热备份。
      • 由于各种原因,SAS磁盘更好,包括更高的可靠性,弹性和较低的不可恢复的位错误率(可能会导致URE)(不可恢复的读取错误)
    • 如上所述,RAID不是备份。 如果数据很重要,请确保已经备份,并且备份已经过恢复testing。

你接受了一个不好的答案后,我真的很抱歉我的异端观点(已经多次保存这样的数组)。

你的第二个失败的磁盘可能有一个小问题,也许是块失败。 这是原因,为什么你的糟糕的 RAID5固件坏的同步工具崩溃了。

您可以使用低级磁盘克隆工具(例如, gddrescue可能非常有用)轻松制作扇区级副本,并将此磁盘用作新的磁盘3。 在这种情况下,您的arrays存在小数据损坏。

对不起,大概是为时已晚,因为这种情况下正统答案的本质是:“在一次突袭中多次失败,这里是天启!

如果你想要非常好的冗余RAID,使用Linux中的软件RAID。 例如,它的超级数据块的数据布局是公开的和logging的…我真的很抱歉,我的这个另一个异端的意见。

同时失败是可能的,甚至可能,由于其他人的原因。 另一种可能性是其中一个磁盘在一段时间之前失败了,而你没有主动检查它。

确保您的监控能够及时地收集以降级模式运行的RAID卷。 也许你没有得到一个select,但从BIOS学习这些东西是不好的。

回答“两个硬盘如何同时出现故障?” 具体来说,我想引用这篇文章 :

争论的关键是这个。 由于磁盘驱动器已经变得越来越大(在两年内大约翻了一番),URE(不可恢复的读取错误)还没有以同样的速度提高。 URE测量不可恢复的读取错误发生的频率,并且通常以每比特读取的错误来测量。 例如,1E-14(10 ^ -14)的URE速率意味着在统计学上,每1E14位读取一次(1E14位= 1.25E13字节或大约12TB)将发生不可恢复的读取错误。

有观点认为,随着磁盘容量的增长,URE率不会以同样的速度提高,RAID5重build失败的可能性会随着时间的推移而增加。 据统计,他表示,2009年,磁盘容量将会增长到足以使任何有意义的arrays使用RAID5变得毫无意义。

所以,RAID5在2009年是不安全的.RAID6也将很快出现。 至于RAID1,我开始让他们从3个磁盘。 4个磁盘的RAID10也是岌岌可危的。

通常,当从一个有信誉的经销商那里购买大量驱动器时,可以要求驱动器来自不同的批次,这对于上述原因是重要的。 接下来,这就是RAID 1 + 0存在的原因。 如果您在RAID 1 + 0中使用了6个驱动器,那么您将拥有9TB的数据,并且不需要重build卷。

如果您的控制器在Linux上被dmraid(例如here )识别,您可以使用ddrescue将发生故障的磁盘恢复到新的磁盘,并使用dmraid构buildarrays,而不是您的硬件控制器。

线程是旧的,但如果你正在阅读,了解RAIDarrays中的驱动器失败时,检查驱动器的年龄。 如果在RAIDarrays中有多个磁盘,并且它们已经超过了4 – 5年,那么另一个驱动器可能会失败。 ***进行图像或备份**,然后再继续。 如果您认为自己有备份,请对其进行testing以确保可以读取并从中进行恢复。

原因在于,当他们全速运转几个小时之后,您正在对剩余的驱动器进行多年的正常磨损。 6年的驱动器数量越多,另一个驱动器就会因压力而失败的机会越大。 如果是RAID5,而且arrays很棒,那么你有一个备份,但是根据RAID控制器和其他硬件的types,一个2TB的磁盘需要8 – 36个小时才能恢复。

如果所有驱动器都是旧的,我们会定期更换生产服务器上的整个RAIDconfiguration单元。 为什么浪费时间更换一个驱动器,然后等到下一个驱动器在一天,一周,两个月内出现故障。 就像驱动器一样快,它不值得停机。

您可以重build数组,但只能重build一次。 阅读它,做它保存您的数据,并为未来小心我做了惠普MSA存储,所以我觉得这个选项,你也有其他的NAS设备,所以它值得这样做:这是魔术的命令和信息如何让您的arrays恢复生机:

Login: manage Password: ******* HP StorageWorks MSA2012i System Name: External 7TB System Location: Server 7TB Version: W421R37 # show vdisk Name Size Free Own RAID Dsk Spr Chk Stat Jobs Serial# ----------------------------------------------------------------------------- BIGFOOT 7001.3GB 393.2KB A RAID5 8 0 64 OFFL 00c0ffd5e923000023fb344900000000 ----------------------------------------------------------------------------- # trust enable bigfoot Error: The command has an invalid parameter or unrecognized parameter # show vdisk Name Size Free Own RAID Dsk Spr Chk Stat Jobs Serial# ----------------------------------------------------------------------------- BIGFOOT 7001.3GB 393.2KB A RAID5 8 0 64 OFFL 00c0ffd5e923000023fb344900000000 ----------------------------------------------------------------------------- # trust enable Success: Command completed successfully # trust vdisk bigfoot Success: Command completed successfully # show vdisk Name Size Free Own RAID Dsk Spr Chk Stat Jobs Serial# ----------------------------------------------------------------------------- BIGFOOT 7001.3GB 393.2KB A RAID5 8 0 64 OFFL 00c0ffd5e923000023fb344900000000 ----------------------------------------------------------------------------- # trust vdisk bigfoot Success: Command completed successfully # help trust DESCRIPTION Enables an offline virtual disk to be brought online for emergency data collection only. It must be enabled before each use. Caution: This command can cause unstable operation and data loss if used improperly. It is intended for disaster recovery only. The trust command resynchronizes the time and date stamp and any other metadata on a bad disk drive. This makes the disk drive an active member of the virtual disk again. You might need to do this when: - One or more disks of a virtual disk start up more slowly or were powered on after the rest of the disks in the virtual disk. This causes the date and time stamps to differ, which the system interprets as a problem with the "late" disks. In this case, the virtual disk functions normally after being trusted. - A virtual disk is offline because a drive is failing, you have no data backup, and you want to try to recover the data from the virtual disk. In this case, trust may work, but only as long as the failing drive continues to operate. When the "trusted" virtual disk is back online, back up its data and audit the data to make sure that it is intact. Then delete that virtual disk, create a new virtual disk, and restore data from the backup to the new virtual disk. Using a trusted virtual disk is only a disaster-recovery measure; the virtual disk has no tolerance for any additional failures. INPUT trust enable trust vdisk <vdisk> enable Enables the trust command before use. vdisk <vdisk> Specifies the virtual disk by name or serial number. For the syntax to use, type "help syntax". EXAMPLE Enable the trust command and then trust virtual disk VD1. # trust enable Trust Virtual-disk Enabled. # trust vdisk VD1 Are you sure? yes Virtual-disk VD1 has been trusted. Success: Command completed successfully # show vdisk Name Size Free Own RAID Dsk Spr Chk Stat Jobs Serial# ----------------------------------------------------------------------------- BIGFOOT 7001.3GB 393.2KB A RAID5 8 0 64 OFFL 00c0ffd5e923000023fb344900000000 ----------------------------------------------------------------------------- # trust vdisk BIGFOOT Success: Command successful on local controller, but other controller is not up # show vdisk Name Size Free Own RAID Dsk Spr Chk Stat Jobs Serial# ----------------------------------------------------------------------------- BIGFOOT 7001.3GB 393.2KB A RAID5 8 0 64 FTOL 00c0ffd5e923000023fb344900000000 -----------------------------------------------------------------------------