出现VMware虚拟机磁盘丢失的情况,使用这种解决方式实在是太有必要了
VMware虚拟机 设备信息:
1、 VMware虚拟机 (数量: 40-50组;占用空间:1.8TB )
2、 VMware虚拟机--ESX SERVER共享一台IBM DS4100存储
VMware虚拟机 故障描述:
工作人员在使用过程当中 , 由于 vc里报告虚拟磁盘丢失, 通过 ssh到ESX中执行fdisk -l查看磁盘,storage已经 无 分区表。 经过 重启所有设备后,ESX SERVER均无法连接到DS4100所在的STORAGE。
通过对管理员的咨询了解到,在该存储网络里曾连接一台 windows 2003服务器 。
VMware虚拟机 故障分析:
由此我们可推测,有 可能是那台windows 2003 通过 对storage的独享操作导致了vmfs卷损坏。
1、 以整个存储做分析发现分区表清 0 ,有55aa有效结束标志,有硬盘ID标志。
2、 从前向后查看,发现一个NTFS卷, 且无任何数据。我们通过 对这个NTFS卷的BITMAP分析,得知大小约为1.8T(全部空间),3G左右位置占用部分空间,0.9T附近占用部分空间,但总占用空间不超过100M。
3、 针对VMFS卷进行分析,发现在原1.8TB的磁盘里有2组VMFS分区,第 2 组是对第一组的extend,第一组约1.5T,第二组约300GB,因NTFS分区并未写数据到第二个VMFS分区里(最后一个扇区的DBR备份没有覆盖有用数据),所以重点在于第一个VMFS分区。分析第一组VMFS,卷头结构丢失,一级索引、二级索引均存在,NTFS覆盖的数据区正好是某组虚拟机的临时内存镜像,损坏也无妨。 VMware虚拟机 数据恢复步骤:
第一步:对整个STORAGE进行镜像备份。
第二步:分析后,连接两个VMFS分区,直接按照VMFS分析组织方式提取所有VMDK及配置文件。
第三步:通过nfs直接迁移回ESX SERVER。
注 :因本例中已对故障存储做了安全备份,修复中同时直接重建第一组VMFS卷头,索引列表、分区表等信息,直接附加在ESX SERVER环境,算是第二个方案。 VMware虚拟机 数据恢复结果:
历经两天时间,已将数据成功提取,经用户验收,数据可正常读取无误,至此数据恢复工作结束。
VMware虚拟机 操作小贴士:
1、本例中依然是因为光纤环境互斥不当导致的问题,实际上,应该是这个卷在WINDOWS系统做了重新分区,并格式化成了NTFS,之后又对分区做了删除操作。因ESX VMFS的互斥不依赖于硬件,只依赖于操作系统驱动层,所以在其他服务器接入存储网络时一定要小心,尽量考虑好存储分配权限。
2、ESX因便捷的信息集中管理,真正使用中往往数据特别重要,一定要做好备份工作,并考虑损坏时迁移的方便性。