Перейти к содержанию

Установка libvirt в Astra Linux

Для автоматизированной установки системы виртуализации QEMU/KVM в дистрибутивы Astra Linux включен пакет astra-kvm.

Установить пакет можно командой:

sudo apt install astra-kvm

Если предполагается, что текущий пользователь будет работать с системой виртуализации без использования sudo, то его нужно добавить в группу libvirt-admin:

sudo usermod -a -G libvirt-admin $USER

Если предполагается работа с гостевой файловой системой libguestfs с использованием sudo, то требуется включить в указанные выше группы пользователя root:

sudo usermod -a -G kvm,libvirt,libvirt-qemu,libvirt-admin root

Если нужно настроить межсетевой экран, то описание тут.

Проверить состояние службы можно командой:

sudo systemctl status libvirtd 

Создание собственных пулов для пользователей

Для создания собственного пула пользователя следует создать каталог, доступный этому пользователю, например:

sudo mkdir -p /virt/pool1
sudo chmod 750 /virt/pool1
sudo chown administrator /virt/pool1

Дальнейшие действия следует выполнять от имени пользователя - владельца пула.

Создать пул в ранее созданных каталогах можно следующими командами:

virsh -c qemu:///system pool-define-as pool1 --type dir --target /vrt/pool1
virsh -c qemu:///system pool-build pool1
virsh -c qemu:///system pool-start pool1
virsh -c qemu:///system pool-autostart pool1
virsh -c qemu:///system pool-list --all

Ниже даются команды создания и управления виртуальной машиной, но прежде нужно создать конфигурационный файл этой машины.

Команды управления виртуальными машинами

Создать и запустить виртуальную машину с образом диска, расположенным в ранее созданном пуле можно командами:

virsh -c qemu:///system define vm1.xml
virsh -c qemu:///system start vm1

Проверить статус ВМ:

virsh -c qemu:///system list --all

Проверить параметры подключения к ВМ:

virsh -c qemu:///system domdisplay vm1

Подключиться к виртуальному монитору ВМ:

spicy -h 127.0.0.1 -p 5900

Получить список машин:

sudo virsh list --all
sudo virsh start <имя виртуальной машины>

Включить автоматический запуск виртуальной машины при загрузке:

echo "#!/bin/bash" | sudo tee /etc/rc.local
echo "virsh start <имя виртуальной машины>" | sudo tee -a /etc/rc.local
sudo chmod +x /etc/rc.local

Показать список запущенных ВМ:

virsh list

Показать список всех машин (в том числе выключенных):

virsh list --all

Выключить виртуальную машину:

virsh shutdown <vm name>

Запустить виртуальную машину:

virsh start <vm name>

Приостановить виртуальную машину:

virsh suspend <vm name>

Запустить приостановленную виртуальную машину:

virsh resume <vm name>

Перезапустить виртуальную машину:

virsh reboot <vm name>

Уничтожить виртуальную машину:

virsh destroy <vm name>

Удалить машину из списка и удалить все файлы, принадлежащие ей (обычно применяется после выполнения команды virsh destroy):

virsh undefine <vm name>

Информация о процессоре на виртуальной машине:

virsh vcpuinfo <vm name>

Получить идентификатор виртуальной машины:

virsh domid <vm name>

Получить UUID виртуальной машины:

virsh domuuid <vm name>

Получить сведения о виртуальной машине:

virsh dominfo <vm name>

Просмотр состояния виртуальной машины:

virsh domstate <vm name>

Вывести файл конфигурации указанной виртуальной машины в XML формате:

virsh dumpxml <vm name>