ESXi 5.0 не работает автозапуск виртуальных машин - костыль

Решил я поиграться с виртуализацией, с рассмотрением вопроса о дальнейшем внедрении. Из программного обеспечения выбор пал на ESXi. Сервачок свежий был в наличии, мозгов в нем менее 32 гигов, а точнее 8, соответсвенно для такого случая VMWare предоставляет свой продукт бесплатно. Использовал я версию ESXI 5 Update 1.

В общем все развернулось прекрасно, создал виртуальную машинку с 2008-м, все работает отлично. Но в связи с тем, что питание у нас в офисе нестабильно, возник вопрос с автоматическим стартом виртуалок, после перезагрузки железного сервака, т.к. при моем отсутсутствии включать их будет просто некому.

Судя по документации для этого достаточно в настройках хоста (не виртуальной машины) выбрать один из трех типов запуска  Configuration - Software - Virtual Machine Startup/Shutdown

  • Автоматический запуск (Automatic Startup).
  • Режим запуска по любому приказу (Any Order).
  • Ручной запуск (Manual Startup).

Выставил нужный режим, перезапускаюсь и .... машина автоматом не стартовала.

Заглянув в хрустальный шар, увидел, что в бесплатной версии с первым апдейтом, автостарт виртуальных машин не работает, вроде как баг и во втором апдейте должны исправить, но как говорится обещанного долго ждут.

Там  же я увидел замечательный костыль, который исправляет данную ситуацию. Итак, нам для этого потребуется доступ по SSH, если кто не знает, включается из консоли =)

Итак, логинимся и выполняем команду, которая покажет нам список виртуальных машин с их номерами:

~ # vim-cmd vmsvc/getallvms
                                                                    
Vmid     Name                    File                        Guest OS          Version   Annotation
1      Exchange   [datastore1] Exchange/Exchange.vmx   windows7Server64Guest   vmx-08

Т.к. виртуальная машина у нас пока одна, то список не длинный. Отсюда нам потребуется только номер виртуалки, у нас соотвественно номер 1

Теперь идем в наше хранилище виртуальных машин (datastore), это /vmfs/volumes/datastore1/ и создаем скрипт с именем  autostart.sh, следущего содержания: 

vim-cmd vmsvc/power.on 1

где 1 - это номер нашей виртуальной машины. Если надо запускать несколько машин, то ставим между ними паузу, хотя бы в 30 сек - 

vim-cmd vmsvc/power.on 1
sleep 30s
vim-cmd vmsvc/power.on 3

Далее задаем права на скрипт 

chmod 777 /vmfs/volumes/datastore1/autostart.sh

И в конец файла /etc/rc.local дописываем:

/vmfs/volumes/datastore1/autostart.sh

Перезагружаемся, смотрим, автостарт прошел успешно, что и требовалось сделать.

Выражаю благодарность хрустальному шару и communities.vmware.com, за помощь в оперативном решении вопроса =) 

 

Интересное на сайте: 
0
Голосов пока нет