Kako napraviti KVM Virtual Machine Template


Predložak virtuelne mašine je u suštini kopija instalirane virtuelne mašine koja je zgodna kada želite da primenite više instanci virtuelnih mašina. Kreiranje šablona je proces u 3 koraka koji uključuje kreiranje virtuelne mašine, instaliranje svih potrebnih paketa koje želite da instalirate i konačno čišćenje šablona.

Hajdemo naprijed i vidjeti kako to možete postići.

Korak 1: Instaliranje KVM-a u Linux

Prvi korak je da instalirate KVM na vaš sistem. Imamo sveobuhvatne tutorijale o:

  • Kako instalirati KVM na Ubuntu 20.04
  • Kako instalirati KVM na CentOS 8

Dodatno, uvjerite se da je demon libvirtd pokrenut i da je omogućen za automatsko pokretanje pri pokretanju.

sudo systemctl enable libvirtd
sudo systemctl start libvirtd

Provjerite da li je demon libvirtd pokrenut.

sudo systemctl status libvirtd

Ako koristite Ubuntu/Debian sistem, uvjerite se da je slika vhost-net učitana.

sudo modprobe vhost_net

Korak 2: Kreirajte KVM virtuelnu sliku

Pre nego što krenemo sa kreiranjem šablona, moramo, pre svega, da imamo instancu instalacije. Na komandnoj liniji ćemo kreirati 20G CentOS 8 KVM sliku koristeći naredbu qemu-img kao što je prikazano.

sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 20G

Zatim koristite naredbu virt-install da kreirate CentOS 8 virtuelnu mašinu kao što je prikazano.

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

Ovo pokreće instancu virtuelne mašine. Ovo možete potvrditi tako što ćete otići do virt-managera i otvoriti prozor konzole kao što je prikazano. Ono što možete vidjeti je zadana stranica dobrodošlice za instalater. Obavezno dovršite instalaciju do samog kraja.

Korak 3: Kreiranje slike šablona KVM virtuelne mašine

Kada se instalacija završi, prijavite se na VM i ažurirajte sve sistemske pakete.

sudo dnf update

Instalirajte preduvjetne pakete za koje smatrate da su neophodni za početak. U ovom slučaju, instalirat ću EPEL release, wget, curl, net-tools i vim. Ovo može biti drugačije za vaš slučaj.

sudo dnf install epel-release wget curl net-tools vim

Ako namjeravate primijeniti svoj predložak na platformi u oblaku, instalirajte cloud-init pakete kao što je prikazano.

sudo dnf install cloud-init cloud-utils-growpart acpid

Zatim onemogućite rutu zeroconf.

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

Kada završite, obavezno isključite virtuelnu mašinu i očistite sliku VM šablona kao što je prikazano.

sudo virt-sysprep -d centos8

virt-sysprep je uslužni program komandne linije koji resetuje virtuelnu mašinu kako bi se od nje napravili klonovi. Uklanja unose kao što su SSH ključevi domaćina, datoteke dnevnika, korisnički nalozi i neke trajne mrežne konfiguracije. Da biste koristili naredbu, prvo morate uvijek biti sigurni da je VM isključen.

sudo virt-sysprep -d centos8

Na kraju, pozovite prikazanu naredbu da dedefinirate domen VM.

sudo virsh undefine centos8

Slika predloška je sada spremna za kloniranje i implementaciju.