Kako instalirati KVM na CentOS/RHEL 8


Virtuelna mašina zasnovana na kernelu (KVM ukratko) je open-source i de facto standardno rešenje za virtuelizaciju koje je čvrsto integrisano u Linux. To je modul kernela koji se može učitati i pretvara Linux u hipervizor tipa 1 (goli metal) koji stvara virtuelnu operativnu platformu koja se koristi za pokretanje virtuelnih mašina (VM).

Pod KVM, svaki VM je Linux proces koji je zakazan i kojim upravlja kernel i koji ima privatni virtuelizirani hardver (tj. CPU, mrežna kartica, disk, itd.). Takođe podržava ugniježđenu virtualizaciju, koja vam omogućava da pokrenete VM unutar drugog VM-a.

Neke od njegovih ključnih karakteristika uključuju podršku za širok spektar hardverskih platformi koje podržava Linux (x86 hardver sa ekstenzijama za virtuelizaciju (Intel VT ili AMD-V)), pruža poboljšanu VM sigurnost i izolaciju koristeći oba SELinux i bezbednu virtuelizaciju (sVirt), nasleđuje karakteristike upravljanja memorijom kernela i podržava migraciju van mreže i u realnom vremenu (migraciju pokrenute VM između fizičkih hostova).

U ovom članku ćete naučiti kako da instalirate KVM virtuelizaciju, kreirate i upravljate virtuelnim mašinama u CentOS 8 i RHEL 8 Linuxu.

Preduvjeti

  1. Nova instalacija CentOS 8 servera
  2. Nova instalacija RHEL 8 servera
  3. Omogućena je RedHat pretplata na RHEL 8 serveru

Dodatno, uvjerite se da vaša hardverska platforma podržava virtuelizaciju tako što ćete pokrenuti sljedeću naredbu.

grep -e 'vmx' /proc/cpuinfo		#Intel systems
grep -e 'svm' /proc/cpuinfo		#AMD systems

Takođe, potvrdite da su KVM moduli učitani u kernel (trebali bi biti, podrazumevano).

lsmod | grep kvm

Evo uzorka izlaza na test sistemu koji je zasnovan na Intelu:

U prethodnoj seriji KVM vodiča, pokazali smo kako da kreirate virtuelne mašine u Linuxu koristeći KVM (virtuelnu mašinu zasnovanu na kernelu) gde smo demonstrirali kako da kreirate i upravljate VM-ovima koristeći virt-manager GUI alat (koji je sada zastario prema RHEL 8 dokumentaciji). Za ovaj vodič koristit ćemo drugačiji pristup, koristit ćemo Cockpit web konzolu.

Korak 1: Postavite Cockpit Web Console na CentOS 8

1. Kokpit je jednostavan za korištenje, integriran i proširiv web baziran interfejs za administraciju Linux servera u web pretraživaču. Omogućava vam da obavljate sistemske zadatke kao što su konfiguriranje mreža, administriranje skladišta, kreiranje VM-a i provjera dnevnika pomoću miša. Koristi uobičajene korisničke prijave i privilegije vašeg sistema, ali su podržane i druge metode provjere autentičnosti.

Dolazi unaprijed instaliran i omogućen na svježe instaliranom sistemu CentOS 8 i RHEL 8, ako ga nemate instalirajte, instalirajte ga pomoću sljedeće dnf komande. Ekstenzija cockpit-machines bi trebala biti instalirana za upravljanje VM-ovima baziranim na Libvirt-u.

dnf install cockpit cockpit-machines

2. Kada je instalacija paketa završena, pokrenite cockpit socket, omogućite mu automatsko pokretanje pri pokretanju sistema i provjerite njegov status da potvrdite da je pokrenut i radi.

systemctl start cockpit.socket
systemctl enable cockpit.socket
systemctl status cockpit.socket

3. Zatim dodajte uslugu kokpit u zaštitni zid sistema koji je podrazumevano omogućen, koristeći komandu firewall-cmd i ponovo učitajte konfiguraciju zaštitnog zida da primenite nove promene.

firewall-cmd --add-service=cockpit --permanent
firewall-cmd --reload

4. Za pristup web konzoli kokpita, otvorite web pretraživač i koristite sljedeći URL za navigaciju.

https://FQDN:9090/
OR
https://SERVER_IP:9090/

kokpit koristi samopotpisani certifikat da omogući HTTPS, jednostavno nastavite sa vezom kada dobijete upozorenje od pretraživača. Na stranici za prijavu koristite akreditive vašeg korisničkog računa na serveru.

Korak 2: Instaliranje KVM virtuelizacije CentOS 8

5. Zatim instalirajte virtualizacijski modul i druge virtuelizacijske pakete kako slijedi. Paket virt-install pruža alat za instaliranje virtuelnih mašina iz interfejsa komandne linije, a virt-viewer se koristi za pregled virtuelnih mašina.

dnf module install virt 
dnf install virt-install virt-viewer

6. Zatim pokrenite naredbu virt-host-validate da provjerite da li je host mašina podešena za pokretanje libvirt drajvera hipervizora.

virt-host-validate

7. Zatim pokrenite libvirtd demon (libvirtd) i omogućite mu da se automatski pokreće pri svakom pokretanju. Zatim provjerite njegov status kako biste potvrdili da je pokrenut i radi.


systemctl start libvirtd.service
systemctl enable libvirtd.service
systemctl status libvirtd.service

Korak 3: Postavite mrežni most (virtuelni mrežni prekidač) preko kokpita

8. Sada kreirajte mrežni most (virtuelni mrežni prekidač) da integrišete virtuelne mašine u istu mrežu kao i host. Podrazumevano, kada se libvirtd demon pokrene, on aktivira podrazumevani mrežni interfejs virbr0 koji predstavlja virtuelni mrežni prekidač koji radi u NAT modu.

Za ovaj vodič kreirat ćemo mrežno sučelje u premošćenom načinu pod nazivom br0. Ovo će omogućiti da virtuelne mašine budu dostupne na host mrežama.

U glavnom interfejsu kokpita kliknite na Umrežavanje, zatim kliknite na Dodaj most kao što je prikazano na sljedećem snimku ekrana.

9. U iskačućem prozoru unesite naziv mosta i odaberite bridge slave ili portove (npr. enp2s0 koji predstavljaju Ethernet interfejs) kao što je prikazano na sljedećem snimku ekrana. Zatim kliknite Primijeni.

10. Sada kada pogledate listu Interfejsa, novi most bi se trebao pojaviti tamo i nakon nekoliko sekundi, Ethernet interfejs bi trebao biti onemogućen (uklonjen).

Korak 4: Kreiranje i upravljanje virtuelnim mašinama preko Cockpit Web konzole

11. Iz glavnog interfejsa kokpita kliknite na opciju Virtuelne mašine kao što je istaknuto na sledećem snimku ekrana. Na stranici Virtuelne mašine kliknite na Kreiraj VM.

12. Prikazaće se prozor sa opcijama za kreiranje nove VM. Unesite vezu, naziv (npr. ubuntu18.04), vrstu izvora instalacije (na testnom sistemu, pohranili smo ISO slike u spremište, tj. /var/lib/libvirt/ slike/), izvor instalacije, skladište, veličina, memorija kao što je prikazano na sljedećoj slici. Prodavač OS-a i operativni sistem bi trebali biti izabrani automatski nakon unosa izvora instalacije.

Također označite opciju da odmah pokrenete VM, a zatim kliknite na Kreiraj.

13. Nakon što kliknete na Kreiraj iz prethodnog koraka, VM bi trebao biti automatski pokrenut i trebao bi se pokrenuti koristeći priloženu ISO sliku. Nastavite sa instalacijom gostujućeg operativnog sistema (Ubuntu 18.04 u našem slučaju).

Ako kliknete na Mrežni interfejsi VM-a, mrežni izvor bi trebao naznačiti novokreirani mrežni interfejs za premošćivanje.

I tokom instalacije, u koraku konfiguracije mrežnog interfejsa, trebali biste biti u mogućnosti primijetiti da VMs Ethernet interfejs prima IP adresu od DHCP servera hosta mreže.

Imajte na umu da morate instalirati paket OpenSSH da biste pristupili gostujućem OS-u putem SSH-a sa bilo kojeg stroja na host mreži, kao što je opisano u posljednjem odjeljku.

14. Kada je instalacija gostujućeg OS-a završena, ponovo pokrenite VM, zatim idite na Diskovi i odvojite/uklonite cdrom uređaj ispod diskova VM-a . Zatim kliknite Pokreni da pokrenete VM.

15. Sada pod Konzole, možete se prijaviti na gostujući OS koristeći korisnički račun koji ste kreirali tokom instalacije OS-a.

Korak 5: Pristup gostujućem OS virtualne mašine putem SSH-a

16. Da pristupite novoinstaliranom gostujućem OS-u sa host mreže putem SSH-a, pokrenite sljedeću naredbu (zamijenite 10.42.0.197 IP adresom vašeg gosta).

ssh [email 

17. Da biste isključili, ponovo pokrenuli ili izbrisali VM, kliknite na njega sa liste VM-ova, a zatim koristite dugmad označena na sljedećem snimku ekrana.

To je sve za sada! U ovom vodiču pokazali smo kako instalirati KVM pakete za virtuelizaciju, te kreirati i upravljati VM-ovima putem web konzole kokpita. Za više detalja pogledajte: Početak rada s virtualizacijom u RHEL 8.