VSAN简介:
VSAN是以vSphere内核为基础进行开发、可扩展的分布式存储架构。VSAN存储层由VSAN控制和管理,VSAN存储层是通过vSphere集群主机中闪存和硬盘的存储空间构建的,供vSphere集群使用的统一共享存储层。
VSAN存储是一个对象存储,以文件系统的形式呈现给vSphere主机。这个对象存储服务会从启用VSAN集群中的每台主机上加载卷,呈现为单一的、在所有节点上均可见的分布式共享数据存储。在VSAN架构中,针对虚拟机来说只有一个数据存储,这个分布式数据存储来自VSAN集群中每一台vSphere主机上的存储空间,通过磁盘组进行配置,在单独的存储实体中存放所有虚拟机文件。虽然这种数据存储的方式相对来说比较安全,但是如果一个节点服务器上的闪存盘或者容量盘出现故障的时候,数据会往其他节点服务器迁移,在数据转移的过程中可能会出现故障。下面我们要介绍的一个表现为VSAN存储崩溃,虚拟机无法访问的故障。
VSAN数据恢复环境:
由四台某品牌服务器组建的VSAN集群,每台节点服务器上有两个磁盘组。每个磁盘组中有1块SSD硬盘+5块SAS硬盘,SSD作为闪存,SAS硬盘作为容量盘。
VSAN故障:
VSAN集群中一个节点服务器上其中一个磁盘组中的容量盘出现故障离线,VSAN开始数据的重构迁移,数据迁移还没有完成的时候机房停电导致数据迁移中断。来电后启动所有设备后,管理员发现另一个磁盘组中的两块容量盘出现故障离线,VSAN数据存储出现问题。VSAN管理控制台可以登录,但是所有虚拟机都无法访问。
VSAN数据恢复过程:
1、将VSAN集群中四个节点服务器所有硬盘编号后取出,经过硬件工程师检测后没有发现有硬盘存在明显硬件故障,都可以正常读取。以只读的方式将所有硬盘(SSD闪存盘和SAS容量盘,包括3块出现故障离线的硬盘)做全盘镜像。镜像完成之后,将所有硬盘按照编号还原到原服务器上。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析底层数据的存储结构,确认虚拟机相关数据在硬盘上的分布信息,北亚企安数据恢复工程师根据分析出来的底层数据存储结构开发相应程序,测试数据分布信息的准确性。
3、单独分析每台节点服务器上的两个磁盘组,分析磁盘组内的闪存盘和容量盘之间的对应关系。每块硬盘都有一个单独标识进行磁盘间的对应,可以根据每块硬盘的ID信息判读磁盘组中的硬盘ID信息。
4、获取每块硬盘上磁盘的UUID和磁盘组的UUID。
5、根据每个磁盘组中的容量盘的组件信息获取此容量盘的组件信息。
6、根据组件信息中记录的组件的MAP位置提取组件位图。
7、根据组件位图提取组件数据和缓存数据。
8、根据组件的描述信息获取组件所属对象及组件顺序,将组件合并成对象,根据对象提取数据。
9、提取完数据后对恢复出来的数据进行检测,经过检测虚拟机都可以正常启动,用户方经过认证检测后,确认VSAN集群中数据都完整恢复,认可数据恢复结果。
VSAN数据恢复总结:
可以将VSAN对象看作一个卷,VSAN数据存储上的每个对象都是由多个组件构成,这些组件分布于VSAN集群主机上的磁盘组中,恢复VSAN存储数据的关键是组件信息的提取。