怎么拿VMware日志(vm-support)我们就不赘述了,具体拿日志的步骤可以回看:https://vmlib.com/collect-vmware-esxi-log-bundle/
拿到了一份vm-support怎么去分析呢?
解压vm-support日志压缩包
我们拿到一份vm-support后,可以看到是一个.zip或者.tgz的压缩包。
这个压缩包采用了多重压缩打包,我们需要逐层解压。解压3次,直至看到类似下面的”主目录“:

vm-support日志包里面有什么?
vm-support里面一般有以下文件夹:
- altbootbank
- bootbank
- commands
- etc
- json
- lib64
- usr
- var
- vmfs
大部分情况下,我们关注/commands和/var这两个文件夹就够了。
主要的日志在/var/run/log,如内核日志/var/run/log/vmkernel.log和主机日志/var/run/log/hostd.log。
- /bootbank – 活动分区的软链接,存放正在运行的 ESXi 路径下的内核模块及VIB(VMware安装包)
- /altbootbank – 备用分区的软链接,新安装或升级的内容会先写入此分区,重启后切换为活动启动区;当主分区出现问题时可回滚使用。
/commands
– 按命令名称(如lsusb.txt
、esxcfg-info.txt
)生成的纯文本输出文件,当你拿日志的时候(在命令行打vm-support时),ESXi就会运行一次这些脚本,然后保存输出,打包成vm-support./etc
– 复制了主机的所有配置文件,包括网络配置、NTP、认证、Service配置等;例如ntp.mfx
清单会复制/etc/ntp.conf
和/etc/ntp.drift
7/json
– 与/commands/
相同内容,但以 JSON 格式存储,方便脚本或自动化工具解析/lib64
– 存放 ESXi 运行所需的 64 位共享库和内核模块,如PAM安全模块等;ESXi作为64位系统,会优先从/lib64
加载模块/usr
– 包含大部分可执行文件、脚本和支持包工具,尤其是vm-support
本身的脚本通常位于/usr/lib/vmware/vm-support/
下/var
– 记录系统日志(/var/log/*
)、核心转储(/var/core/*
)及暂存数据,用于事后分析,如果曾经有过紫屏PSOD,会有紫屏日志放在var/core/vmkernel-zdump.*/vmfs
– ESXi上挂载所有VMFS数据存储的目录,通常在/vmfs/volumes/
下按UUID组织,包含虚拟机磁盘、配置文件等
我们来分4个方向去解析vm-support,来看看怎么在vm-support里找到我们所需要的信息
- 虚拟机VM
- ESXi主机
- 网络
- 存储
怎么在vm-support里看VM虚拟机方面的问题
虚拟机的日志路径:\vmfs\volumes\datastore uuid\vm name\vmware.log
每一个虚拟机有自己独立的路径
细分类型 | 日志路径 | 搜索关键字 | 解释 |
VM数量 | \etc\vmware\hostd\vmInventory.xml | 所有在该ESXi上开着机的VM列表 | |
看VM配置 | \vmfs\volumes\\\.vmx | numvcpus | 该虚拟机vCPU数量 |
memSize | 内存大小 | ||
guestOS | 看该VM装了什么系统 | ||
VM开机/关机时间原因 | \vmfs\volumes\\\vmware.log | CPU reset: soft | Guest OS initiated reset (OS里面按的) |
详细见https://vmlib.com/check-vm-shutdown-reboot-reasons/ | PM Soft Off | Guest OS initiated shutdown (OS里面按的) | |
CPU reset: hard | vSphere API call to restart (外面按的) | ||
MKS local poweroff | vSphere API call to poweroff (外面按的,作用类似拔电源) | ||
Tools: sending ‘OS_Halt’ (state = 1) | vSphere API call to shutdown (外面按的) | ||
PM Soft Off. Good-bye. | vSphere API call to shutdown (外面按的) | ||
vMotion问题 | \vmfs\volumes\\\vmware.log | mid id | 找migration id, 搜’mid id’ |
上面找到的mid id | vmware.log搜mid id,可以看source和destination | ||
\var\run\log\hostd.log | 上面找到的mid id | hostd.log搜mid id,可以看vmotion过程 |
怎么在vm-support看ESXi主机方面的信息
日志路径 | 搜索关键字 | 解释 |
\commands\date.txt | 拿vm-support的时间 | |
.\commands\esxcfg-info_-a.txt.FRAG-00000 | Product Name | 看服务器型号 |
Vendor Name | 看服务器厂商 | |
Serial Number | 看服务器序列号 | |
.\commands\python_usrlibvmwarevm-supportbinsystemStorageDebugpyc.txt | Hostname | 看ESXi主机名字 |
\commands\localcli_software-profile-get.txt | 看升级/打补丁记录 | |
\commands\localcli_software-vib-list.txt | 看ESXi装了的VIB软件包列表 | |
\commands\esxcfg-module_-q.txt | 看module模块,如看下migrate module是否有启用 | |
\var\run\log\vmksummary.log | 看该ESXi的uptime, 和VMs数量 |
怎么在vm-support里诊断网络问题
细分类型 | 日志路径 | 搜索关键字 | 解释 |
看配置 | \commands\nicinfo.sh.txt | vmnic | 看有多少个物理网口,如vmnic0,1,2,3 |
Firmware Version | 看网卡的固件版本 | ||
Driver Info | 看网卡所使用的驱动名称,如qfle3 | ||
\commands\localcli_software-vib-list.txt | qfle3 | 看网卡的驱动版本 | |
\commands\esxcfg-vmknic_-l.txt | 看vmkernel port信息,如ESXi管理IP地址, vMotion IP地址, MTU | ||
\commands\esxcfg-vswitch_-l.txt | 看vswitch信息,如 | ||
看日志 | \var\run\log\vobd.log | linkstate is | 看物理网口up/down记录 |
\var\run\log\vmkernel.log | 在相应时间节点在vm内核日志看下有没网络相关的错误 |
怎么在vm-support里看存储相关的问题
细分类型 | 日志路径 | 搜索关键字 | 解释 |
看存储配置 | \commands\localcli_storage-core-adapter-list.txt | 看HBA | |
\commands\localcli_storage-san-sas-list.txt | 看SAS HBA的固件版本和驱动名字,如smartpqi | ||
\commands\localcli_software-vib-list.txt | 上面找到的smartpqi | 看SAS HBA的驱动版本 | |
\commands\localcli_storage-san-fc-list.txt | 看FC SAN HBA的固件版本和驱动名字,如qedf | ||
\commands\localcli_software-vib-list.txt | 上面找到的qedf | 看SAN HBA的驱动版本 | |
\commands\df.txt | 看Datastore的空间% | ||
\commands\localcli_storage-filesystem-list–i.txt | 看Datastore的UUID, 挂载点Mount Point的UUID | ||
\commands\esxcfg-scsidevs_-m.txt | 看Datastore和硬件的映射关系(找datastore底层device的naa.id) | ||
\commands\localcli_storage-core-device-list.txt | 上面找到的naa.600508b1001c52ce4cb1772dddedbd62 | 搜naa.id,看该设备的参数,如vendor, RAID level, 是否ssd, 是否offline, 是否支持VAAI,RDM等 | |
\commands\esxcfg-mpath_-b.txt | 看SAN的multipath多路径配置 | ||
看存储相关的日志 | \var\run\log\vmkernel.log | ScsiDeviceIO | 见https://knowledge.broadcom.com/external/article?legacyId=289902 |
CmdSN | |||
All Paths Down state | |||
0x28 | https://www.t10.org/lists/2status.htm | ||
TimedOut | 存储心跳超时 | ||
\var\run\log\vmkwarning.log | performance has deteriorated | 存储性能下降 | |
\var\run\log\hostd.log | Lost access to volume | 存储卷断开 | |
Successfully restored access to volume | 存储卷恢复 | ||
\var\run\log\vobd.log | esx.problem.vmfs.heartbeat.timedout | 存储心跳超时 | |
esx.problem.vmfs.heartbeat.recovered | 存储心跳恢复 | ||
connection failure | 存储网络连接失败 |
