最近遇到一个单子:客户自己连续换了三块硬盘,过程中 RAID 状态就异常了。后来是看控制器日志、远程配合一步步处理,才把阵列恢复正常。
借这个事说说换盘的几个基本原则,老手可以跳过。
为什么不能一次换多块
- RAID 5 只能容忍 1 块盘离线,RAID 6 是 2 块,RAID 10 要看坏的是不是同一个镜像对
- 换下一块盘,阵列就进入降级状态,新盘插上后开始重建( rebuild )
- 重建没完成之前,新盘里的数据是不完整的,它还不算一块好盘
- 这时候再拔第二块,对阵列来说就是「又丢了一块」,RAID 5 直接超出容错,RAID 6 也只剩最后一点余量
所以正确顺序就一句话:换一块 → 等重建 100% 完成、状态回到 Optimal → 再换下一块。
重建期间要盯什么
- 进度和速度:大容量盘重建动辄十几个小时甚至更久,业务压力大的时候会更慢,心里要有数
- 其他盘的报错:重建要把整组盘读一遍,同一批次、同样年头的盘最容易在这时候冒出坏道。看到别的盘也开始报 media error 、predictive failure ,先别急着动,先确认备份
- 控制器日志:重建失败、puncture 、外来配置( foreign config )这类提示要当场处理,别等
- 别在重建中做其他变更:升级固件、扩容、迁移,都等重建完再说
几个容易踩的坑
- 新盘要和原盘同料号或控制器认可的兼容型号,容量、转速、接口、扇区格式不对,可能根本加不进去
- 插错槽位:先在管理界面点灯( locate ),确认是哪块再拔
- 看到「外来配置」不要随手 clear ,也不要随手 initialize ,很多数据就是这么没的
- 有热备盘( hot spare )的话,坏盘后它会自动顶上重建,这时候换下来的坏盘位置插新盘,通常是成为新的热备,别误以为要再建一次阵列
一句话
多块盘同时预警,宁可多花几天一块一块换,也别图省事一次换完。真碰上状态异常了,先停手、先看日志,别急着点初始化。
大家有没有遇到过重建到一半第二块盘也挂了的情况?最后是怎么救回来的?