🍝 Как создать шаблоны виртуальных машин CentOS / Fedora / RHEL на KVM |

🍝 Как создать шаблоны виртуальных машин CentOS / Fedora / RHEL на KVM

Мануал

Как создать шаблон виртуальной машины для дистрибутивов CentOS / Fedora / RHEL Linux на KVM?

Я люблю KVM и использую его для всех своих домашних машин виртуализации.

KVM – это решение для полной виртуализации с открытым исходным кодом для Linux на оборудовании x86, содержащее расширения виртуализации (Intel VT или AMD-V).

Шаблон VM – это основная копия экземпляра виртуальной машины, из которой вы можете клонировать, преобразовывать или развертывать больше виртуальных машин.

Шаблоны виртуальных машин более полезны при развертывании большого количества похожих виртуальных машин, которые требуют согласованности при развертывании.

Если что-то пойдет не так в экземпляре, созданном из шаблона, вы можете клонировать новую виртуальную машину из шаблона с минимальными усилиями.

Шаг 1: Установите KVM

Установите KVM в вашей системе Linux, обратившись к соответствующей статье из списка ниже.

Служба KVM (libvirtd) должна быть запущена и включена для запуска при загрузке системы.

sudo systemctl start libvirtd
sudo systemctl enable libvirtd

Включите модуль ядра vhost-net в Ubuntu / Debian.

sudo modprobe vhost_net
echo vhost_net | sudo tee -a /etc/modules

Шаг 2: Создайте CentOS / Fedora / RHEL VM

Прежде чем мы сможем создать базовый шаблон, нам нужно установить сервер CentOS / Fedora или RHEL Linux.

Я рекомендую вам сохранить небольшой размер диска для установки базовой ОС.

В этом руководстве будет продемонстрирована установка виртуальной машины CentOS 7 на KVM с использованием инструмента командной строки virt-install.

1. Создайте образ виртуальной машины объемом 10 ГБ с помощью qemu-img.

$ sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos.qcow2 10G
Formatting '/var/lib/libvirt/images/centos.qcow2', fmt=qcow2 size=10737418240 cluster_size=65536 preallocation=metadata lazy_refcounts=off refcount_bits=16

2. Начните установку базовой операционной системы.

sudo virt-install --virt-type kvm --name centos7 --ram 1024 \
   --disk /var/lib/libvirt/images/centos.qcow2,format=qcow2 \
   --network network=default \
   --graphics vnc,listen=0.0.0.0 --noautoconsole \
   --os-type=linux --os-variant=rhel7.0 \
   --location=/home/jmutai/iso/CentOS-7-x86_64-Minimal-1810.iso

Замените:

  • centos7  именем базового экземпляра.
  • /var/lib/libvirt/images/centos.qcow2  путем к образу диска
  • /home/jmutai/iso/CentOS-7-x86_64-Minimal-1810.iso  путем к вашему ISO-файлу
  • default  именем сети KVM

При запуске установки вы должны получить вывод:

Starting install...
Setting input-charset to 'UTF-8' from locale.
Retrieving file vmlinuz...                                                                                                      | 6.3 MB  00:00:00     
Setting input-charset to 'UTF-8' from locale.
Retrieving file initrd.img...                                                                                                   |  50 MB  00:00:00     
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.

Откройте свой Virt Manager, чтобы завершить установку.

Для установки из консоли используйте следующие команды

sudo virt-install --virt-type kvm --name centos7 --ram 1024 \
   --disk /var/lib/libvirt/images/centos.qcow2,format=qcow2 \
   --network network=default \
   --os-type=linux --os-variant=rhel7.0 \
   --location=/home/jmutai/iso/CentOS-7-x86_64-Minimal-1810.iso \
   --graphics none \
   --console pty,target_type=serial \
   --extra-args 'console=ttyS0,115200n8 serial'

Проверьте и установите параметры установки:

Шаг 3: Подготовьте шаблон CentOS / Fedora / RHEL VM

1. Обновление системы

После завершения установки виртуальной машины войдите в экземпляр и обновите все системные пакеты до последних версий.

sudo yum -y update

2. Установите стандартные базовые пакеты, отсутствующие в системе:

sudo yum install -y epel-release vim bash-completion wget curl telnet net-tools unzip lvm2

3. Установите пакеты acpid и cloud-init.

sudo yum -y install acpid cloud-init cloud-utils-growpart
sudo sudo systemctl enable --now acpid

4. Отключить маршрут zeroconf

echo "NOZEROCONF=yes" | sudo tee -a /etc/sysconfig/network

5. Настройте GRUB_CMDLINE_LINUX – для использования Openstack.

Если вы планируете экспортировать шаблон в сервис образов Openstack Glance, отредактируйте файл /etc/default/ grub и настройте параметр GRUB_CMDLINE_LINUX.

Ваша строка должна выглядеть так: удалите rhgb quiet и добавьте console = tty0 console = ttyS0,115200n8.

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap console=tty0 console=ttyS0,115200n8"

Создайте конфигурацию grub.

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

6. Установите другие необходимые вам пакеты в базовом шаблоне.

7. По завершении выключите виртуальную машину.

sudo poweroff

Шаг 4: Очистите шаблон виртуальной машины

Вам нужен инструмент virt-sysprep для очистки экземпляра.

sudo virt-sysprep -d centos7

Вывод:

Отмените определение домена libvirt после очистки виртуальной машины.

$ sudo virsh undefine centos7
Domain centos7 has been undefined

Ваш шаблон виртуальной машины KVM готов к использованию.

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий