当前,虚拟化解决方案已经在数据中心普及应用,帮助我们整合资源、节约成本,提升可用性,可以更加灵活调配基础架构资源。作为数据中心管理员,在享受虚拟化带来的红利的同时,也不免有一些担忧:假如虚拟机因为故障无法开机了怎么办?虚拟机中的重要数据还能否找回?
今天,我们就借助一个具体案例来分析一下。
前段时间,我司受理了一个客户请求,客户的服务器因为意外断电,导致部分虚拟机无法正常启动。其中一台虚拟机运行着重要的业务系统,并存储有重要数据,且虚拟机没有备份副本可供恢复,因此必须进行修复。
客户在找了多家服务商修复无果后,最后找到了我们。经过分析和处理,最终成功帮助客户修复所有受损虚拟机文件,实现虚拟机正常开机,全部数据正常可用。
经此案例,我们对虚拟机无法启动的问题进行了总结分析,今天把经验分享给大家。
总结起来,虚拟机无法启动,无非是下面这几种原因:
|
|
本篇先来介绍前面三种故障原因:
1. 虚拟化OS问题。
虚拟机无法正常打开电源,会有诸如“内部错误”、“找不到xxx文件”、“策略阻止启动”等提示。
这种故障其实是最好排查的,对虚拟机执行一个vMotion,就可以很快定位出问题。如果vMotion至新的Esxi服务器后可以正常开机,则说明源主机存在问题。至于问题的原因,可能是兼容性问题、配置问题、版本问题等等,需要具体原因,具体分析,在这里我们不多做赘述,如果有感兴趣的朋友,我们可以私下探讨。
2. 文件锁定。
为了防止并行更改关键虚拟机文件和文件系统,虚拟机处于运行状态时,ESXi 主机对一些虚拟机文件建立了锁定。在某些情况下,即使关闭虚拟机的电源,这些锁定也不会解除。因此,其他 ESXi 主机无法访问这些文件,虚拟机也无法打开电源。
运行时期间锁定的虚拟机文件包括: