|
В XenServer 6.x возможности Auto Start для виртуальных машин были убраны из графического интерфейса консоли управления XenCenter, хотя присутствовали в более ранних версиях.
Сделано это было потому, что механизм автоматического старта виртуальных машин в XenServer конфликтуют с функциями высокой доступности (HA).
Для включения Auto Start, сначала нужно включить его на уровне XenServer и пула, для чего нужно выполнить следующее:
1. Определяем UUID пула, для которого необходимо включить Auto Start. Для этого выполняем консольную команду на сервере XenServer:
xe pool-list |
Нужен параметр [UUID], например:
2.1. Для получения сведений о текущих параметрах пула:
1 | xe pool-param-list uuid=UUID |
2.2. Разрешаем автостарт виртуальных машин на уровне пула с найденным UUID командой:
1 | xe pool-param-set uuid=UUID other-config:auto_poweron=true |
Теперь включаем автостарт на уровне виртуальных машин, для чего:
1. Выполняем команду для получения UUID виртуальной машины:
1 | xe vm-list |
2. И для найденного [uuid-vm] включаем автостарт:
1 | xe vm-param-set uuid=[uuid-vm] other-config:auto_poweron=true |
Другой способ включения механизма Auto Start – это использование скрипта, который можно скачать вот в этой ветке на форуме Citrix.
Суть использования скрипта сводиться к следующему:
-
файл скрипта autostart-script.sh нужно сделать исполняемым и добавить (например в cron) для автоматического запуска при старте XenServer-а.
-
Для виртуальной машины необходимо добавить тэг "autostart" воспользовавшись консолью управления XenCenter, после чего виртуалка будет автоматически запускаться при старте хоста.
Исходный код скрипта autostart-script.sh привожу ниже:
1 2 3 4 5 6 7 8 9 10 | #!/bin/sh ARRAY=`xe vm-list tags="autostart" | grep uuid | awk ‘{ print $5 }’` for f in $ARRAY do VM_NAME=`xe vm-param-get uuid=$f param-name=name-label` echo "Starting $VM_NAME" /opt/xensource/bin/xe vm-start uuid=$f done |
Вы также можете ознакомиться с другими статьями:
24th Май 2016
|
Теги:
|