为什么 RAID5 重建会失败?

为什么 RAID5 重建会失败?

我有一台 IBM System x3650 服务器,带有一个 ServeRaid 控制器和两个 RAID5 阵列,每个阵列由 3 个磁盘组成。

昨天,一个磁盘发生故障(它是保存数据的 Raid 阵列,系统位于声音阵列上)。我天真地相信 RAID 控制器可以重建阵列。我关闭了服务器,用一个新的类似磁盘替换了故障磁盘。我启动了控制器 BIOS,在那里我可以看到它识别了新磁盘并准备重建(我什么也不要做,一切都是自动的)。我启动了服务器,它重建了阵列。

今天早上一切似乎都很好。重建已完成,阵列似乎完好无损。仅几个小时后,mysql 服务因数据库损坏而崩溃。我设法转储了部分数据并从备份中恢复了其余数据。我以为我没事了。

但后来我发现一些活动日志文件已损坏:它们包含来自不同随机文件的块。如果我正确理解了这种情况,只有重建开始后修改的文件才会损坏,但我还不能 100% 确定这一点。不知何故,重建一定损坏了数据。

我问这个问题是为了吸取教训。我希望下一次不会再犯同样的错误...

重建失败的原因可能是什么?下次我可以做些什么改进?
重建期间是否必须切断服务器与网络的连接?我认为,控制器应该管理并发重建并进行普通的读写操作。
或者这种情况不应该发生,也许控制器有故障?

答案1

从你的描述来看,重建似乎不是失败,因为阵列已启动并正在运行。但是,重建过程似乎导致一些块被错误放置/重新映射,这是非常罕见但危险的事情。

我建议您花点时间检查一下情况。您是否阅读/遵循了 RAID 卡手册?您是否 100% 确定您做了正确的事情?如果两个问题的答案都是“是”,您应该立即向服务器供应商/顾问提交支持案例。

答案2

我又学到了一个我已经知道的教训:读取事件日志。我会看到表明文件系统已损坏的错误。我本可以提前一两个小时计划停机。我还知道只有一个逻辑卷受到影响,而不是整个物理 RAID 卷。

下次我可以做得更好:

团队重建是一项重要事件,完成后需要进行完整的服务器检查。

相关内容