RHCSA sērija: Virtualizācijas un viesu administrēšanas pamati ar KVM - 15. daļa


Meklējot vārdu virtualizēt vārdnīcā, jūs atradīsit, ka tas nozīmē "izveidot kaut ko virtuālu (nevis faktisku) versiju". Skaitļošanā termins virtualizācija attiecas uz iespēju vienlaikus darbināt vairākas operētājsistēmas un izolēt vienu no otras virs tās pašas fiziskās (aparatūras) sistēmas, kas virtualizācijas shēmā ir zināma kā resursdators.

Izmantojot virtuālās mašīnas monitoru (pazīstams arī kā hipervizors), virtuālajām mašīnām (sauktas par viesiem) tiek nodrošināti virtuālie resursi (t.i., centrālais procesors, operatīvā atmiņa, atmiņa, tīkla saskarnes, lai minētu dažus) no pamatā esošās aparatūras.

Paturot to prātā, ir skaidrs, ka viena no galvenajām virtualizācijas priekšrocībām ir izmaksu ietaupījumi (aprīkojuma un tīkla infrastruktūrā un uzturēšanas ziņā) un būtisks fiziskās telpas samazinājums, kas nepieciešams visas nepieciešamās aparatūras ievietošanai.

Tā kā šajā īsajā pamācībā nevar aplūkot visas virtualizācijas metodes, iesakām skatīt sīkāku informāciju par tēmu kopsavilkumā uzskaitītajā dokumentācijā.

Lūdzu, ņemiet vērā, ka šis raksts ir paredzēts kā sākumpunkts virtualizācijas pamatu apgūšanai RHEL 7, izmantojot KVM (virtuālā mašīna uz kodola) ar komandrindas utilītprogrammām, nevis padziļinātu diskusiju par tēmu.

Aparatūras prasību pārbaude un pakotņu instalēšana

Lai iestatītu virtualizāciju, procesoram tas ir jāatbalsta. Pārbaudiet, vai jūsu sistēma atbilst prasībām, ar šādu komandu:

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

Nākamajā ekrānuzņēmumā mēs varam redzēt, ka pašreizējā sistēma (ar AMD mikroprocesoru) atbalsta virtualizāciju, kā norāda svm. Ja mums būtu Intel procesors, iepriekš minētās komandas rezultātos mēs redzētu vmx.

Turklāt jūsu resursdatora programmaparatūrā (BIOS vai UEFI) būs jāiespējo virtualizācijas iespējas.

Tagad instalējiet nepieciešamās paketes:

  1. qemu-kvm ir atvērtā koda virtualizētājs, kas nodrošina aparatūras atdarināšanu KVM hipervizoram, savukārt qemu-img nodrošina komandrindas rīku diska attēlu manipulēšanai.
  2. libvirt ietver rīkus mijiedarbībai ar operētājsistēmas virtualizācijas iespējām.
  3. libvirt-python satur moduli, kas ļauj Python rakstītām lietojumprogrammām izmantot libvirt nodrošināto saskarni.
  4. libguestfs-tools: dažādi sistēmas administratora komandrindas rīki virtuālajām mašīnām.
  5. virt-install: citas komandrindas utilītas virtuālās mašīnas administrēšanai.

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

Kad instalēšana ir pabeigta, pārliecinieties, ka esat startējis un iespējojis libvirtd pakalpojumu:

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

Pēc noklusējuma katra virtuālā mašīna varēs sazināties tikai ar pārējiem tajā pašā fiziskajā serverī un ar pašu resursdatoru. Lai ļautu viesiem piekļūt citām mašīnām mūsu LAN tīklā un arī internetā, mums mūsu saimniekdatorā ir jāiestata tilta saskarne (teiksim, piemēram, br0),

1. mūsu galvenajai NIC konfigurācijai pievienojiet šādu rindu (visticamāk, /etc/sysconfig/network-scripts/ifcfg-enp0s3 ):

BRIDGE=br0

2. izveidojot konfigurācijas failu br0 (/etc/sysconfig/network-scripts/ifcfg-br0 ) ar šo saturu (ņemiet vērā, ka, iespējams, būs jāmaina IP adrese, vārtejas adrese un DNS informācija ):

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. visbeidzot, iespējojot pakešu pārsūtīšanu, /etc/sysctl.conf

net.ipv4.ip_forward = 1

un ielādē izmaiņas pašreizējā kodola konfigurācijā:

# sysctl -p

Ņemiet vērā, ka, iespējams, jums būs jāpasaka arī firewalld, ka šāda veida datplūsma ir atļauta. Atcerieties, ka varat atsaukties uz rakstu par šo tēmu šajā pašā sērijā (11. daļa: Tīkla trafika vadība, izmantojot FirewallD un Iptables), ja jums nepieciešama palīdzība.