可以通过运行几个不同的命令来确定 Edge 是否处于正常状态。
Edge 诊断
- 使用以下命令检查 vmtoolsd 是否正在运行。
nsxedge> show process list Perimeter-Gateway-01-0> show process list %CPU %MEM VSZ RSZ STAT STARTED TIME COMMAND 0.0 0.1 4244 720 Ss May 16 00:00:15 init [3] ... 0.0 0.1 4240 640 S May 16 00:00:00 logger -p daemon debug -t vserrdd 0.2 0.9 57192 4668 S May 16 00:23:07 /usr/local/bin/vmtoolsd --plugin-pa 0.0 0.4 4304 2260 SLs May 16 00:01:54 /usr/sbin/watchdog ...
- 运行以下命令以检查 Edge 是否处于正常状态:
nsxedge> show eventmgr ----------------------- messagebus : enabled debug : 0 profiling : 0 cfg_rx : 1 cfg_rx_msgbus : 0 ...
可以使用 show eventmgr 命令验证是否收到并处理查询命令。nsxedge> show eventmgr ----------------------- messagebus : enabled debug : 0 profiling : 0 cfg_rx : 1 cfg_rx_msgbus : 0 cfg_rx_err : 0 cfg_exec_err : 0 cfg_resp : 0 cfg_resp_err : 0 cfg_resp_ln_err: 0 fastquery_rx : 0 fastquery_err : 0 clearcmd_rx : 0 clearcmd_err : 0 ha_rx : 0 ha_rx_err : 0 ha_exec_err : 0 status_rx : 16 status_rx_err : 0 status_svr : 10 status_evt : 0 status_evt_push: 0 status_ha : 0 status_ver : 1 status_sys : 5 status_cmd : 0 status_svr_err : 0 status_evt_err : 0 status_sys_err : 0 status_ha_err : 0 status_ver_err : 0 status_cmd_err : 0 evt_report : 1 evt_report_err : 0 hc_report : 10962 hc_report_err : 0 cli_rx : 2 cli_resp : 1 cli_resp_err : 0 counter_reset : 0 ---------- Health Status ------------- system status : good ha state : active cfg version : 7 generation : 0 server status : 1 syslog-ng : 1 haproxy : 0 ipsec : 0 sslvpn : 0 l2vpn : 0 dns : 0 dhcp : 0 heartbeat : 0 monitor : 0 gslb : 0 ---------- System Events -------------
Edge 恢复
如果 vmtoolsd 未运行或 NSX Edge 处于错误状态,请重新引导 Edge。
要从崩溃中恢复,只需重新引导即可。应当不需要重新部署。
注: 执行重新部署时,请记下旧 Edge 中的所有日志记录信息。
要调试内核崩溃,您需要获取以下信息:
- 仍处于崩溃状态的 Edge 虚拟机的 vmss(虚拟机挂起)或 vmsn(虚拟机快照)文件。如果存在 vmem 文件,则还需要此文件。可以使用该文件提取 VMware 支持部门可分析的内核核心转储文件。
- 重新引导(而非重新部署)崩溃的 Edge 后立即生成的 Edge 支持日志。您还可以检查 Edge 日志。请参见https://kb.vmware.com/kb/2079380。
- Edge 控制台的屏幕截图也是非常有用的,但它通常不包含完整的崩溃报告。