Краткое руководство по установке и первоначальной настройке гипервизора KVM (Kernel-based Virtual Machine) на ОС Debian GNU/Linux 11.6.
Для того, чтобы выяснить, поддерживает ли процессор виртуализацию, необходимо выполнить команду
# egrep '(vmx|svm)' --color /proc/cpuinfo
В ответе красным цветом должно подсветиться vmx или svm. Если это произошло — нам повезло, идём дальше…
Установим Network Manager и утилиты для сетевого моста
# apt install network-manager bridge-utils
Затем остановим запущенные сетевые интерфейсы.
# systemctl stop networking
Если после инсталляции Debian не был настроен сетевой интерфейс, необходимо открыть файл настроек /etc/network/interfaces, закомментировать строчки:
# allow-hotplug ens33 # iface ens33 inet dhcp
а также прописать настройки сетевого интерфейса в соответствии с требованиями локальной сети. Подробнее об этом можно почитать здесь: https://dondub.com/2021/02/nastroyka-seti-v-debian-10-8-i-ubuntu-server-20-10/
Затем запустим службу NetworkManager и внесём её в автозагрузку
# systemctl start NetworkManager # systemctl enable NetworkManager
Откроем файл /etc/NetworkManager/NetworkManager.conf и в секции ifupdown исправим параметр managed на значение true:
[ifupdown] managed=true
Далее перезапустим службу NetworkManager
# systemctl restart NetworkManager
После этого запустим псевдографическую утилиту nmtui
# nmtui
Жмём Изменить соединение, выбираем нужный сетевой интерфейс и применим изменения.
Затем остановим и запустим сетевой интерфейс
# ifdown ens33 # ifup ens33
Вообще после этих манипуляций не помешает перезагрузка
# shutdown -r now
Проверим, соответствуют ли настройки сетевого интерфейса тем, которые мы задали
# ifconfig ens33
Если да, идём дальше.
Теперь устанавливаем необходимые пакеты для запуска KVM
# apt install qemu-kvm libvirt-clients libvirt-daemon-system virtinst libvirt-daemon virt-manager
Далее проверим состояние виртуальной сети
# virsh net-list --all
ответ будет примерно таким:
Имя Состояние Автозапуск Постоянный ------------------------------------------------- default не активен no yes
Это значит, что наша виртуальная сеть default не активна, и нам необходимо её запустить
# virsh net-start default
ответ в консоли:
Сеть default запущена
Добавим её в автостарт
# virsh net-autostart default
ответ в консоли:
Добавлена метка автоматического запуска сети default
# virsh net-list --all
Имя Состояние Автозапуск Постоянный ------------------------------------------------ default активен yes yes
После этого установим пакеты для управления через веб-интерфейс
# apt install cockpit cockpit-machines
После установки открываем браузер на другой машине в сети и в адресной строке вводим: https://IP-адрес-сервера входим под рутом и попадаем в панель управления.
Затем переходим в раздел Сеть и жмём кнопку Добавить Bridge. Здесь выбираем наш сетевой интерфейс и жмём Применить
После этого переходим в раздел Хранилище и в правой панели будет список дисков, установленных на сервере. Их необходимо отформатировать и смонтировать. При необходимости их можно также объединить в RAID.
Далее переходим в раздел Виртуальные машины и сверху будет блок 1 Storage pool. Кликаем на него и попадаем в пулы носителей. Создадим пул носителей
Переходим на пул, включаем его и создаём на нём тома хранилища
Теперь на этих томах можно размещать виртуальные машины.
Создаём виртуальную машину
После создания виртуальной машины видим, что в Дисках присутствует выделенное место, которое было указано в томе, а также в Сетях работает интерфейс bridge, который позволит нам увидеть виртуальную машину в локальной сети