IBMV7000虚拟存储数据恢复技术解决方案
来源:才华咖 本文已影响2.09W人
来源:才华咖 本文已影响2.09W人
虚拟存储故障数据恢复是一个高难度的技术实现,传统的企业级存储采用普通的Raid级别分配LUN空间,基本平行线性分布空间,而虚拟存储技术,LUN的空间分布是动态实现的,可以把很多个物理硬盘放在大的盘池中,LUN的空间分配根据需要从盘池中获取相应的空间。一旦整个虚拟存储出现故障,要找出LUN的空间分配,则需要把LUN的地址描述信息找出来,才能还原LUN的真实空间分布。
达思数据恢复中心多次处理IBMV7000存储故障的数据恢复,小编整理出来供大家参考。
1、 IBMV7000虚拟存储数据恢复的故障描述:
在IBM V7000上引入两个外部磁盘,每个mdisk大小12TB左右,把这两个mdisk划分在一个盘池中,然后从这个盘池中划分出两个LUN,第一个15TB,第二个LUN10TB,这两个LUN采用精简模式分配空间。由于误操作,把硬盘池删除掉,导致两个LUN数据丢失,不能访问,需要进行数据恢复。
2、 IBMV7000虚拟存储数据恢复磁盘划分原理:
“虚拟”两个字是IBM V7000存储的精髓,特别是对精简模式的LUN的划分,假如你划分一个15TB的LUN,精简模式,这个LUN实际在这个盘池中,最小分配768KB就足够了,随着对LUN格式化,写入数据,这个空间就会慢慢增加,而这个增加的存储空间,就会有相应的信息来记录,这个就是map指针记录表。
LUN的最上一级map指针,记录着这个LUN使用了哪些extents,而extent是从这个盘池中获取的,这个案例一个extent是1GB。在盘池中的每个mdisk,会划分成诺干个extent,从小到大进行编号,当LUN在分配空间时,就会在map表中记录,哪些mdisk的哪些extents给这个LUN使用。而一个extent的内部,又分成诺干个512扇区的空间,这一层还有一个map表,记录着哪些512扇区给LUN的那个逻辑地址上使用,因为512sec在整个盘池中实在是太多了,就使用间接指针的方式来记录,空间越大,间接指针的'级别就用得越高,比如15TB的LUN,间接指针就会用到4级,才能描述整个LUN的512sec数量级位置。
这就是所谓的虚拟概念,就像银行的信用卡额度,你用多少钱,就分配给你多少钱,不会一次性把这个额度的钱都给你,让你去消费,而是你用多少,他就给你多少,在这个额度范围内,银行会有记录,记录这些钱什么时间用,使用多少,这个就相当于LUN的空间分配一样。账单都是记载在银行的数据库里,LUN的空间分配是记录在V7000控制器上。
3、 IBMV7000删除盘池原理:
删除盘池,连带这个盘池中的LUN信息也会删除掉,LUN的空间分配map表也会从控制器中清除掉,如果一个LUN在分配空间时,采用非精简模式,这个LUN的空间在mdisk上的划分是连续的,即便没有空间分配map表,也可以从mdisk中的连续空间上获取原先LUN使用的extents,这样删除盘池以后,数据恢复就相对容易一些。而我们要恢复的LUN都采用精简模式分配空间,没了extents的map表,在还原这个LUN的空间分配时,是有很大的难度。就像银行的账单被删除了,银行卡还在,你是没有办法直接把你消费记录打印出来的,除非你能保留所有的消费凭证,比如银行消费短信,纸质记录等等,你才能租略统计出你的消费记录。LUN的分配地址空间也一样,没了记录,只能根据mdisk内部指针收集、统计、排查,最后才有可能还原出来。
4、 关键点:IBM V7000虚拟存储的数据恢复解决方案:
根据以上原理的分析,要能成功恢复出数据,必须把LUN的空间分配弄清楚,才有可能数据恢复成功。IBM V7000虚拟存储是个比较新的概念,首先要弄清楚存储架构,我们毕竟不是这个产品的设计者,对它知道的不多,要了解盘池,了解extents,了解LUN的划分原理,了解指针结构等等,这个分析得从v7000测试开始,反复测试,反复分析,才能得出相对可靠的结论,这个过程花费了很长时间。
现在的工作是,把这两个mdisk上的所有级别的指针地址位置,指针内容,指针级别都收集出来,做到准确无误,这个工作基本完成。后面的工作就是想办法把这些指针内容,通过统计方式,把LUN空间还原出来,这个工作是数据恢复的最后阶段,能否恢复成功,就看统计连接技术,因为空间大,指针多,难度大,时间会不确定!
5、 总结:
IBMV7000研究到现在,总算把整个底层存储结构弄明白,弄明白后,还是没能见到曙光,还需要投入大量的体力脑力劳动,才有可能成功。
举个例子:练习兵乓球时,有个发球机,里面装着2万个球,白球1万个,黄球1万个,白球和黄球都从1-1万编号,有两个人在练习,发球机看谁空闲就把球发给谁,随机发球,发球机会记录哪个球发给谁,当把球都发出去了,地上就是满地的2万个球,我们从发球机上的记录可以看出哪个球发给哪个人。不幸的是,有一次发球机发完所有的球后,发生电路短路,烧掉了,所有记录没了,请问,我们还有什么办法分辨出哪个球发给哪个人么?
我想大多数人会回答:不能!
但是有一个人经过多方思索和考察,说他能!这个人的解决办法是什么呢?各位可以想想。
答案:这个人经过观察,发现这个练球室装有4个摄像头,他说就可以根据这4个摄像头的录像回放,从不同角度观察每次发球的细节,然后手工记录下来,就能还原整个发球记录信息!这个工作需要花费大量的时间和精力!
数据恢复技术也是一样的道理,从不同角度,不同思维,去寻求相应的解决办法。
在数据恢复技术上研究IBMV7000就像在研究一个未知的课题,你只能根据经验、技术、创新思维等等往前挖掘新的信息,然后在不断的推进,直到最后拨云见晴天。这不是一个普通的数据恢复案例,这是一个国际计算机巨头IBM设计出来的专业虚拟化存储,要想在短期内去吃透,没有深厚的底层结构分析经验,是不可能完成的。我相信,IBM工厂级即便是产品设计者,对于这种恢复技术,未必能实现成功恢复,他们甚至直接给出否定的答案:不能恢复!按照我的理解,这个只能从旁门技术去实现数据重现,数据恢复技术的魅力大概如此!
金蝶K3应用虚拟化解决方案2017
win7提示msvcr100.dll丢失的解决方法
手机恢复出厂设置恢复数据操作方法
计算机中数据的存储试题解析2016
关于vivoxplay5内存不足的解决方法
关于恢复vista桌面上的回收站图标的解决方法
c++ minicsv库的编译错误与解决方案
虚拟内存不足造成蓝屏的解决方法
KVM虚拟化集群技术概述
IBM解决方案帮助企业更快成长
win7出现蓝屏0x0000006B的解决方法
2017注册电气工程师BIM技术复习资料
503service unavailable错误提示解决方法
硬盘数据恢复技术简单介绍
phpmyadmin导入导出数据库文件最大限制的解决方法
java连接mysql数据库乱码如何解决
MacBook Air笔记本恢复出厂设置的方法
java中JVM虚拟机内存模型详细说明
计算机硬盘数据备份及数据恢复技术
java中BigDecimal的操作方法详解
金蝶K3应用虚拟化解决方案
数据存储服务合同
Boot Block恢复主板BIOS的技巧
2017年3月计算机三级《数据库技术》模拟试题及答案
论数据仓库和数据挖掘技术的构件库管理系统
计算机二级Visual Basic复习重点:数据类型
关于如何设置虚拟内存解决物理内存较低的问题
IBM大数据分析
开机提示“bootmgr is missing”的解决方法和步骤
2017年计算机三级考试《数据库技术》复习题及答案
WIN10 MTP USB驱动无法安装解决方法
硬盘的分区结构及其数据储存解析
虚拟内存的设置和相关问题的解决方法
Boot Block恢复主板BIOS有什么技巧
Spring+MyBatis数据读写分离的实例详解
2017计算机三级数据库技术复习题及答案
存储解决方案
四大存储方式技术解析其优劣势
开机提示invalidsystemdisk解决方法
H3C虚拟园区网的解决方案