通过Esxi命令关闭无响应的虚拟机

By | December 26, 2017

一、使用ESXi 5.0 主机的esxcli 命令来关闭虚拟机
esxcli 命令能够在本地或远程来关闭运行在ESXi 5.0主机上的虚拟机。

1. 打开ESXi Shell、vSphere Management Assistant (vMA)或vSphere Command-Line Interface (vCLI) 客户端,只要esxcli工具能够运行即可。

2. 使用如下命令获取正在运行的虚拟机清单,该清单由World ID、UUID、Display Name和 .vmx 配置文件所在路径构成:

esxcli vm process list  #显示在此ESXI服务器中所有运行的虚拟机列表

3.  用如下命令关闭一台虚拟机:

esxcli vm process kill –type=[soft,hard,force] –world-id=WorldNumber

注意:有三种关闭虚拟机的方法,Soft 程度最低,hard 为立即执行,如果依然不能关闭,则可以使用force 模式。

4.  执行步骤2来检查虚拟机是否已不再运行。

二、使用 ESXi 命令行工具 vim-cmd 来关闭虚拟机
1.  在 ESXi 控制台,进入技术支持模式,用root用户登录。

2.  使用如下命令获取虚拟机清单,该清单由VMID、Display Name和 .vmx 配置文件所在路径构成:

vim-cmd vmsvc/getallvms  #获取ESXI服务器中所有的虚拟机清单

3.  获取虚拟机的当前状态:

vim-cmd vmsvc/power.getstate VMID  #获取虚拟机电源状态

4.  使用第2步获取的VMID 来关闭虚拟机:

vim-cmd vmsvc/power.shutdown VMID     #相当于关闭客户机操作系统

Note: 如果虚拟机还是不能关闭,请尝试以下命令:

vim-cmd vmsvc/power.off VMID  #相当于关闭虚拟机电源

建议首先使用vim-cmd指令关闭虚拟机,它可以通过关闭客户机操作系统的方式进行虚拟机正常关机。

Leave a Reply