VMWare Workstation 8 автозапуск виртуальных машин и автоматическая остановка виртуальных машин (не ACPI)

На радость вполне подходящее решение предоставляет VMWare Workstation 8. (На сколько я понял именно с 8ой версии). Не сразу можно найти функции для автозапуска машин. И тем более для корректного выключения вместе с хостом. Далее по шагам как это всё сделать.
Инструкция пригодна и для гостевой ОС Windows. Необходимое условие: наличие установленных «VMMware Tools».

Понадобилось мне на длительный срок на Windows 2003 Server поставить Debian Linux виртуальной машиной. (По некоторым причинам, этот вариант я посчитал наиболее удачным в моём случае.).
Необходимо корректно выключать гостевую машину вместе с хостом. Причем, чтобы виртуальная машина запускалась сразу после загрузки сервера без входа пользователя.
Погуглил… Предлагают:

  • VMWare Server. «Компания VMWare объявила о конце срока поддержки VMWаre Sеrver 2 (летом 2011 заканчивается поддержка)»
  • обернуть в сeрвис командную строку для запуска машины. Ceрвис меня не устраивает из-за возможных запросов виртуальной машины к пользователю. Такое решение на коленке может нестабильно работать. UPD: У команды vmrun есть ключ nogui. Но как быть с выключением? Из-за навороченности решение не пробовал, можно конечно использовать vmrun -T ws stop "путь_к_файлу_виртуальной_машины.vmx" soft перед выключение компьютера. (vmrun находится в Program Files\VMware\VMware Workstation)
  • vSphere — из пушки по воробьям.

С установкой VMWare Workstation 8 стало ясно, что можно настроить автозапуск.VMWare Workstation 8 share option on virtual machine right clickVMWare Workstation 8 Manage AutoStart VMsVMWare Workstation 8 configure autostart VMs window
В контекстном меню на нужной виртуальной машине выбираем Manage -> Share. Выбираем один из способов: переместить виртуальную машину, или создать клон. Всё это происходит в специальную папку для шареных машин. Изменить можно в настройках (Edit -> Preferences ->Shared VMs). В настройках можно поменять порт для удаленной работы с виртуальными машинами.
На панели «Library» появится новая виртуальная машина в разделе «Shared VMs». Выбираем Shared VMs -> Manage AutoStart VMs. В диалоговом окне настраиваем порядок запуска виртуальных машин. И галками какие из них автозапускать. Виртуальные машины стартую из под службы «VMWare Workstation Server».
Корректное выключение гостя (например ACPI выключение, или через установленные VMWare Tools) не отрабатывают с выключением хоста. (Настройка на кнопку на панели «выключение» также настроена на shutdown guest — выключение через VMWare tools).
Нужно править файлы конфигурации config.xml и vmAutoStart.xml в
Vista/7: C:\ProgramData\VMware\hostd\
XP/2003: C:\Documents and Settings\All Users\Application Data\VMware\hostd\
В config.xml нужно убрать комментарии:
<!-- The file containing the AutoStart settings -->
<vmAutoStart>/etc/vmware/hostd/vmAutoStart.xml</vmAutoStart>

В vmAutoStart.xml:
в элементе /ConfigRoot/SystemDefaults — настройки по умолчаиню и в /ConfigRoot/AutoStartOrder/e[@id] — настройки для каждой виртуальной машины
stopAction установить в guestShutdown, для выключения гостевой машины вместе с хoстом через «VMware Tools». Возможные значения stopAction: none, powerOff, guestShutdown, suspend.
Подробней о значениях элемента stopAction
Таким образом получаем удобную виртуальную машину, к которой можно подключаться удаленно при помощи той же VMWare Workstation.

Дополнительная информация:
1. Пакет VMWare Tools для дебиана open-vm-tools
2. Служба, отвечающая за шаринг «VMwareHostd» («vmware-hostd.exe»). Вход от имени локальная система. Каждая виртуальная машина запускается в процессе «vmware-vmx.exe».
3. Пример перезагрузки удаленной расшаренной виртуальной машины:
vmrun -T ws-shared -h ip:port -u administrator -p password list
Получили список виртуальных расшаренных машин. Можно теперь подставить имя файла виртуальной машины для удаленной «мягкой» перезагрузки:
vmrun -T ws-shared -h ip:port -u administrator -p password reset "[ha-datacenter/standard] Debian GNU_Linux 6 (64-bit)/Debian GNU_Linux 6 (64-bit).vmx" soft
Команда возвращает управление в то время, когда заново загрузятся VMware Tools (по моим наблюдениям)

VMWare Workstation 8 автозапуск виртуальных машин и автоматическая остановка виртуальных машин (не ACPI): 7 комментариев

    • Какая у вас версия VMWare, Windows, сколькибитная windows? Расшаривали ли вы виртуальные машины (есть ли машины в разделе SharedVMs)? (возможно только после расшаривания появляются файлы настроек).

      У меня файл vmAutoStart.xml на Win2003 SP1 находится по пути «C:\Documents and Settings\All Users\Application Data\VMware\hostd» выглядит так (после правки):

      Так же в папке есть ещё файлы (попробуйте поиск файлов), (логи и бэкапы не публикую):
      stats\
      authorization.xml
      config.xml
      datastores.xml
      proxy.xml
      vmAutoStart.xml
      vmInventory.xml

  1. Метода хорошая — работает отлично!
    Вот только есть одна ерундишка — после расшаривания виртуалки исчезает возможность использовать shared folders. Неудобно.

    • А вы перед расшариванием установите все желаемые настройки включая shared folder и лишь потом только расшаривайте. И ещё можно поискать соответствующую строчку в конфигурационном файле .vmx там будет строка для расшаренных папок.

  2. Уведомление: VMWare Workstation 8 автозапуск и автоматическая остановка виртуальных машин (не ACPI) | ExtraLAN.ru

  3. а еще при расшаривании почему то перестает работать сетевой мост(( гостевая машинка ни как не хочет получать адрес из сети(

Добавить комментарий для rodji Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *