Установка libvirt на Ubuntu 22.04

Делаем установку

_x000D_apt install libvirt-daemon virt-manager qemu-system qemu-user ovmf grub-efi-amd64-bin grub-efi-ia32-bin grub-pc-bin

Проверяем версию коммандой:

_x000D_virsh --version

Должно вывести версию 8.0.0

Добавьте локального пользователя в группу libvirt

_x000D_usermod -a -G libvirt user

Откройте файл

_x000D_nano /etc/libvirt/libvirtd.conf

Раскоментируйте строки

_x000D_unix_sock_group = "libvirt"_x000D_unix_sock_rw_perms = "0770"

Перезапустите сервис

_x000D_systemctl restart libvirtd

Настройка сети

Создайте файл

_x000D_echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/10-ip-forward.conf_x000D_

Измените настройки сети по умолчанию

_x000D_virsh net-edit --network default

Измените значения только ip и dhcp. Остальные uuid, bridge, mac address изменять не надо

_x000D_<network>_x000D_ <name>default</name>_x000D_ <uuid>c792c9ec-7d90-407c-9084-a39f762b2228</uuid>_x000D_ <forward mode='nat'/>_x000D_ <bridge name='virbr0' stp='on' delay='0'/>_x000D_ <mac address='52:54:00:ba:3d:a9'/>_x000D_ <ip address='172.30.0.1' netmask='255.255.255.0'>_x000D_ <dhcp>_x000D_ <range start='172.30.0.100' end='172.30.0.254'/>_x000D_ </dhcp>_x000D_ </ip>_x000D_</network>

Добавьте сеть в автозапуск

_x000D_virsh net-autostart --network default

Обновите настройки

_x000D_virsh net-destroy default _x000D_virsh net-start default

LXC контейнеры

В lxc контейнерах нужно поменять

_x000D_lxc.net.0.link = virbr0

В файле /etc/lxc/default.conf

_x000D_lxc.net.0.link = virbr0

Отключите сеть lxc-net

_x000D_systemctl disable lxc-net_x000D_systemctl stop lxc-net

Поменять в файле /etc/default/lxc-net

_x000D_USE_LXC_BRIDGE="false"

Добавление хостов на лету

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

_x000D_lxc net-update default add-last ip-dhcp-host "<host name='bob' ip='172.30.0.25' />" --live --config

Как узнать IP адреса хостов в libvirt?

Для того, чтобы узнать IP, нужно выполнить комманду:

_x000D_virsh net-dhcp-leases default