Иногда сталкиваюсь с тем, что виртуальная машина на хосте VMWare ESXi зависает и не отвечает на команды перезагрузки или выключения из веб-интерфейса клиента vSphere. В этой статье разберемся как принудительно остановить зависшей виртуальную машину VMWare.
Если процесс виртуальной машины на сервере ESXi завис, она перестает реагировать на команды Reset/Power Off, и на любое действие выдает ошибку вида:
The attempted operation cannot be performed in the current state
; Another task is already in progress
; The virtual machine might be performing concurrent operations. Actions: Complete the concurrent operation and retry the power-off operation. The virtual machine is in an invalid state
. Вы можете вручную остановить процесс зависшей ВМ на хосте ESXi из локального командной строки ESXi Shell или PowerCLI без перезагрузки сервера. Имейте в виду, что принудительное выключение ВМ может привести к потере данных в гостевой ОС (аналогично ситуации с отключением кабеля питания на физическом компьютере).
$ esxcli vm process list
$ esxcli vm process kill --type=[soft,hard,force] --world-id=WorldNumber
Есть три типа завершения процесса виртуальной машины:
kill -SIGTERM
); kill -9
); Попробуйте мягко остановить ВМ с указанным ID:
$ esxcli vm process kill --type=soft -w=25089429
ВМ должна выключиться.
$ esxcli vm process kill -t=soft -w=`esxcli vm process list | grep -A2 "hq-rds01" | grep World | awk '{print $3}'`
Можно отключить зависшую виртуальную машину с помощью PowerShell (это удобно, т.к. при подключении к vCenter вам не нужно искать хост, на котором запушена ВМ и включать SSH доступ). Подключитесь к vCenter с помощью PowerCLI и проверьте, что ВМ запущена:
get-vm 'web2' | select name,PowerStates
Принудительно остановите процесс ВМ:
stop-vm -kill "web2" -confirm:$false
Также вы можете остановить зависшую виртуальную машину с помощью консольной утилиты ESXTOP .
В SSH сессии введите команду esxtop
, затем нажмите c
для отображения ресурсов CPU и shift + V
, чтобы отображать только процессы вириальных машин
Затем нажмите f
(выбрать отображаемы поля), c
(отобразить поле LWID- Leader World Id) и нажмите Enter
.
Найдите вашу ВМ в списке и запомните ее LWID. Чтобы остановить процесс ВМ, нажмите k
(kill) и наберите LWID идентфикатор ВМ, которую нужно выключить.
Последний способ жёсткого выключения виртуальной машины – воспользоваться утилитой kill . Такой способ позволит остановить не только ВМ, но и все дочерние процессы.
Получите ID родительского процесса ВМ:
ps | grep "hq-rds01"
Завершите процесс ВМ:
kill -9 527888
После такого “hard reset”, установленная ОС запустится в режиме восстановления (в случае гостевой Windows, запустится среда Windows Recovery Environment ).
$ /etc/init.d/hostd restart
$ /etc/init.d/vpxa restart
Если говорить о том, какие лучшие дистрибутивы Linux мы знаем, то этот список может быть…
Хотя Ubuntu и поставляется со встроенным обозревателем Firefox многие пользователи считают что это не самая…
Что такое Remmina? Remmina — это совершенно бесплатный и свободный клиент так называемого удаленного рабочего…
Как мы знаем, Ubuntu это самая популярная сборка из систем на базе ядра Linux. У…
Выбор ноутбука для каждого пользователя это довольно кропотливый процесс. Люди стараются подобрать ноутбук который будет…
Если вы решили ознакомиться с операционной системой Linux более детально и задались вопросом как установить…