Как создать шаблон виртуальной машины KVM
Шаблон виртуальной машины — это, по сути, копия установленной виртуальной машины, которая пригодится, если вы хотите развернуть несколько экземпляров виртуальных машин. Создание шаблона — это трехэтапный процесс, который включает в себя создание виртуальной машины, установку всех необходимых пакетов и, наконец, очистку шаблона.
Давайте продолжим и посмотрим, как вы можете этого добиться.
Шаг 1. Установка KVM в Linux
Первым шагом является установка KVM в вашей системе. У нас есть подробные уроки по:
- Как установить KVM в Ubuntu 20.04
- Как установить KVM на CentOS 8
Кроме того, убедитесь, что демон libvirtd запущен и включен для автоматического запуска при загрузке.
sudo systemctl enable libvirtd
sudo systemctl start libvirtd
Убедитесь, что демон libvirtd запущен.
sudo systemctl status libvirtd
Если вы используете систему Ubuntu/Debian, убедитесь, что образ vhost-net загружен.
sudo modprobe vhost_net
Шаг 2. Создайте виртуальный образ KVM
Прежде чем мы приступим к созданию шаблона, нам нужно, прежде всего, иметь экземпляр установки. В командной строке мы собираемся создать образ 20G CentOS 8 KVM, используя команду qemu-img, как показано.
sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 20G
Затем используйте команду virt-install, чтобы создать виртуальную машину CentOS 8, как показано.
sudo virt-install --virt-type kvm --name centos8 --ram 2096 \
--disk /var/lib/libvirt/images/centos8.qcow2,format=qcow2 \
--network network=default \
--graphics vnc,listen=0.0.0.0 --noautoconsole \
--os-type=linux --os-variant=rhel7.0 \
--location=/home/tecmint/Downloads/CentOS-8-x86_64-1905-dvd1.iso
Это запустит экземпляр виртуальной машины. Вы можете подтвердить это, зайдя в вирт-менеджер и открыв окно консоли, как показано. Вы можете увидеть страницу приветствия по умолчанию для установщика. Обязательно завершите установку до самого конца.
Шаг 3. Создание образа шаблона виртуальной машины KVM
После завершения установки войдите в виртуальную машину и обновите все системные пакеты.
sudo dnf update
Установите необходимые пакеты, которые, по вашему мнению, необходимы для начала работы. В этом случае я установлю выпуск EPEL, wget, curl, net-tools и vim. В вашем случае это может быть по-другому.
sudo dnf install epel-release wget curl net-tools vim
Если вы собираетесь развернуть свой шаблон на облачной платформе, установите пакеты cloud-init, как показано.
sudo dnf install cloud-init cloud-utils-growpart acpid
Затем отключите маршрут zeroconf.
echo "NOZEROCONF=yes" >> /etc/sysconfig/network
По завершении обязательно выключите виртуальную машину и очистите образ шаблона виртуальной машины, как показано.
sudo virt-sysprep -d centos8
virt-sysprep — это утилита командной строки, которая сбрасывает виртуальную машину для создания ее клонов. Он удаляет такие записи, как ключи хоста SSH, файлы журналов, учетные записи пользователей и некоторые постоянные конфигурации сети. Прежде чем использовать команду, вы всегда должны убедиться, что виртуальная машина выключена.
sudo virt-sysprep -d centos8
Наконец, вызовите показанную команду, чтобы отменить определение домена виртуальной машины.
sudo virsh undefine centos8
Образ шаблона теперь готов к клонированию и развертыванию.