HP MSA1000 磁盘阵列柜简介
MSA1000 所采用的惠普独有的 RAID ADG 是在 RAID5 的基础上扩展而来的。它是对 RAID 5 进行扩展后的磁盘配置方案。 RAID 5 的缺点就是在一块硬盘发生故障后, RAID 组从在线状态变为降级状态,这时如果第二块硬盘出现故障,那么整个 RAID 组的数据都将丢失,这对企业来说是灾难性的。 RAID ADG 技术则在原理上克服了这一缺陷,其最大特点是部署了 2 个奇偶校验集,并提供了 2 个硬盘的容量存储这些奇偶校验信息,能同时允许 2 块硬盘出现故障,突破了以往的 RAID 允许在同一时刻只可以有一块硬盘发生故障的限制,很有效地提高了服务器硬盘上数据的可靠性。 RAID ADG 比双 RAID 0+1 具有更低的实施成本,却能提供比 RAID 5 更高的容错能力。
故障描述:
1、MSA1000 用 七块146GB的硬盘做的磁盘阵列 raid ADG ,挂接到 win2003 服务器上使用,事先发现系统提示 $MFT 出错,要求运行 CHKDSK 命令进行修复。但是管理员没在意,忽然有一天发现阵列中 2 号盘亮红灯报警,于是把 2 号盘拔下,用新的磁盘替换 2 号盘。
2、用新磁盘替换 2 号盘后,阵列运行一段时间后,该阵列便不能访问了,系统仍然提示 $MFT 错误,要求运行 CHKDSK 进行修复。这时管理员运行了这个命令整理修复阵列, CHKDSK 命令运行一段时间,没有完成就自动停止,反复运行 CHKDSK 几次,结果都是接近完成就自动停止,在这期间,还发现阵列在自动 Rebuild 。所有操作完成以后,磁盘分区还是打不开。
检测及恢复结果:
造成数据损坏丢失的原因可以从下面几点说明:
1、系统提示 $MFT 错误,说明数据目录结构损坏。目录结构损坏的原因很多: a 、由系统对磁盘的文件读写错误引起的逻辑错误; b 、由硬盘硬件问题引起的,包括多个硬盘掉线和硬盘出现坏道等物理故障。经检测硬盘物理上没有问题,都能识别,也能做镜像。
2、发现 2 号盘报警,撤掉 2 号盘,换上新的硬盘。从理论上讲,这样做是对的。这样做的前提是必须先确认其他六块盘在阵列中都是正常的,也就是说这六块盘处于在线 (online) 状态,如果还有其它两块或者两块以上的盘处于掉线 (offline) 状态(因为有时候硬盘掉线后,不一定就亮红灯报警),换盘是不能使阵列正常的(根据 raid ADG 的原理知道,阵列坏掉两块盘还可以运行,但是坏 3 块盘以上阵列就崩溃)。
3、运行 CHKDSK 命令是导致目录结构错乱的主要原因,许多 found.000 和 dir.001 等目录就是在这个环节产生的。 CHKDSK 命令是对文件目录的重新整理,把一些目录重新命名并且把文件所在的位置也做了整理。对于磁盘阵列,最忌讳的命令就是 CHKDSK 。如果阵列数据组合方式错误,或者重新配置 Raid(Raid 参数发生变化 — 磁盘顺序、块大小等 ) ,系统都会提示磁盘参数错误或者目录结构错误,要求运行 CHKDSK 来修复。这种提示只是操作系统的责任,但是操作系统没有提示运行 CHKDSK 的后果会带来数据的环乱和损坏,这才是最致命的。
4、经过对底层数据的分析发现,在每块盘的大约前 15GB , 2 号盘和 7 号盘冗余信息所在的位置一样,不符合 raid ADG 数据组合规律,在每块盘大约 15GB 以后,数据组合方式才符合 raid ADG 。造成这种结果的原因可能是:换上新的 2 号盘后,系统把 2 号盘当成 7 号盘,用其余的磁盘来 Rebuild ;或者 7 号盘已经掉线,系统把 2 号盘当成 7 号盘来 Rebuild ;或者 2 号盘和 7 号盘物理上更换了位置等等,再就是出现问题后的其他一系列操作引起的。我们按照每块盘 15GB 以后的数据组合方式用“补天石”进行重组,恢复的结果是数据目录结构较乱,大部分文件都能恢复出来并且是正常的,总的数据量大约280GB,阵列正常的时候数据量为310GB。
小结:
造成数据损坏的因素归结为:
1、系统出现 $MFT 错误提示后不及时处理;
2、发现 2 号盘亮红灯后应该查看阵列其他磁盘情况,再确认更换 2 号盘,并且要及时跟踪更换 2 号盘后系统运行状况;
3、运行 CHKDSK 是导致目录结构错乱的主要原因;
4、2 号盘前 15GB 冗余信息不正常导致部分文件丢失,这是 Rebuild 操作引起的;
5、任何硬件上的数据安全解决方案都只是相对的,人为管理的专业性和责任心才能把故障损失降低到最低点。