Для управления виртуализацией VMmanager использует набор инструментов Libvirt. В состав Libvirt входит утилита virsh, позволяющая выполнять операции с виртуальными машинами (ВМ) через командную строку. Статья содержит примеры использования утилиты virsh. Подробную информацию о работе virsh см. в официальной документации Libvirt.
Используйте команды из этой статьи, если операции с ВМ невозможно выполнить через веб-интерфейс платформы.
Примеры использования
Чтобы управлять ВМ через virsh, подключитесь по SSH к узлу кластера, на котором размещены эти ВМ. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
Вывести список ВМ
virsh list --allПример ответа
Id Name State
------------------------------------------------
13 2289_phthalo_onyx paused
15 2921_sshstorage running
100 4820_cocoa-silver running
103 4831_grafana running
- 2925_storage2 shut offПояснения:
- Id — id ВМ в гипервизоре. Отсутствует, если ВМ не запущена;
- Name — имя ВМ в Libvirt. Например, если в платформе у ВМ id
12и имяtest, то в Libvirt у неё будет имя12_test; -
State — cтатус ВМ:
- running — запущена;
- shut off — полностью остановлена;
- paused — приостановлена;
- in shutdown — выполняется процесс выключения;
- crashed — аварийно завершена;
- pmsuspended — приостановлена через управление питанием.
Запустить ВМ
virsh start <имя_или_id_ВМ>Корректно завершить работу ВМ
virsh shutdown <имя_или_id_ВМ>Принудительно завершить работу ВМ
Используйте эту команду, только если ВМ не удалось остановить с помощью команды
virsh shutdown. Действие команды аналогично экстренному отключению питания у сервера. В некоторых случаях команда может привести к потере данных и повреждению файловой системы внутри гостевой ОС.virsh destroy <имя_или_id_ВМ>Перезапустить ВМ
virsh reboot <имя_или_id_ВМ>Приостановить ВМ
virsh suspend <имя_или_id_ВМ>Вывести ВМ из состояния "Приостановлена"
virsh resume <имя_или_id_ВМ>Получить конфигурацию ВМ
virsh dumpxml <имя_или_id_ВМ>Пример ответа
<domain type='kvm' id='15'>
<name>2921_sshstorage</name>
<uuid>11111111-6716-440c-977e-1712dd752411</uuid>
<memory>1048576</memory>
<vcpu>1</vcpu>
<os>
<type arch='x86_64'>hvm</type>
</os>
<devices>
<disk type='file' device='disk'>
<source file='/var/lib/libvirt/images/minimal-vm.qcow2'/>
<target dev='vda' bus='virtio'/>
</disk>
<interface type='network'>
<source network='default'/>
</interface>
<console type='pty'/>
</devices>
</domain>Пояснения:
- domain — корневой элемент конфигурации:
- type — тип гипервизора;
- id — id ВМ;
- name — имя ВМ;
- uuid — универсальный уникальный идентификатор ВМ;
- memory — объём RAM в КиБ;
- vcpu — количество vCPU;
- os — настройки гостевой ОС;
- devices — подключённые устройства:
- disk — виртуальные диски;
- interface — сетевые интерфейсы;
- console — виртуальная консоль.
Подробнее о конфигурации см. в документации Libvirt.
Редактировать конфигурацию ВМ
virsh edit <имя_или_id_ВМ>
Содержимое файла откроется в редакторе vim. Чтобы отредактировать файл, нажмите i и внесите необходимые изменения. Чтобы выйти из редактора:
- с сохранением изменений — нажмите
Escи введите:wq - без сохранения — нажмите
Escи введите:q!
Подключиться к консоли ВМ
virsh console <имя_или_id_ВМ>Может быть полезно