Перезапуск зависшей виртуальной машины в ESXi 6.5
Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами разобрали, вопрос как изменить формат файла в операционных системах Windows. Сегодня я хочу вам рассказать еще об одной интересной и уже порядком часто встречающейся проблеме, как зависание виртуальной машины Vmware ESXI при попытке ее выключить или перезагрузить, так же может быть ошибка "Another task is already in progress". Давайте разбираться, как можно выкрутиться из такой ситуации.
Описание проблемы
Как я и писал выше есть хост с установленным гипервизором Vmware ESXI 6.5. В какой-то момент система мониторинга присылает сообщение, о том, что одна из виртуальных машин не доступна. Подключившись к vCenter серверу виртуальный сервер имел статус "Power On", "Web Console" так же не отвечала. Я попытался сделать ей принудительное завершение (Power Off), но эффекта это не дало, у меня выскочила ошибка "Cannot power off"
При попытке мигрировать виртуальную машину вы может получить ошибку:
Так же вы можете увидеть ошибку при попытке, выключить или перезапустить виртуалку:
Во всех случаях вам скажут, что данная виртуальная машина имеет некий процесс, который в данный момент не дает выполнить ваши повторные действия. Так же данная виртуалка у меня была членом RDS фермы, при попытке перевода его в режим стока (Drain-Mode) я получил ошибку "Не удалось изменить состояние подключения для сервера".
Как перезапустить зависшую виртуальную машину
Сразу хочу отметить, что если в графическом интерфейсе у вас не выходит, что либо сделать, то у вас остается только командная строка ssh. Включаем на ESXI хосте SSH службу. Далее подключаемся через Putty или MremoteNG. Я подключаюсь через MremoteNG. Первое, что вам необходимо сделать, это как посмотреть список активных процессов, все как в Windows. Для этого есть команда:
В моем примере, я вижу свою виртуальную машину TERM6. Если системные процессы мозолят вам глаза, то вы можете одновременно нажать SHIFT+V, что оставит отображение только виртуальных машин.
Теперь нам нужно вычислить LWID - Leader World Id, завершив который вы завершите работу нужной виртуалки. ПО умолчанию LWID не отображается, чтобы его включить нажмите клавишу F. У вас откроется меню, где можно добавлять или скрывать поля. Видим, что если нажать клавишу "C", то у вас будет добавлен LWID- Leader World Id. Нажимаем "C" и "Enter".
Теперь зная LWID, нажмите клавишу "K", она вызовет меню "World to kill (WID)", данная операция поможет принудительно завершить процесс LWID. Вбиваем наш LWID и нажимаем "Enter".
Тут у вас два варианта, чудо произошло (80% вероятности) и чудо не произошло, часто бывает в случаях с ошибкой "Another task is already in progress"
Кстати World ID можно вычисли и просто введя команду:
Там вы сможете увидеть World ID, после чего его можно убить командой:
В моем случае чудо произошло, виртуалка перешла в состояние Power OFF, я это вижу в Power-CLI.
Если принудительное завершение процесса вам не помогло, то делаем вот что, по возможности мигрируйте все остальные виртуальные машины с данного хоста, у вас из-за ошибки останется только сбойная. Все в том же SSH. введите:
В итоге у вас будет выведен список, где первая колонка это PID процесса, вторая PID родительского процесса, убиваем его для вашей виртуальной машины.
После чего пишем kill PID-родительского процесса. Если не помогло, то пробуем выполнить вот, что (по возможности перевезите другие сервера с данного хоста на другие хосты)
В результате действий хост стал работать нормально, единственное может быть ситуация, что виртуалку придется удалить из inventory и добавить заново. Если и это не помогло, то попробуйте выполнить:
Висит задача create virtual machine snapshot
Еще в своей практике встречал ситуации, что из-за незаконченного задания у меня не выполнялось резервное копирование, задание висело со статусом "create virtual machine snapshot"
Так же вычисляем родительский PID подключившись по SSH, после его завершения, вы увидите сообщение, которое покажет, что с виртуальной машиной теперь можно взаимодействовать.
На этом у меня все, мы с вами научились восстанавливать работу зависшей виртуальной машины на гипервизоре ESXI. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org,