Управление экземплярами ВМ в интерфейсе командной строки#
Создание экземпляра ВМ#
Для создания экземпляра ВМ предварительно необходимо подготовить шаблон ВМ.
Для развертывания ВМ из шаблона можно воспользоваться командой:
onetemplate instantiate <идентификатор_шаблона> [<файл_параметров>]
где <файл_параметров>
— файл в котором перечислены параметры ВМ, заменяющие значения, которые были определены в шаблоне. Кроме того, возможно вместо файла параметров в команде в качестве аргумента указывать новые значения параметров.
Примечание
Примеры:
Развертывание ВМ из шаблона с идентификатором 2, при этом для ВМ будет выделено 3 ГБ оперативной памяти:
onetemplate instantiate 2 --memory 3072
Пример вывода после выполнения команды:
VM ID: 1
Просмотр перечня ВМ.
Пример вывода после выполнения команды onevm list
:
ID USER GROUP NAME STAT CPU MEM HOST TIME
1 brestadm brestadm test-vm-1 prol 0.25 3G 172.16.1.210 0d 00h00
С помощью аргумента --multiple <количество_ВМ>
можно создать более одного экземпляра одновременно. При этом наименования ВМ будут иметь вид: <наименование_шаблона>-<идентификатор_ВМ>
.
Примечание
Пример
Развертывание двух ВМ из шаблона с идентификатором 0:
onetemplate instantiate 0 --multiple 2
Отображение существующих ВМ#
Для отображения существующих ВМ необходимо использовать команду onevm list
.
Пример вывода после выполнения команды:
ID USER GROUP NAME STAT CPU MEM HOST TIME
1 oneadmin brestadm test-vm-1 poff 0.25 3G 172.16.1.210 0d 14h53
Кроме того, можно использовать команду onevm top
для непрерывного отображения ВМ.
Для просмотра полной информации о ВМ необходимо использовать команду:
onevm show <идентификатор_ВМ>
Пример вывода после выполнения команды onevm show 2
:
VIRTUAL MACHINE 1 INFORMATION
ID : 1
NAME : test-vm-1
USER : oneadmin
GROUP : brestadmins
STATE : POWEROFF
LCM_STATE : LCM_INIT
LOCK : None
RESCHED : No
HOST : 172.16.1.210
CLUSTER ID : 0
CLUSTER : default
START TIME : 07/18 19:05:39
END TIME : -
DEPLOY ID : 3b4d40f7-55c0-4ba6-9bcf-2e627c744179
VIRTUAL MACHINE MONITORING
ID : 1
TIMESTAMP : 1658214069
PERMISSIONS
OWNER : um-
GROUP : ---
OTHER : ---
Удаление экземпляров ВМ#
Удаление экземпляра ВМ из любого состояния выполняется командой:
onevm terminate <идентификатор_ВМ>
В качестве идентификатора ВМ можно указать перечень идентификаторов, разделенных запятыми или диапазон идентификаторов (в качестве разделителя используются две точки — «..»).
Команда onevm terminate
корректно отключает и удаляет работающие ВМ, отправляя сигнал ACPI
. После отключения ВМ освободятся ресурсы (образы, сети и др.), которые использовались ВМ, сервер виртуализации будет очищен, а постоянный диск будет перемещен в хранилище образов.
Если по истечении определенного времени после выполнения команды onevm terminate
ВМ все еще работает, т.е. ОС виртуальной машины игнорирует сигналы ACPI
, служба сервера управления снова присвоит ВМ статус RUNNING
.
Если экземпляр ВМ находится в статусе RUNNING
, для завершения его работы в команде можно указать аргумент --hard
. В этом случае экземпляр ВМ будет удален незамедлительно. Следует использовать данный аргумент команды, если ВМ не поддерживает ACPI
.
Приостановка экземпляров ВМ#
Существует два способа временно остановить выполнение ВМ: с сохранением состояния и без сохранения. Для приостановки ВМ используются следующие команды:
onevm suspend
— краткосрочная приостановка: состояние ВМ, в т.ч. выделенные ресурсы, сохраняется на задействованном сервере виртуализации. При возобновлении работы приостановленной ВМ выполняется ее незамедлительное развертывание на том же сервере виртуализации;onevm poweroff
— долгосрочная приостановка: корректно выключает электропитание работающей ВМ, отправляя сигналACPI
, при этом состояние ВМ не сохраняется. Возобновления работы ВМ осуществляется на том же сервере виртуализации. Использование с командой аргумента--hard
позволяет незамедлительно отключить электропитание ВМ. Использование данной опции актуально, если ВМ не поддерживаетACPI
.
Примечание
В случае запуска процедуры выключения в ОС виртуальной машины, в ПВ состояние ВМ также будет установлено как POWEROFF
.
Возможно запланировать долгосрочную приостановку. В этом случае ресурсы сервера виртуализации, которые использовала ВМ, будут освобождены, а сервер виртуализации очищен. Любой диск будет сохранен в хранилище образов. Следующие команды применяются при необходимости сохранить выделенные ресурсы сети и памяти, например, IP-адреса, постоянные образы диска:
undeploy
— корректно выключает работающую ВМ, отправляя сигналACPI
. Диски ВМ перемещаются в хранилище образов. При возобновлении ВМ, развертывание которой было отменено, она перейдет в состояние ожидания, а планировщик выберет место для ее повторного развертывания;undeploy --hard
— аналогично командеundeploy
, но работающая ВМ удаляется незамедлительно;stop
— аналогично командеundeploy
, но также сохраняется состояние ВМ для последующего возобновления;resume
— возобновляет работу ВМ при успешной остановке или приостановке их работы, а также ВМ, развертывание которых было отменено или электропитание которых было отключено.
Запуск экземпляров ВМ#
Чтобы возобновить работу ВМ при успешной остановки или приостановки их работы, а также запустить ВМ, развертывание которых было отменено или электропитание которых было отключено, необходимо выполнить команду: .. code-block:: bash
onevm resume <идентификатор_ВМ>
В качестве идентификатора ВМ можно указать перечень идентификаторов, разделенных запятыми или диапазон идентификаторов (в качестве разделителя используются две точки — «..»).
Перезагрузка экземпляров ВМ#
Для перезагрузки ВМ используются следующие команды:
reboot
— корректная перезагрузка работающей ВМ, отправляя сигналACPI
;reboot --hard
— принудительная перезагрузка работающей ВМ, актуально, если ВМ не поддерживаетACPI
.
Отсрочка развертывания экземпляров ВМ#
Возможно отсрочить развертывание ожидающей ВМ, например, после ее создания или возобновления, используя команду hold
. Команда переводит ВМ в состояние удержания. Планировщик не будет выполнять развертывание ВМ, находящейся в состоянии удержания. Также можно создавать ВМ непосредственно на удержании с помощью команд: onetemplate instantiate -hold
или onevm create -hold
.
Возобновление развертывания ВМ осуществляется с помощью команды release
. Команда разблокирует ВМ, находящуюся на удержании, и переведет ее в состояние ожидания. Возможно автоматически разблокировать ВМ, запланировав выполнение данной команды.