如何进行VMware ESXi 宕机的分析

68次阅读
没有评论

共计 5148 个字符,预计需要花费 13 分钟才能阅读完成。

如何进行 VMware ESXi 宕机的分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

近期发现 ESXI 主机宕机导致视频会议系统故障,整理分析过程如下:
环境为 ESXi 6.0, 被 vCenter 6.7U1 管理,宕机后并未拍屏幕而直接重启了主机。

从 vCenter 层面收集 ESXi 系统日志,只看到实时日志,未看到宕机前的日志信息。

ssh 连接到 esxi,   cd /var/log 也未看到压缩的历史日志文件,从 vmksummary.log 看到主机重启后的时间,并有提示已经找到 DUMP 文件,故障时间点基本确认

2019-04-16T19:54:13Z bootstop: Host has booted                                                                                                                                  
2019-04-16T19:54:13Z bootstop: partition core dump found

cd /scratch   看到有 log 文件夹,ls log 看到了大量压缩的历史日志文件

如何进行 VMware ESXi 宕机的分析

原来日志被重定向到这里来了。

4、根据时间点查看历史日志文件内容,并未发现有用信息。

5、ls /scratch/core   看到有一个 vmkernel-zdump.1 的 dump 文件,基本确认主机发了生紫屏才宕机的

6、如何分析打开这个文件呢?网上查询了 VM 也有 KB 说明, 根据 KB 使用一个命令:
vmkdump -l vmkernel-zdump.1 会创建一个 vmkernel.log.1 的文件,可用 cat 或 vi 或其它文本工具查看:
^[[7m2019-04-15T11:31:36.550Z cpu30:32805)WARNING: Heartbeat: 781: PCPU 26 didn t have a heartbeat for 21 seconds; may be locked up.^[[0m
^[[31;1m2019-04-15T11:31:36.550Z cpu26:33339)ALERT: NMI: 681: NMI IPI recvd. We Halt. eip(base):ebp:cs [0x3080cd(0x41800d800000):0x1:0x4010](Src0x1, CPU26)^[[0m
2019-04-15T11:31:36.550Z cpu30:32805)World: 9729: PRDA 0x418047800000 ss 0x0 ds 0x10b es 0x10b fs 0x10b gs 0x0
2019-04-15T11:31:36.550Z cpu30:32805)World: 9731: TR 0x4020 GDT 0x4392ef421000 (0x402f) IDT 0x41800d8c9000 (0xfff)
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9b560:[0x41800db080cd]MemNode_NUMANodeMask2MemNodeMask@vmkernel#nover+0x25 stack: 0x1
2019-04-15T11:31:36.550Z cpu30:32805)World: 9732: CR0 0x80010031 CR3 0x6c4ed1000 CR4 0x42768
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9b580:[0x41800db45622]MemDistributeNUMAPolicy@vmkernel#nover+0x27a stack: 0x0
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9b6c0:[0x41800db4616d]MemDistribute_Alloc@vmkernel#nover+0x299 stack: 0xe59bb55
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9b820:[0x41800d8181f0]PagePool_AllocCustom@vmkernel#nover+0x2f0 stack: 0x4390d1d9bac0
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9b8e0:[0x41800d820c04]vmk_MemPoolAlloc@vmkernel#nover+0x37c stack: 0x41800dfad8b1
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9bd90:[0x41800dfad8b1]fusion_get_seq_num@ None # None +0xd9 stack: 0x43034ef4cc40
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9bea0:[0x41800dfa2adb]megasas_hotplug_work@ None # None +0x16b stack: 0x0
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9bf20:[0x41800d82245f]VmkTimerQueueWorldFunc@vmkernel#nover+0x21f stack: 0x0
2019-04-15T11:31:36.550Z cpu26:33339)0x4390d1d9bfd0:[0x41800da13dae]CpuSched_StartWorld@vmkernel#nover+0xa2 stack: 0x0
2019-04-15T11:31:36.600Z cpu30:32805)Panic: 798: Saved backtrace: pcpu 26 Heartbeat NMI
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9b560:[0x41800db080cd]MemNode_NUMANodeMask2MemNodeMask@vmkernel#nov
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9b580:[0x41800db45622]MemDistributeNUMAPolicy@vmkernel#nover+0x27a
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9b6c0:[0x41800db4616d]MemDistribute_Alloc@vmkernel#nover+0x299 stac
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9b820:[0x41800d8181f0]PagePool_AllocCustom@vmkernel#nover+0x2f0 sta
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9b8e0:[0x41800d820c04]vmk_MemPoolAlloc@vmkernel#nover+0x37c stack:
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9bd90:[0x41800dfad8b1]fusion_get_seq_num@ None # None +0xd9 stack:
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9bea0:[0x41800dfa2adb]megasas_hotplug_work@ None # None +0x16b stac
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9bf20:[0x41800d82245f]VmkTimerQueueWorldFunc@vmkernel#nover+0x21f s
2019-04-15T11:31:36.600Z cpu30:32805)pcpu 26 Heartbeat NMI: 0x4390d1d9bfd0:[0x41800da13dae]CpuSched_StartWorld@vmkernel#nover+0xa2 stack
2019-04-15T11:31:36.623Z cpu30:32805)^[[45m^[[33;1mVMware ESXi 6.0.0 [Releasebuild-3073146 x86_64]^[[0m
PCPU 26: no heartbeat (2/2 IPIs received)

基本确认主机宕机原因是 Esxi 主机无法与 CPU 通信(通信超时 21 秒)导致。

vCPU 分配过多了??检查了下 vCPU 数量小于 LCPU。

7、通过关键字进行搜索“POSD no heartbeat”,未找到此故障原因,国外网友也有类似问题,只查到建议是升级 ESXi。

8、最后一在篇 ESXi 6.0U2 发行说明“已解决问题”看到解决了“no heartbeat”的问题:

ESXi 主机显示紫色诊断屏幕并显示多条“可更正计算机检查中断”(CMCI) 消息

由于短时间内 vmkernel.log 文件中的多个 CMCI 导致 CPU 无响应,ESXi 主机可能会失败并显示紫色诊断屏幕。紫色诊断屏幕中会显示类似以下内容的条目:

ESXi 主机显示紫色诊断屏幕并显示多条“可更正计算机检查中断”(CMCI) 消息

由于短时间内 vmkernel.log 文件中的多个 CMCI 导致 CPU 无响应,ESXi 主机可能会失败并显示紫色诊断屏幕。紫色诊断屏幕中会显示类似以下内容的条目:

PCPU N : no heartbeat (2/2 IPIs received)0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]MCEReapMCABanks@vmkernel#nover+0x195
br/ 0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]IRQ_DoInterrupt@vmkernel#nover+0x33e br/0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]IDT_IntrHandler@vmkernel#nover+0x12b 0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]gate_entry@vmkernel#nover+0x640xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]LFQueue_Dequeue@vmkernel#nover+0x59
br/ 0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]BH_DrainAndDisableInterrupts@vmkernel#nover+0xf3 br/0xXXXXXXXXXXXX:[0xXXXXXXXXXXXX]VMMVMKCall_Call@vmkernel#nover+0x2c6

将向 vmkernel.log 文件中记录类似于以下内容的条目:

cpu1:33127)MCE: 1118: cpu1: MCA error detected via CMCI (Gbl status=0x0): Restart IP: invalid, Error IP: invalid, MCE in progress: no.
cpu1:33127)MCE: 231: cpu1: bank9: MCA recoverable error (CE): Memory Controller Scrubbing Error on Channel 0.
cpu1:33127)MCE: 222: cpu1: bank9: status=0xXXXXXXXXXXXXXXXX: (VAL=1, OVFLW=0, UC=0, EN=0, PCC=0, S=0, AR=0), ECC=no, Addr:0xXXXXXXXXXXXXXXXX (valid), Misc:0x8c3589300 (valid)

本版本已解决该问题。

最后实在找不到其它原因了,就定为 BUG 吧。升级到 esxi 6.0 U3

看完上述内容,你们掌握如何进行 VMware ESXi 宕机的分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计5148字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)