某肿瘤医院EMC AX4存储恢复案例

简介:

故障描述】

整个存储空间由12块1TB SATA的硬盘组成的,其中10块硬盘组成一个RAID5的阵列,其余两块做成热备盘使用。由于RAID5阵列中出现2块硬盘损坏,而此时只有一块热备盘成功激活,因此导致RAID5阵列瘫痪,上层LUN无法正常使用。状态如下图:

wKioL1aUzyOCAJjQAAYcz0ccMJ0518.jpg

【检测磁盘】

由于存储是因为某些磁盘掉线,从而导致整个存储不可用。因此接收到磁盘以后先对所有磁盘做物理检测,检测完后发现没有物理故障。接着使用坏道检测工具检测磁盘坏道,发现也没有坏道。              

【备份数据】

考虑到数据的安全性以及可还原性,在做数据恢复之前需要对所有源数据做备份,以防其他原因导致数据无法再次恢复。使用Winhex将所有磁盘都镜像成文件,由于源磁盘的扇区大小为520字节,因此还需要使用特殊工具将所有备份的数据再做520 to 512字节的转换。备份完部分数据如下图:

wKiom1aUz3fSK6dyAACY4bKSmCk306.jpg

【故障分析】

1、分析故障原因

由于前两个步骤并没有检测到磁盘有物理故障或者是坏道,由此推断可能是由于某些磁盘读写不稳定导致故障发生。因为EMC存储控制器检查磁盘的策略很严格,一旦某些磁盘性能不稳定,EMC存储控制器就认为是坏盘,就将认为是坏盘的磁盘踢出RAID组。而一旦RAID组中掉线的盘到达到RAID级别允许掉盘的极限,那么这个RAID组将变的不可用,上层基于RAID组的LUN也将变的不可用。目前初步了解的情况为基于RAID组的LUN只有一个,分配给SUN小机使用,上层文件系统为ZFS

2、分析RAID组结构

EMC存储的LUN都是基于RAID组的,因此需要先分析底层RAID组的信息,然后根据分析的信息重构原始的RAID组。分析每一块数据盘,发现8号盘和11号盘完全没有数据,从管理界面上可以看到8号盘和11号盘都属于Hot Spare,但8号盘的Hot Spare替换了5号盘的坏盘。因此可以判断虽然8号盘的Hot Spare虽然成功激活,但由于RAID级别为RAID5,此时RAID组中还缺失一块硬盘,所以导致数据没有同步到8号硬盘中。继续分析其他10块硬盘,分析数据在硬盘中分布的规律,RAID条带的大小,以及每块磁盘的顺序。

3、分析RAID组掉线盘

根据上述分析的RAID信息,尝试通过北亚自主开发的RAID虚拟程序将原始的RAID组虚拟出来。但由于整个RAID组中一共掉线两块盘,因此需要分析这两块硬盘掉线的顺序。仔细分析每一块硬盘中的数据,发现有一块硬盘在同一个条带上的数据和其他硬盘明显不一样,因此初步判断此硬盘可能是最先掉线的,通过北亚自主开发的RAID校验程序对这个条带做校验,发现除掉刚才分析的那块硬盘得出的数据是最好的,因此可以明确最先掉线的硬盘了。

4、分析RAID组中的LUN信息

由于LUN是基于RAID组的,因此需要根据上述分析的信息将RAID组重组出来。然后分析LUNRAID组中的分配信息,以及LUN分配的数据块MAP。由于底层只有一个LUN,因此只需要分析一份LUN信息就OK了。然后根据这些信息编写相应的程序,解释LUN的数据MAP并导出LUN的所有数据。

【解释ZFS文件系统并修复】

1、解释ZFS文件系统

利用北亚自主开发的ZFS文件系统解释程序对生成的LUN做文件系统解释,发现程序在解释某些文件系统元文件的时候报错。迅速安排开发工程师对程序做调试,分析程序报错原因。接着安排文件系统工程师分析ZFS文件系统是否因为版本原因,导致程序不支持。经过长达7小时的分析与调试,发现ZFS文件系统因存储突然瘫痪导致其中某些元文件损坏,从而导致解释ZFS文件系统的程序无法正常解释。

2、修复ZFS文件系统

上述分析明确了ZFS文件系统因存储瘫痪导致部分文件系统元文件损坏,因此需要对这些损坏的文件系统元文件做修复,才能正常解析ZFS文件系统。分析损坏的元文件发现,因当初ZFS文件正在进行IO操作的同时存储瘫痪,导致部分文件系统元文件没有更新以及损坏。人工对这些损坏的元文件进行手工修复,保证ZFS文件系统能够正常解析。

恢复所有数据】

利用程序对修复好的ZFS文件系统做解析,解析所有文件节点及目录结构。部分文件目录截图如下:

wKioL1aUz9-QyvaxAAIe-GIq-vM052.jpg


【验证最新数据】

由于数据都是文本类型及DCM图片,因此不需要搭建太多的环境。由用户方工程师指点某些数据进行验证,验证结果都没有问题,数据均完整。部分文件验证如下:

  wKioL1aU0LGT4jVMAAKpQoA94zU854.jpg  

【移交数据】

由用户方提供32TSATA硬盘,将恢复的所有数据均拷贝到这些硬盘中,数据恢复的总容量为5T

【数据恢复结论】

由于故障发生后保存现场环境良好,没用做相关危险的操作,对后期的数据恢复有很大的帮助。整个数据恢复过程中虽然遇到好多技术瓶颈,但也都一一解决。最终在预期的时间内完成整个数据恢复项目,恢复的数据用户方也相当满意。





本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/1734323,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
存储 运维 Oracle
服务器数据恢复-DS5300存储硬盘出现坏道离线的数据恢复案例
服务器数据恢复环境: 某单位一台DS5300存储,1个主机+4个扩展柜,组建了2组RAID5(一组27块硬盘,一组23块盘)。27块盘的那组RAID5阵列存放Oracle数据库文件,存储系统一共分了11个卷。 服务器故障: 27块盘的那组RAID5阵列中有2块磁盘故障离线,导致RAID阵列崩溃,存储不可用,存储设备已经过保。
服务器数据恢复-DS5300存储硬盘出现坏道离线的数据恢复案例
|
2月前
|
存储 算法 安全
【服务器数据恢复】HP EVA存储结构&原理&数据恢复方案
EVA是虚拟化存储,在工作过程中,EVA存储中的数据会不断地迁移,再加上运行在EVA上的应用都比较繁重,磁盘负载高,很容易出现故障。EVA是通过大量磁盘的冗余空间和故障后rss冗余磁盘动态迁移保护数据。但是如果磁盘掉线数量到达一个临界点,EVA存储就会崩溃。
【服务器数据恢复】HP EVA存储结构&原理&数据恢复方案
|
3月前
|
存储 运维 数据挖掘
服务器数据恢复—华为OceanStor存储数据恢复案例
服务器数据恢复环境: 华为OceanStor某型号存储,存储内有一组由24块硬盘组建的raid5阵列,配置1块热备盘。 服务器故障: 该存储raid5阵列中有一块硬盘离线,热备盘自动激活并开始同步数据,在热备盘同步数据的过程中,raid5阵列中另一块硬盘离线,上层应用崩溃,数据丢失。
服务器数据恢复—华为OceanStor存储数据恢复案例
|
5月前
|
存储 运维 数据挖掘
服务器数据恢复—EMC Unity存储数据恢复案例
服务器数据恢复环境: EMC Unity某型号存储,连接了2台硬盘柜。2台硬盘柜上创建2组互相独立的POOL,2组POOL共有21块520字节硬盘。21块硬盘组建了2组RAID6,1号RAID6有11块硬盘. 2号RAID6有10块硬盘。 服务器故障&检测: 工作人员误操作,删除了2组POOL上的部分数据卷。
服务器数据恢复—EMC Unity存储数据恢复案例
|
6月前
|
存储 数据挖掘
服务器数据恢复-IBM Storwize V7000存储数据恢复案例
服务器数据恢复环境: P740+AIX+Sybase+V7000存储,存储阵列柜上共12块SAS机械硬盘(其中一块为热备盘)。 服务器故障: 存储阵列柜中有磁盘出现故障,工作人员发现后更换磁盘,新更换的磁盘数据同步到40%左右时,阵列柜中的另一块磁盘也出现问题,数据同步中断,逻辑盘无法挂接到小型机上,业务中断。存储的管理界面显示2块硬盘故障脱机。 阵列柜中的磁盘共组建了2组Mdisk,加到一个pool中。现在主要数据pool无法加载,有3个通用卷无法挂载。
|
11月前
|
SQL 存储 分布式计算
IBM Data Lake:发现事实,数据模式和临时报告
IBM Data Lake:发现事实,数据模式和临时报告
|
网络协议 数据库 Windows
使用EMC的备份软件 NW NMM模块 恢复 MSSQL数据库
文章是英文写的,是在公司里给老外工程师的邮件
345 0
使用EMC的备份软件 NW NMM模块 恢复 MSSQL数据库