KVM wirtual maşyn şablonyny nädip döretmeli


Wirtual maşyn şablony, esasan, wirtual maşynlaryň birnäçe ýagdaýyny ýerleşdirmek isläniňizde amatly gurnalan wirtual maşynyň nusgasydyr. Şablon döretmek, wirtual maşyn döretmegi, gurmak isleýän ähli zerur paketleriňizi gurmagy we ahyrynda şablony arassalamagy öz içine alýan 3 ädimdir.

Geliň, muny nädip ýerine ýetirip boljakdygyny göreliň.

1-nji ädim: Linux-da KVM gurmak

Birinji ädim, ulgamyňyza KVM gurmak. Bizde giňişleýin okuw sapaklary bar:

  • Ubuntu 20.04-de KVM-ni nädip gurmaly
  • CentOS 8-de KVM-ni nädip gurmaly

Mundan başga-da, libvirtd daemonynyň işleýändigine we ýüklemäni awtomatiki usulda açyp biljekdigine göz ýetiriň.

$ sudo systemctl enable libvirtd
$ sudo systemctl start libvirtd

Libvirtd daemonynyň işleýändigini barlaň.

$ sudo systemctl status libvirtd

Ubuntu/Debian ulgamyny işleýän bolsaňyz, vhost-net şekiliniň ýüklenendigine göz ýetiriň.

$ sudo modprobe vhost_net

2-nji ädim: KVM wirtual şekil dörediň

Şablon döretmezden ozal, ilki bilen gurnama mysaly bolmaly. Buýruk setirinde, görkezilişi ýaly qemu-img buýrugyny ulanyp, 20G CentOS 8 KVM şekil dörederis.

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

Ondan soň, görkezilişi ýaly CentOS 8 wirtual maşyny döretmek üçin virt-install buýrugyny ulanyň.

$ 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

Bu wirtual maşyn mysalyny işe girizýär. Muny virt-manager-e geçip, görkezilişi ýaly konsol penjiresini açyp tassyklap bilersiňiz. Görüp bilýän zadyňyz, gurnaýjy üçin deslapky hoş geldiňiz sahypasy. Gurluşy iň soňuna çenli tamamlamagy unutmaň.

3-nji ädim: KVM wirtual maşyn şablon şekilini döretmek

Gurmak gutaransoň, VM-e giriň we ulgam paketleriniň hemmesini täzeläň.

$ sudo dnf update

Başlamak üçin zerur hasaplaýan deslapky paketleri guruň. Bu ýagdaýda men elimden gelerin. Bu siziň ýagdaýyňyz üçin başgaça bolup biler.

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

Şablonyňyzy bulut platformasynda ýerleşdirmek isleseňiz, bulut-init paketlerini görkezilişi ýaly guruň.

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

Ondan soň, nolokonf ýoluny öçüriň.

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

Doneerine ýetirilenden soň, wirtual enjamyňyzy öçüriň we VM şablon şekilini görkezilişi ýaly arassalaň.

$ sudo virt-sysprep -d centos8

Virt-sysprep, klonlaryň ýasalmagy üçin wirtual maşyny täzeden düzýän buýruk setiri. SSH host açarlary, gündelik faýllar, ulanyjy hasaplary we käbir yzygiderli tor konfigurasiýalary ýaly ýazgylary aýyrýar. Buýrugy ulanmak üçin ilki bilen VM-iň öçürilendigine göz ýetirmeli.

$ sudo virt-sysprep -d centos8

Ahyrynda, VM domenini kesgitlemek üçin görkezilen buýrugy çagyryň.

$ sudo virsh undefine centos8

Şablon şekili indi klonlaşdyrmaga we ýerleşdirmäge taýýar.