虚拟机数据恢复环境:
ESXI上共有数十台虚拟机,EXSI连接一台HP EVA存储,所有虚拟机都存放在该EVA存储上。
其中一台虚拟机是数年前从物理机迁移过来的,其上部署了一个SQL SERVER数据库,该数据库存放了最近几年的数据。
虚拟机故障&分析:
工作人员的误操作不小心还原快照了。这个快照是数年前做完数据迁移后新建的,还原快照就意味着虚拟机数据还原到几年前刚做完数据迁移时的状态,近几年的数据都被删除了。
还原快照相当于删除数据,意味着底层的存储空间会被释放。为了不让这部分释放的空间被新写入的数据重新使用,必须将连接到这台EVA存储的所有虚拟机都关机。如果有非常重要的虚拟机不能长时间关机,就需要将这些重要的虚拟机迁移到别的EXSI上。刚好本案例中有一台虚拟机不能关机,只能做热迁移。vmware虚拟机的热迁移需要建立多个快照来完成。
Tips:
Vmware的文件系统是Vmfs,所有的虚拟机都存放在这个文件系统中。Vmfs会默认将整个磁盘分成1M的Block(分配给文件的最小单位为Block)。Vmfs中有一片区域描述这些1M Block的使用情况,而每1024个Block(也就是1GB)会用一个MAP来记录。这个MAP里面记录的1M Block在物理磁盘上不一定是连续的。但这个MAP所记录的所有1M Block一定是同一个文件的。可以理解为一个文件是由N多个MAP中的1024个Block组成的,即FileSize:= N * MAP * 1024(Block)。
Vmware的快照其实就是一个文件,还原快照相当于删掉一个文件。在Vmfs中删掉一个文件只会删掉该文件的索引项,不会删掉文件的实际数据以及指向数据的MAP。
虚拟机数据恢复过程:
1、根据Vmware快照原理,提取整个vmfs中空闲的MAP。
2、北亚企安数据恢复工程师在空闲的MAP中找出符合快照文件头结构的MAP。
3、根据快照文件的结构,提取快照文件剩下的碎片。
4、完成快照文件的提取后,北亚企安数据恢复工程师将快照文件和原vmdk合并生成新的vmdk。
5、新生成的vmdk包含了所有的数据,挂载新的vmdk并解释里面的数据。