有人可以解释这个RAID错误消息吗?

在生产服务器上有8个驱动器的RAID 6(500×8)。

昨天我们注意到服务器很慢,经过调查发现RAID中的2个硬盘出现故障,通知系统无法发送电子邮件通知。 我们立即closures服务器,更换了2个失败的驱动器,并在重新启动到Windows之前重build它们。

现在启动回窗口去找,但有时会出现一些错误,像这样:

Puncturing bad block: PD Port 0 - 3:0:0 Location 0x209a3686 Puncturing bad block: PD Port 4 - 7:0:7 Location 0x209a3686 Unrecoverable medium error during recovery: PD Port 0 - 3:0:0 Location 0x209a3686 Puncturing bad block: PD Port 0 - 3:0:0 Location 0x209a3686 Puncturing bad block: PD Port 4 - 7:0:7 Location 0x209a3686 

另外,在机器上运行的虚拟机似乎无法正常完成Windows更新。 这可能会或可能不会有关系。

经过一番调查,我对VD进行了一致性检查,出现了一些与上面相似的事情:

 Consistency Check completed with uncorrectable errors on VD: 0 Consistency Check found inconsistent parity on VD strip: ( VD = 0, strip = 1068315) Consistency Check detected uncorrectable multiple medium errors: ( PD Port 4 - 7:0:7 Location 0x209a3686 VD 0) Consistency Check found inconsistent parity on VD strip: ( VD = 0, strip = 1067493) Unexpected sense: PD = Port 0 - 3:0:0Unrecovered read error, CDB = 0x28 0x00 0x1f 0xac 0x8c 0x00 0x00 0x02 0x00 0x00 , Sense = 0xf0 0x00 0x03 0x1f 0xac 0x8d 0xdb 0x0a 0x00 0x00 0x00 0x00 0x11 0x00 0x00 0x00 0x00 0x00 

我在一个论坛上看到,像3:0:0这样的数字显示驱动器0,问题在哪里,我不确定,因为这里显示了多个驱动器。 (我们更换了驱动器1和5)。

有人可以为我解决这个问题吗? 是否有一个简单的修复,像进一步replace和重build其他驱动器?

提前致谢

通常当有刺破的驱动器时,RAID数据是不可信任的。 您可以尝试将其复制到其他地方,但数据的完整性不可信。

之后,杀死整个RAID结构,创build一个新的初始化选项,强制进行磁盘的健全性检查。

最好是主动监视RAID状态,以便在第一次磁盘故障时检测到问题,而不是等到两者都失败。

从备份中恢复的时间。

除了DevOps的回答:在重build过程中出现额外的错误并不罕见。

这通常是由于重build期间的压力增加,但我发现这不是真的。 在繁重的工作量下压力不会导致读取错误。 相反,这是由于以前未被发现的驱动器上的位错:当数据在一个月甚至几年内不被读取时,某些扇区可能超过它们的纠错,使其不可读。 如果在重build期间遇到这些问题而没有冗余,则重build将失败。

所以,一旦你重build了你的arrays,确保你打开每月数据清理 ,媒体巡视,巡逻读取,或者你的控制器上的任何其他东西。 这样一来,任何薄弱环节都会被及时发现和修复。 如果您的控制器没有该选项,则在整个逻辑驱动器上运行每月一次的image-to-null(例如,使用dd )。