当前位置: 排除器 >> 排除器发展 >> vSphere虚拟化故障排查方法工具
本文包括vSphr故障排查思想、针对VirtualMachin的故障排查、针对Storag的故障排查、针对vCntr和ESXi的故障排查、常用的故障排查工具箱。
一、vSphr故障排查思想
1、故障排查思维逻辑
故障排查涉及到整体的排错方法论,总体而言,故障排查需要遵循一个工作逻辑:
确认问题状况
o确认问题所在
o收集故障相关问题
确认导致故障的原因
o确认什么原因导致的问题
o诊断问题的根本原因是什么
解决问题
o制定可能的解决方案
o评估数据安全风险
o执行最佳解决方案
2、故障排查逻辑图示(流程及细节)
图示说明:
配置问题、软件Bug、硬件故障是三种最为常见的故障
软件bug示例
o在ESXi5.5u1或u2中存在这样一个常见的软件Bug:网卡原因紫屏事件
硬件故障示例
o若主机HBA卡电池出问题,可能会在写上面会有很差的表现
3、vSphr常规故障分层
4、故障解决E2E
故障状态
故障原因
1个或多个LUN不可见
LUN不可见,存储可能没有恰当的MAP到主机
无法通过vSphrWbClint连接vCntr
VirtualCntrSrvic没有启动
VirtualMachin无法启动
文件可能被锁定,文件可能丢失
5、案例流程-故障状态(示例)
6、案例流程-日志搜集(收集日志信息,用于进行故障分析)
7、案例流程-可能性分析
利用结构化思维来进行故障分析,可以有效提高排错效率;
根据问题的提示,按照下图所示排错流程来进行排错
图示说明:
自上而下进行排错
自下而上进行排错
从中间环节排错
8、案例流程-查找问题的根源
通过反复测试,来确认问题的根源所在,例如:VM无响应的排错逻辑:
图示说明:
如果仅仅是单台虚拟机无响应,建议自上而下
若涉及很多虚拟机响应慢,建议从中间环节
存在告警,建议从下而上
9、案例流程-解决问题
完成问题根源定位之后,评估问题可能带来的影响
o较大影响-立即解决
o一般影响-条件许可的情况下解决
o较小影响-有空解决
制定解决问题的方案
o头疼医头-立刻就事论事解决问题
o头疼医脚-避免同一个问题再次发生
o长远考虑-整体考虑,从未来的思路触发去执行问题处理
10、vSphr常规故障排查流程-追根溯源(图示)
图示说明:
此处以vMotion为例,其它故障与此类似
11、vSphr排错组件归纳
二、针对VirtualMachin的故障排查
1、VM故障排查思想
2、VM的文件架构
3、ContntID
所谓CID,位于VM的磁盘描述文件里面,负责磁盘相关整合状态跟踪
图示说明:
?母盘的parntCID为"fffffff"
?若虚拟机有快照,则第一级快照的parntCID为母盘的CID,第二级快照的parntCID为第一级快照的CID(若虚拟机存在多层快照,则依次类推)
?如果快照层级出问题,可能会导致快照出问题,很有可能导致虚拟机无法启动
4、故障01-解决CountntID不匹配的问题
?Stp1:备份好磁盘描述文件
?Stp2:下载这个文件,用文本编辑器打开,然后修改CID
?Stp3:修改之后,利用如下命令来验证CID的修改是否成功(若提示失败,则意味着CID的更改没有成功)
ovmkfstools-qWin01-A-.vmdk-v10
注意:虚拟机快照导致的虚拟机无法启动的故障,很多时候都是快照层级发生错乱所致。这类问题可以采用上述方法来解决。
5、故障02-解决Snapshot之之vss导致故障(执行Snapshot时,提示I/O静默调用失败)
?VM有大量的I/O负载导致在执行Snapshot时I/OQuiscing失败
?通常通过下面2个技术来执行I/OQuiscing
oMicrosoftVolumShadowCopySrvic(VSS)
oVMwarToolsSYNCdrivr
?初始化检查
o检查是否可以手动创建一个不调用I/OQuiscing的快照
6、解决I/OQuiscing导致的Snapshot失败的故障问题
?如果利用VSS执行I/OQuiscing,则需要确认下列条件是否满足
oVSS要求满足
o相关服务是正常运行状态
oMicrosoftSoftwarShadowCopy服务正常
oVSSWritr没报错
?如果利用SYNCDrivr执行I/OQuiscing,则需要确认下列条件满足
o禁止掉SYNCDrivr
o在执行Snapshot之前,先将I/O密集型的业务停掉(比如数据库)
?老版本的WindowsOS没包含SYNCDrivr在MicrosoftVSS里面
7、故障03-VM开机失败
?在vmwar.log文件里面可以看到虚拟机开启失败
?故障原因逻辑分析(从上到下)
?分析是否vm文件丢失
o执行如下命令来查看是否存在文件丢失
?ls/vmfs/volums/Shard/Win01-B
?解决方案
o利用之前的备份来恢复
o如果dscriptor文件丢失,手动重建这个文件
?分析是否虚拟机被锁定
o确认是否存在文件被锁定
?尝试开机虚拟机,如果失败,说明可能有锁定
?执行如下命令查询是否有文件被锁定
?touchfilnam
?可执行如下命令查看哪台ESXiHost锁定磁盘文件
?vmkfstools-D/vmfs/volums/Shard/Win01-B/Win01-B-flat.vmdk
?执行如下命令来找到锁定的进程信息
olsof
grpnam_of_lockd_fil
?找到后杀掉它
?如果依然无法确认那个进程导致虚拟机文件锁定,那就用最简单的逻辑
o迁移虚拟机或重启ESXiHost
8、故障04-VMwarToolsf无法安装(最有可能是GOS类型选择错误)
?检查GustOS类型是否正常
?分析GustOS类型选错的问题
9、故障05-VirtualMachinorphand(虚拟机被孤立)
检查vCntrSrvr是否在VM执行迁移的过程中重启过该虚拟机(在迁移到60%的时候最容易出现),因为在虚拟机被重启时,会临时性的无法使用,状态就会显示为orphand
?故障原因逻辑分析(自上而下)
?分析vMotion或DRS导致故障
o确认是否由于迁移导致故障
?查看Tasks页标签
?检查orphand虚拟机被注册到的源或目标ESXiHost
o如果有找到虚拟机被注册到ESXiHost
?重启ESXiHost的管理服务
o如果没有找到虚拟机被注册的信息,则执行
?注册虚拟机到ESXiHost或vCntr
?利用orphand虚拟机的vmdk创建全新的虚拟机
?分析虚拟机没通过vCntr删除导致故障
o执行如下命令去验证虚拟机的文件是否存在
?ls/vmfs/volums/shard/Win01-B
o如果配置文件被删除,则执行如下动作来恢复
?重建虚拟机,借此重建*.vmx文件
o如果虚拟机的磁盘文件被删除,则执行
?备份恢复计划
?分析*.vmx文件导致故障
o*.vmx这个文件包含了虚拟机的所有配置信息,如果它被破坏可能会出现上述问题
o解决思路
?利用文件编辑器打开这个*.vmx文件,去掉其中不当部分后重新尝试
?从备份信息里恢复*.vmx文件
?直接从Invntory里移除掉虚拟机,然后重建vm
?分析ESXiHost根文件系统空间不足导致的故障
o当ESXiHost的根文件系统空间不足时,系统可能会尝试删除掉虚拟机
o可以执行如下命令来确认是否存在这个问题
?DCUI下面执行:df-h
?清除不必要的根文件系统里的内容
?从Invntory移除掉VM,再重新添加
10、故障06-VirtualMachinSnapshot故障(尝试创建或者处理快照时出错)
?确认vm的磁盘是否支持Snapshot,因为RDM的PhysicalMod、IndpndntDisk等状态下是无法做快照的
?由于Snapshot最多支持32级,因此,超过后会无法执行
?故障原因逻辑分析(自上而下)
?分析描述文件混乱问题导致故障
o快照的dlta文件在描述文件里错乱
?-dlta.vmdk文件在.vmdk里没有正确描述
oDlta磁盘根本就没了描述的配对文件
?copy基础磁盘的描述文件,然后更名为配对Dlta磁盘的描述文件
?编辑里面,将相关的配对信息更改为Dlta磁盘的信息
?分析文件尺寸过大问题导致故障
oVMFS5Datastor单个文件最大支持62.93TB
o快照最大值会受到限制
?VMFS5里,最大只能超过原始盘的8GB左右
?这里的8GB的来源是开销的部分
?分析Datastor空间不足问题导致故障
o要处理所有的快照信息的前提条件就是Datastor的空间要足够
o可以通过如下方式来确认是否有足够的空间
?去GUI下查看快照所在的Datastor空间是否ok
?在ESXihost上运行命令:df-h
?解决方案
o增加Datastor的尺寸
o移走虚拟机
三、针对Storag的故障排查
1、Storag故障排查逻辑
2、vSphrStorag架构示意图
?当虚拟机无法使用时,排除其它故障,很大程度上会与Storag部分有关系。下图是vSphr环境下的Storag结构示意图:
3、存储故障01-IPStorag无法被ESXiHosts访问
?确认ESXiHosts能看到虚拟机所在的storag
osxclistoragcorpathlist
?执行rscan动作看看能否重新查看到
osxclistoragcoradaptrrscan-Avmhba##
?iSCSIStorag结构示意图
o如果ESXiHost出现连接IPStorag故障时需要去检查如下图所示的
转载请注明:http://www.aideyishus.com/lktp/113.html