在 ESXi 主机上关闭无响应的虚拟机

本文提供了一套详细的ESXi命令行操作流程,包括通过SSH登录、获取虚拟机列表及状态、检查并取消挂起任务、关闭虚拟机等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用 ESXi 命令行

1.使用 SSH 以 root 身份登录到 ESXi。

2.通过运行以下命令获取所有已注册虚拟机的列表,由其 VMID 和显示名称标识:

vim-cmd vmsvc/getallvms

在这里插入图片描述

3.记下受影响的虚拟机 ID VMID

4.通过运行以下命令获取虚拟机当前的状态:

vim-cmd vmsvc/power.getstate VMID

在这里插入图片描述
5.通过运行以下命令检查受影响的虚拟机上是否有挂起的任务阻止了机器开机:

vim-cmd vmsvc/get.tasklist VMID

输出示例:

(ManagedObjectReference) [
'vim.Task:haTask-2-vim.VirtualMachine.createSnapshot-182550283',
'vim.Task:haTask-2-vim.VirtualMachine.consolidateDisks-182550274'
]

6.运行vim-cmd vimsvc/task_info task_id命令查看任务的更多信息。
例如使用第 5 步中数据:

vim-cmd vimsvc/task_info haTask-2-vim.VirtualMachine.createSnapshot-182550283
 
vim.TaskInfo) {
dynamicType = <unset>,
key = "haTask-2-vim.VirtualMachine.createSnapshot-182550283",
task = 'vim.Task:haTask-2-vim.VirtualMachine.createSnapshot-182550283',
description = (vmodl.LocalizableMessage) null,
name = "vim.VirtualMachine.createSnapshot",
descriptionId = "VirtualMachine.createSnapshot",
entity = 'vim.VirtualMachine:2',
entityName = "VMware vCenter Server Appliance5-1",
state = "running",
cancelled = false,
cancelable = false,
error = (vmodl.MethodFault) null,
result = <unset>,
progress = 50,
reason = (vim.TaskReasonUser) {
dynamicType = <unset>,
userName = "vpxuser",
},
queueTime = "2014-11-09T17:49:01.171933Z",
startTime = "2014-11-09T17:49:01.175521Z",
completeTime = <unset>,
eventChainId = 182550283,
changeTag = <unset>,
parentTaskKey = <unset>,
rootTaskKey = <unset>,
}

7.任务挂起,需要取消,使用如下命令:

vim-cmd vimsvc/task_cancel task_id

注意:并非所有任务都可以取消。例如在上面的示例中,可以看到快照任务的可取消标志设置为 false (cancelable = false)。

8.使用在步骤 3 中找到的 VMID 并运行以下命令关闭虚拟机:

vim-cmd vmsvc/power.shutdown VMID

注意:如果虚拟机无法关闭,请运行以下命令::

vim-cmd vmsvc/power.off VMID

在这里插入图片描述

9.通过运行以下命令获取正在运行的虚拟机列表,由其 World ID 和显示名称标识:

esxcli vm process list

在这里插入图片描述

10.记下无响应虚拟机的 World ID。例如,在第 3 步中,World ID 是 750434。

11.通过运行以下命令之一关闭列表中的虚拟机:

esxcli vm process kill -t=soft -w=WorldID
esxcli vm process kill -t=hard -w=WorldID
esxcli vm process kill -t=force -w=WorldID

注意:这些命令提供了虚拟机强制停止的不同级别的:

  • Soft 是最安全的
  • Hard 是立即关闭
  • Force 是最后的手段
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值