Serija RHCSA: Osnove virtualizacije in upravljanja gostov s KVM - 15. del


Če besedo virtualizirate poiščete v slovarju, boste ugotovili, da pomeni\"ustvariti navidezno (in ne dejansko) različico nečesa". Pri računalništvu se izraz virtualizacija nanaša na možnost zagnanja več operacijskih sistemov hkrati in ločeno drug od drugega, na vrhu istega fizičnega (strojnega) sistema, ki je v shemi za virtualizacijo znan kot gostitelj.

Z uporabo monitorja navideznega računalnika (znanega tudi kot hipervizor) se navideznim strojem (imenovanim tudi gostje) od osnovne strojne opreme zagotovijo navidezni viri (tj. CPU, RAM, pomnilnik, omrežni vmesniki).

Glede na to je jasno, da je ena glavnih prednosti virtualizacije prihranek stroškov (pri opremi in omrežni infrastrukturi ter v smislu vzdrževanja) in znatno zmanjšanje fizičnega prostora, potrebnega za namestitev vse potrebne strojne opreme.

Ker ta kratek priročnik ne more zajeti vseh načinov virtualizacije, vam priporočam, da se za podrobnejše informacije o tej temi obrnete na dokumentacijo, navedeno v povzetku.

Upoštevajte, da naj bi bil ta članek izhodišče za spoznavanje osnov virtualizacije v RHEL 7 z uporabo KVM (Virtual Machine na osnovi jedra) s pripomočki ukazne vrstice in ne poglobljena razprava o temi.

Preverjanje zahtev strojne opreme in nameščanje paketov

Če želite nastaviti virtualizacijo, jo mora podpirati vaš CPU. Ali vaš sistem izpolnjuje zahteve, lahko preverite z naslednjim ukazom:

# grep -E 'svm|vmx' /proc/cpuinfo

Na naslednjem posnetku zaslona lahko vidimo, da trenutni sistem (z mikroprocesorjem AMD) podpira virtualizacijo, kot kaže svm. Če bi imeli Intelov procesor, bi v rezultatih zgornjega ukaza namesto tega videli vmx.

Poleg tega boste morali v vdelani programski opremi gostitelja (BIOS ali UEFI) omogočiti možnosti za virtualizacijo.

Zdaj namestite potrebne pakete:

  1. qemu-kvm je odprtokodni virtualizator, ki zagotavlja strojno emulacijo hipervizorja KVM, qemu-img pa orodje ukazne vrstice za obdelavo slik diska.
  2. libvirt vključuje orodja za interakcijo z zmožnostmi virtualizacije operacijskega sistema.
  3. libvirt-python vsebuje modul, ki aplikacijam, napisanim v Pythonu, omogoča uporabo vmesnika, ki ga ponuja libvirt.
  4. libguestfs-tools: različna orodja za ukazno vrstico skrbnika sistema za navidezne stroje.
  5. virt-install: drugi pripomočki ukazne vrstice za upravljanje navideznih strojev.

# yum update && yum install qemu-kvm qemu-img libvirt libvirt-python libguestfs-tools virt-install

Ko se namestitev konča, zagotovo zaženite in omogočite storitev libvirtd:

# systemctl start libvirtd.service
# systemctl enable libvirtd.service

Privzeto bo lahko vsak navidezni stroj komuniciral samo z ostalimi v istem fizičnem strežniku in s samim gostiteljem. Če želite gostom omogočiti dostop do drugih strojev znotraj našega LAN-a in tudi interneta, moramo v našem gostitelju nastaviti mostni vmesnik (na primer br0, na primer),

1. v naslednjo glavno konfiguracijo NIC-a dodamo naslednjo vrstico (najverjetneje /etc/sysconfig/network-scripts/ifcfg-enp0s3 ):

BRIDGE=br0

2. izdelava konfiguracijske datoteke za br0 (/etc/sysconfig/network-scripts/ifcfg-br0 ) s to vsebino (upoštevajte, da boste morda morali spremeniti naslov IP, naslov prehoda in podatke DNS ):

DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.0.18
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
NM_CONTROLLED=no
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=br0
ONBOOT=yes
DNS1=8.8.8.8
DNS2=8.8.4.4

3. na koncu omogočite posredovanje paketov tako, da v /etc/sysctl.conf

net.ipv4.ip_forward = 1

in nalaganje sprememb trenutne konfiguracije jedra:

# sysctl -p

Upoštevajte, da boste morda morali požarnemu zidu sporočiti, da mora biti takšen promet dovoljen. Ne pozabite, da se lahko obrnete na članek na to temo v isti seriji (11. del: Nadzor omrežnega prometa z uporabo požarnega zidu in Iptables), če za to potrebujete pomoč.