我们有一台 40 TB 的存储服务器,采用 RAID 5 模式,配备 12 个 2 TB 硬盘。其中一个硬盘用作热备用,由硬件 RAID 控制器进行管理。
由于某些不为人知的原因,三个驱动器似乎同时发生故障。其中一个似乎完全发生故障,而两个则显示 SMART 错误。热备用驱动器似乎没有转换为阵列的一部分,但我不确定这是否会自动发生。
问题是,在这些驱动器最终发生故障之前,是否有可能重新启动这两个驱动器、重建阵列,然后保存数据?我对 SMART 错误的了解是,它不是彻底的故障,而只是预测的故障。
显然,这些驱动器很快就需要更换,但是它们是否已经完全损坏或者可以挽救呢?
答案1
应尽快更换一个完全故障的驱动器,然后阵列可以自行重建。根据这项研究,出现 SMART 故障的驱动器比未出现 SMART 故障的驱动器更容易发生故障:https://static.googleusercontent.com/media/research.google.com/en//archive/disk_failures.pdf。它们也应该被替换,并且永远不要再在重要的用例中使用。
假设您使用的是相同的硬盘,那么值得准备多个备用硬盘,其数量取决于您希望存储设备保持使用的时间。
我认为,对于大于 1 TB 的驱动器阵列,RAID5 不是一个好的选择。RAID5 需要很长时间才能重建,而且重建时性能很慢。当阵列中有许多 (12) 个磁盘时,RAID5 也没有什么用,因为它只能防止一次故障。第二次故障会毁掉整个阵列。
对于未来的构建,我建议使用 RAID10,它将提供更一致的快速性能,同时提供更好的容错能力。
答案2
据我了解,RAID 5 允许阵列中出现 1 个磁盘故障。热备用会在请求时相应地构建。控制器/GUI 或您正在使用的任何前端都用于执行此操作。重建 RAID 所需的时间取决于正在使用的数据量。一旦构建了热备用,您的 RAID 理论上将恢复正常。在此期间,将另一个出现 SMART 错误的驱动器脱机,然后使用热备用过程重建它。完成,直到所有出现错误的 HDD 都被替换。我会更换任何显示 SMART 错误的磁盘,其中包含关键数据。您可以继续使用 RAID 6,当然您必须通过移动它来备份所有数据,重建阵列并将其放回原位。RAID 6 允许更多磁盘故障,但写入速度会受到轻微影响。