EMC FC AX-4存储崩溃,raid5硬盘损坏的数据恢复过程

本文涉及的产品
简介:

故障描述:

   北京某医院EMC FC AX-4存储崩溃,由于RAID5阵列中出现2块硬盘损坏,而此时只有一块热备盘成功激活,因此导致RAID5阵列瘫痪,上层LUN无法正常使用,整个存储空间由12块1TB STAT的硬盘组成的,其中10块硬盘组成一个RAID5的阵列,其余两块做成热备盘使用。

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

解决过程

1、硬盘检测

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

2、备份数据

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

3、分析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条带的大小,以及每块磁盘的顺序。

4、分析RAID组掉线盘

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

5、分析RAID组中的LUN信息

  由于LUN是基于RAID组的,因此需要根据上述分析的信息将RAID组重组出来。然后分析LUN在RAID组中的分配信息,以及LUN分配的数据块MAP。由于底层只有一个LUN,因此只需要分析一份LUN信息就OK了。然后根据这些信息使用北亚raid恢复(datahf.net)程序,解释LUN的数据MAP并导出LUN的所有数据。

6、解释ZFS文件系统并修复

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

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

7、导出所有数据

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

 wKioL1htr17TIPHCAAPZbJwQAKw196.jpg-wh_508、验证最新数据

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

 

wKiom1htr3bRmjfAAASkq9QHEF4516.jpg-wh_50

wKiom1htr3eT6HBbAAET7rHNJvk820.jpg-wh_50










本文转自 宋国建 51CTO博客,原文链接:http://blog.51cto.com/sun510/1889181,如需转载请自行联系原作者
相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
5月前
|
存储 Serverless 云计算
函数计算FC存储和流量的费用比例,
函数计算FC存储和流量的费用比例, 有历史经验可以参考么?
39 2
|
5月前
|
存储 Serverless
可以在函数计算FC中使用这些挂载目录来存储和访问你的文件和数据
可以在函数计算FC中使用这些挂载目录来存储和访问你的文件和数据
49 1
|
9月前
|
存储 人工智能 Serverless
将Stable Diffusion模型文件转存到FC环境的NAS
本文将会指导你开通基于NAS的Stable Diffusion 函数计算FC环境,并且可以将SD模型库的模型转存下载到FC应用下的NAS存储空间
1141 1
将Stable Diffusion模型文件转存到FC环境的NAS
|
存储 Prometheus Kubernetes
阿里云徐立:面向容器和 Serverless Computing 的存储创新
以上为大家分享了阿里云容器存储的技术创新,包括 DADI 镜像加速技术,为容器规模化启动奠定了很好的基础,ESSD 云盘提供极致性能,CNFS 容器网络文件系统提供极致的用户体验。
阿里云徐立:面向容器和 Serverless Computing 的存储创新
|
文件存储 容器 测试技术
阿里云 Serverless 应用引擎(SAE)发布 v1.2.0,支持一键启停、NAS 存储、小规格实例等实用特性
11月26日,阿里云 Serverless 应用引擎(SAE)发布 v1.2.0版本,新版本实现了以下新功能/新特性: 一键启停开发测试环境:企业开发测试环境一般晚上不常用,长期保有应用实例,闲置浪费很高。
阿里云 Serverless 应用引擎(SAE)发布 v1.2.0,支持一键启停、NAS 存储、小规格实例等实用特性
|
存储 监控 Serverless
Serverless下日志采集、存储、分析实践
本文重点介绍了Serverless的发展以及这个浪潮下日志所扮演的角色,并通过阿里云日志服务提供的实时采集、可靠存储、交互式分析能力,为用户搭建Serverless应用日志处理架构提供了两个实践参考。
8954 0
|
存储 开发工具 IDE
存储基础:ATA、SATA、SCSI、SAS、FC
一、概述 关于存储,作为一名运维工程师我觉得是很有必要去花点时间去了解一下的!磁盘是服务器、存储设备的主要存储媒介之一,非常重要! 按照存储介质类型一般分为机械磁盘(HDD、传统磁性硬盘)、固态磁盘(SSD,主要使用闪存颗粒来存储)、混合磁盘(HHD,磁性硬盘和闪存集成到一起的硬盘)。
2254 0
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
人工智能 运维 Cloud Native
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
149 2