Kako kreirati virtuelne mašine u Linuxu koristeći KVM (virtuelnu mašinu zasnovanu na kernelu) - 1. deo


Ovaj vodič govori o uvodu, implementaciji KVM-a i kako ga koristiti za kreiranje virtuelnih mašina pod distribucijama baziranim na RedHat-u kao što su RHEL/CentOS7 i Fedora 21 .

Šta je KVM?

KVM ili (virtuelna mašina zasnovana na kernelu) je potpuno rešenje za virtuelizaciju za Linux na Intel 64 i AMD 64 hardveru koje je uključeno u glavni Linux kernel od 2.6.20 i stabilno je i brzo za većinu radnih opterećenja.

KVM Feautres

Postoje mnoge korisne karakteristike i prednosti koje ćete dobiti kada koristite KVM za implementaciju vaše virtuelne platforme. KVM hipervizor podržava sljedeće karakteristike:

  1. Preterivanje : Što znači dodijeliti više virtueliziranih CPU-a ili memorije od raspoloživih resursa na sistemu.
  2. Tinka provizija : koja omogućava dodjelu fleksibilne memorije i optimizira raspoloživi prostor za svaku gostujuću virtuelnu mašinu.
  3. Disk I/O throttling : Pruža mogućnost postavljanja ograničenja na disk I/O zahtjeve koji se šalju sa virtuelnih mašina na host mašinu.
  4. Automatsko NUMA balansiranje : Poboljšava performanse aplikacija koje rade na NUMA hardverskim sistemima.
  5. Mogućnost vrućeg dodavanja virtuelnog procesora : Pruža mogućnost povećanja procesorske snage po potrebi na virtuelnim mašinama koje rade, bez zastoja.

Ovo je naša prva serija KVM (virtuelna mašina zasnovana na kernelu) koja je u toku, ovde ćemo pokriti sledeće članke delimično.

Preduvjeti

Uverite se da vaš sistem ima proširenja za virtuelizaciju hardvera: Za hostove zasnovane na Intelu, proverite da li je proširenje virtuelizacije CPU-a [vmx] dostupno pomoću sledeće komande.

[root@server ~]# grep -e 'vmx' /proc/cpuinfo

Za hostove bazirane na AMD-u, provjerite da li je proširena virtuelizacija CPU-a [svm] dostupna.

[root@server ~]# grep -e 'svm' /proc/cpuinfo

Ako nema izlaza, uvjerite se da su proširenja virtuelizacije omogućena u BIOS-u. Provjerite da li su KVM moduli učitani u kernel “trebalo bi biti učitano po defaultu”.

[root@server ~]# lsmod | grep kvm

Izlaz bi trebao sadržavati kvm_intel za hostove zasnovane na intel-u ili kvm_amd za hostove zasnovane na amd-u.

Prije pokretanja, trebat će vam root račun ili nekorijenski korisnik sa sudo privilegijama konfiguriranim na vašem sistemu i također se uvjerite da je vaš sistem ažuran.

[root@server ~]# yum update

Uvjerite se da je Selinux u režimu dopuštenja.

[root@server ~]# setenforce 0

Korak 1: KVM instalacija i implementacija

1. Prvo ćemo instalirati pakete qemu-kvm i qemu-img. Ovi paketi pružaju KVM na korisničkom nivou i upravitelj slika diska.

[root@server ~]# yum install qemu-kvm qemu-img

2. Sada imate minimalni zahtjev za implementaciju virtuelne platforme na svom hostu, ali mi još uvijek imamo korisne alate za administraciju naše platforme kao što su:

  1. virt-manager pruža GUI alat za administraciju vaših virtuelnih mašina.
  2. libvirt-client pruža CL alat za administraciju vašeg virtuelnog okruženja ovaj alat koji se zove virsh.
  3. virt-install pruža naredbu “virt-install” za kreiranje vaših virtuelnih mašina iz CLI.
  4. libvirt obezbeđuje biblioteke na strani servera i domaćina za interakciju sa hipervizorima i host sistemima.

Instalirajmo ove gore navedene alate koristeći sljedeću naredbu.

[root@server ~]# yum install virt-manager libvirt libvirt-python libvirt-client 

3. Za korisnike RHEL/CentOS7, također i dalje imaju dodatne grupe paketa kao što su: Virtualization Client, Virtualization Platform i Virtualization Tools za instalaciju.

[root@server ~]#yum groupinstall virtualization-client virtualization-platform virtualization-tools	

4. Virtualizacijski daemon koji upravlja cijelom platformom je “libvirtd”. hajde da ga restartujemo.

[root@server ~]#systemctl restart libvirtd

5. Nakon ponovnog pokretanja demona, provjerite njegov status pokretanjem sljedeće naredbe.

[root@server ~]#systemctl status libvirtd  
Sample Output
libvirtd.service - Virtualization daemon 
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled) 
   Active: active (running) since Mon 2014-12-29 15:48:46 EET; 14s ago 
 Main PID: 25701 (libvirtd) 

Sada, pređimo na sljedeći odjeljak da kreiramo naše virtuelne mašine.

Korak 2: Kreirajte VM koristeći KVM

Kao što smo ranije spomenuli, imamo neke korisne alate za upravljanje našom virtuelnom platformom i kreiranje virtuelnih mašina. Jedan od ovih alata se zove [virt-manager] koji koristimo u sljedećem odjeljku.

6. Iako je virt-manager alat baziran na GUI-u, također bismo ga mogli pokrenuti/pokrenuti sa terminala kao i iz GUI-ja.

[root@server ~]#virt-manager
Korištenje GNOME-a

Koristeći GNOME Classic

7. Nakon pokretanja alata, ovaj prozor će se pojaviti.

8. Podrazumevano ćete pronaći da je menadžer direktno povezan na localhost, na sreću možete koristiti isti alat za daljinsko upravljanje drugim hostom. Na kartici “Datoteka ” samo odaberite “Dodaj vezu” i ovaj prozor će se pojaviti.

Označite opciju “Poveži se na udaljeni host ”, a zatim unesite Hostname/IP udaljenog servera. Ako trebate uspostaviti vezu sa udaljenim hostom svaki put kada se menadžer pokreće, samo označite opciju “Auto Connect”.

9. Vratimo se na naš lokalni host, prije kreiranja nove virtuelne mašine treba da odlučite gde će fajlovi biti pohranjeni?! drugim riječima, trebali biste kreirati Volume Disk (Virtualni disk/slika diska) za vašu virtuelnu mašinu.

Desnim klikom na localhost i odabirom “Detalji ” a zatim odaberite karticu “Skladište”.

10. Zatim pritisnite dugme “Novi volumen ”, zatim unesite naziv vašeg novog virtuelnog diska (Volume Disk) i unesite veličinu koju koji želite/trebate u odjeljku “Maksimalni kapacitet ”.

Veličina dodjele je stvarna veličina vašeg diska koja će biti dodijeljena odmah s vašeg fizičkog diska nakon završetka koraka.

Napomena: Ovo je važna tehnologija u oblasti administracije skladištenja koja se naziva “tanka odredba”. Nekada je dodijelio samo korištenu veličinu pohrane, a NE sve dostupne veličine.

Na primjer, kreirali ste virtualni disk veličine 60G, ali ste zapravo koristili samo 20G, koristeći ovu tehnologiju dodijeljena veličina sa vašeg fizičkog tvrdog diska će biti 20G ne 60G.

Drugim riječima, dodijeljena fizička veličina će se dinamički dodijeliti ovisno o stvarno korištenoj veličini. Više detalja možete pronaći na VMWare vStorage Thin Provisioning.

11. Primijetit ćete da se oznaka novog Volume Disk pojavila na listi.

Također biste trebali primijetiti putanju nove slike diska (Volume Disk), po defaultu će biti pod /var/lib/libvirt/images, možete je provjeriti pomoću sljedeće naredbe.

[root@server Downloads]# ls -l /var/lib/libvirt/images
-rw-------. 1 root root 10737418240 Jan  3 16:47 vm1Storage.img

12. Sada smo spremni za kreiranje naše virtuelne mašine. Hajde da pritisnemo dugme “VM” u glavnom prozoru, pojaviće se ovaj prozor čarobnjaka.

Izaberite metod instalacije koji ćete koristiti za kreiranje virtuelne mašine. Za sada ćemo koristiti lokalne instalacijske medije, kasnije ćemo razgovarati o preostalim metodama.

13. Sada je vrijeme da odredimo koji lokalni instalacioni medij će se koristiti, imamo dvije opcije:

  1. Sa fizičkog [CDROM/DVD].
  2. Iz ISO slike.

Za naš vodič, koristimo metodu ISO slike, tako da treba da navedete putanju vaše ISO slike.

Važno: Nažalost, postoji zaista glupa greška za koju koristite RHEL/CentOS7. Ova greška vas sprečava da instalirate koristeći fizički [CDROM/DVD], vidjet ćete da je opcija siva ovako.

A ako držite kursor na njemu, pojavit će se ova poruka o grešci.

Do sada ne postoji zvanično/direktno rješenje za ovu grešku, više informacija o istom možete pronaći na https://bugzilla.redhat.com.

14. Pohrana se vratila, koristit ćemo virtuelni disk koji smo ranije kreirali da instaliramo virtuelnu mašinu na njega. Biće kao što je prikazano.

15. Posljednji korak koji vas pita za ime vaše virtuelne mašine i druge napredne opcije omogućava razgovor o tome kasnije.

Ako želite promijeniti neku konfiguraciju ili izvršiti neke prilagodbe samo provjerite opciju “Prilagodi konfiguraciju prije instalacije”. Zatim kliknite završi i pričekajte nekoliko sekundi, pojavit će se kontrolna konzola za vaš gost OS da njime upravlja

Zaključak

Sada ste naučili šta je KVM, kako da upravljate svojom virtuelnom platformom koristeći GUI alate, kako da implementirate virtuelnu mašinu koristeći je i druge sjajne stvari.

Iako ovo nije kraj članka, u našim nadolazećim člancima raspravljat ćemo o drugim važnim temama koje se odnose na KVM. Uprljajte ruke koristeći prethodno znanje i budite spremni za sljedeći dio....