Ошибка Failed to start the virtual machine (error-18) при запуске виртуальной машины на VMware vSphere 6.5

В работе имеется Blade-сервер Dell VRTX на лезвиях которых используется гипервизор VMware vSphere 6.5. Так как все лезвия используют одну дисковую корзину VRTX, то перемещение\миграция виртуальных машин осуществляется путем обычного разрегистрирования на одном лезвии и регистрация на другом.

Такой метод миграции VM соответственно требует обязательного выключения машины, в отличии от использования vCenter. Но vCenter дорогой и не каждая организация готова его себе позволить, как в моем случае.

 

В очередной раз понадобилось переместить VM (webserver_1) с одного лезвия на другой и в процессе этого столкнулся с трудностями запуска VM на целевом лезвии. В качестве памятки себе опишу свою проблему и ее решение.

 

На исходном лезвии выполнил завершение работы на виртуальной машине, но она не выключилась. Решил принудительно завершить ее работу через консоль, но в активных процессах виртуальную машину (webserver_1) не обнаружил, а вместо нее висела виртуальная машина с названием vm.572109.

Принудительно завершил процесс vm.572109 и разрегистрировал ее из текущего лезвия. На другом лезвии зарегестрировал ее и попытался запустить, но она не запустилась.

 

Долго висел статус «Running…»

 

После некоторого времени система выдала ошибки неудачного запуска VM:

  • Failed — An error occurred while creating temporary file for /vmfs/volumes/52d528e0-0d3b4675-5b88-18a99bdc13c1/webserver_1/webserver_1.vmx: The file already exists
  • Failed to start the virtual machine (error -18)

 

Эти ошибки означают что виртуальная машина, а точнее ее *.vmx файл (конфигурационный файл VM) заблокирован другим хостом и поэтому доступа к нему нет.

 

Через консоль видно что в каталоге VM присутствует файл блокировки *.vmx~

 

 

Смотрим какой хост держит блокировку файла. Выполняем команду:

В выводе видим владельца блокировки файла:

  • 5d988d2f-2f22bc92-f10e-18a99bdc13db — где 18a99bdc13db mac-адрес (18:a9:9b:dc:13:db) хоста.

Если в выводе 00000000-00000000-0000-000000000000 , то это значит что файл никем не заблокирован

 

 

Методом просмотра по каждому хосту ESXi вкладки Physical NICs находим нужный хост который держит блокировку файла.

Либо через консоль можно вывести параметры сетевых адаптеров:

 

На искомом хосте необходимо завершить процесс который держит блокировку. Находим LWID процесса по имени файла блокировки (webserver_1.vmx~) командой:

Процесс найден:

 

Завершаем принудительно процесс командой:

Обращаю внимание что 572109 это LWID моего процесса, в команду kill поставляем свой LWID!

 

Теперь если снова проверим состояние блокировки файла webserver_1.vmx, то видим что более он никем не заблокирован:

 

 

После всех этих манипуляй у меня успешно запустилась VM на целевом лезвии. Вот такие случаются ньюансы при подобном методе переноса VM между лезвиями Dell VRTX.

БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
Загрузка...

Оставить ответ

два × 4 =

© IT-блог Жаконды All Rights Reserved.
Яндекс.Метрика