Kernel-pohjainen virtuaalikone (lyhyesti KVM) on avoimen lähdekoodin ja de facto standardoitu virtualisointiratkaisu, joka on integroitu tiukasti Linuxiin. Se on ladattava ytimen moduuli, joka muuttaa Linuxin tyypin 1 (bare-metal) hypervisoriksi, joka luo virtuaalisen käyttöalustan, jota käytetään virtuaalikoneiden (VM) pyörittämiseen.
KVM:ssä kukin VM on Linux-prosessi, joka ajoitetaan ja jota ydin hallinnoi ja jolla on yksityinen virtualisoitu laitteisto (esim. prosessori, verkkokortti, levy jne.). Se tukee myös sisäkkäistä virtualisointia, mikä mahdollistaa VM:n käyttämisen toisen VM:n sisällä.
Joitakin sen tärkeimpiä ominaisuuksia ovat muun muassa tuki useille Linuxin tukemille laitteistoalustoille (x86-laitteisto, jossa on virtualisointilaajennuksia (Intel VT tai AMD-V)), se tarjoaa parannetun VM:n tietoturvan ja eristämisen käyttämällä sekä SELinuxia että suojattua virtualisointia (sVirt), se periytyy ytimen muistinhallintaominaisuuksista ja se tukee sekä offline- että reaaliaikaista migraatiota (käynnissäolevan VM:n migraation siirto fyysisten isäntäkoneiden välillä).
Tässä artikkelissa opit asentamaan KVM-virtualisoinnin, luomaan ja hallitsemaan virtuaalikoneita CentOS 8- ja RHEL 8 Linuxissa.
Edellytykset
- Tuore CentOS 8 -palvelimen asennus
- Tuore RHEL 8 -palvelimen asennus
- RedHat-tilaus käytössä RHEL 8 -palvelimella
Varmista lisäksi, että laitteistoalustasi tukee virtualisointia suorittamalla seuraava komento.
# grep -e 'vmx' /proc/cpuinfo#Intel systems# grep -e 'svm' /proc/cpuinfo#AMD systems
Varmista myös, että KVM-moduulit on ladattu ytimeen (niiden pitäisi olla oletuksena).
# lsmod | grep kvm
Tässä on esimerkkituloste testijärjestelmässä, joka on Intel-pohjainen:
Edellisessä KVM-oppaiden sarjassa näytimme, miten virtuaalikoneita luodaan Linuxissa KVM:n (Kernel-pohjainen virtuaalikone, Kernel-based Virtual Machine) avulla, jossa demonstroimme, miten VM:itä luodaan ja hallitaan virtuaalikoneiden virtuaalikonehallinnan GUI-työkalun avulla (joka RHEL 8:n dokumentaatio on nykyään poistunut käytöstä RHEL 8:n dokumentaatioesitteen mukaan). Tässä oppaassa otamme erilaisen lähestymistavan, käytämme Cockpit-verkkokonsolia.
Vaihe 1: Cockpit-verkkokonsolin asennus CentOS 8 -käyttöjärjestelmässä
1. Ota käyttöön Cockpit-verkkokonsoli. Cockpit on helppokäyttöinen, integroitu ja laajennettava web-pohjainen käyttöliittymä Linux-palvelimen hallintaan web-selaimella. Sen avulla voit suorittaa järjestelmätehtäviä, kuten verkkojen konfigurointia, tallennustilan hallintaa, VM:ien luomista ja lokien tarkastelua hiirellä. Se käyttää järjestelmän normaaleja käyttäjätunnuksia ja -oikeuksia, mutta myös muita todennusmenetelmiä tuetaan.
Se on esiasennettuna ja käytössä juuri asennetussa CentOS 8- ja RHEL 8 -järjestelmässä, jos sitä ei ole asennettu, asenna se seuraavalla dnf-komennolla. Cockpit-machines-laajennus on asennettava, jotta voit hallita Libvirtiin perustuvia VM:iä.
# dnf install cockpit cockpit-machines
2. Kun paketin asennus on valmis, käynnistä cockpit-socket, ota käyttöön sen automaattinen käynnistys järjestelmän käynnistyessä ja tarkista sen tila varmistaaksesi, että se on toiminnassa.
# systemctl start cockpit.socket# systemctl enable cockpit.socket# systemctl status cockpit.socket
3. Tarkista Cockpit Status
. Lisää seuraavaksi ohjaamopalvelu järjestelmän palomuuriin, joka on oletusarvoisesti käytössä, komennolla firewall-cmd ja lataa palomuurin kokoonpano uudelleen uusien muutosten soveltamiseksi.
# firewall-cmd --add-service=cockpit --permanent# firewall-cmd --reload
4. Päästäksesi käsiksi ohjaamon web-konsoliin avaa web-selain ja navigoi seuraavalla URL-osoitteella.
https://FQDN:9090/ORhttps://SERVER_IP:9090/
Ohjaamo käyttää itse allekirjoitettua varmentajaa ottaaksesi käyttöön HTTPS:n. Jatka yhteyden muodostamista yksinkertaisesti, kun selain antaa varoituksen. Käytä kirjautumissivulla palvelimen käyttäjätilin tunnuksia.
Vaihe 2: KVM-virtualisoinnin asentaminen CentOS 8
5. Valitse KVM-virtualisointi. Asenna seuraavaksi virtualisointimoduuli ja muut virtualisointipaketit seuraavasti. Virt-install-paketti tarjoaa työkalun virtuaalikoneiden asentamiseen komentorivikäyttöliittymästä, ja virt-vieweria käytetään virtuaalikoneiden tarkasteluun.
# dnf module install virt # dnf install virt-install virt-viewer
6. Valitse virtuaalikoneiden asennusohjelma. Suorita seuraavaksi komento virt-host-validate varmistaaksesi, että isäntäkone on asetettu käyttämään libvirt-hypervisor-ajureita.
# virt-host-validate
7. Käynnistä seuraavaksi libvirtd-daemon (libvirtd) ja ota se käyttöön niin, että se käynnistyy automaattisesti jokaisella käynnistyksellä. Tarkista sitten sen tila varmistaaksesi, että se on käynnissä.
# systemctl start libvirtd.service# systemctl enable libvirtd.service# systemctl status libvirtd.service
Vaihe 3: Verkkosillan (virtuaalisen verkkokytkimen) perustaminen Cockpitin kautta
8. Luo nyt verkkosilta (virtuaalinen verkkokytkin), jonka avulla virtuaalikoneet voidaan integroida samaan verkkoon kuin isäntä. Kun libvirtd-daemon käynnistetään, se aktivoi oletusarvoisesti virbr0-verkkoliitännän, joka edustaa NAT-tilassa toimivaa virtuaalista verkkokytkintä.
Tässä oppaassa luodaan siltaavassa tilassa oleva verkkoliitäntä nimeltä br0. Tämä mahdollistaa virtuaalikoneiden pääsyn isäntäverkkoihin.
Klikkaa ohjaamon pääkäyttöliittymästä Networking (Verkko) ja valitse sitten Add Bridge (Lisää silta), kuten seuraavassa kuvakaappauksessa näkyy.
9. Valitse sitten Add Bridge (Lisää silta). Kirjoita ponnahdusikkunasta sillan nimi ja valitse siltaorjat tai porttilaitteet (esim. enp2s0, joka edustaa Ethernet-liitäntää) seuraavan kuvakaappauksen osoittamalla tavalla. Napsauta sitten Apply (Käytä).
10. Kun katsot nyt Interfaces (Liitännät) -luetteloa, uuden verkkosillan pitäisi näkyä siellä, ja muutaman sekunnin kuluttua Ethernet-liitännän pitäisi poistua käytöstä (poistua käytöstä).
Vaihe 4: Virtuaalikoneiden luominen ja hallinta Cockpit-verkkokonsolin kautta
11. Napsauta Cockpit-pääkäyttöliittymästä Virtual Machines (Virtuaalikoneet) -vaihtoehtoa, kuten seuraavassa kuvakaappauksessa korostetaan. Napsauta Virtual Machines (Virtuaalikoneet) -sivulla Create VM (Luo VM) -painiketta.
12. Valitse Create VM. Näyttöön tulee ikkuna, jossa on vaihtoehtoja uuden VM:n luomiseen. Syötä Connection (yhteys), Name (esim. ubuntu18.04), Installation Source Type (testijärjestelmässä olemme tallentaneet ISO-kuvat storage poolin alle eli /var/lib/libvirt/images/), Installation Source (asennuslähde), Storage (tallennustila), Size (koko), Memory (muisti) kuten seuraavassa kuvassa näkyy. OS Vendor (käyttöjärjestelmän toimittaja) ja Operating System (käyttöjärjestelmä) pitäisi valita automaattisesti, kun Installation Source (asennuslähde) on syötetty.
Tarkista myös vaihtoehto, että VM käynnistetään välittömästi, ja napsauta sitten Create (Luo).
13. Kun olet napsauttanut edellisessä vaiheessa Create (Luo) -painiketta, VM:n pitäisi käynnistyä automaattisesti ja sen pitäisi käynnistyä käyttämällä annettua ISO-kuvaa. Jatka vieraan käyttöjärjestelmän asentamista (meidän tapauksessamme Ubuntu 18.04).
Jos napsautat VM:n Verkkoliitännät-painiketta, verkkolähteessä pitäisi näkyä juuri luotu siltaverkkoliitäntä.
Ja asennuksen aikana verkkoliitännän määrittämisvaiheessa pitäisi huomata, että VM:n Ethernet-liitäntä saa IP-osoitteen isäntäverkon DHCP-palvelimelta.
Huomaa, että sinun on asennettava OpenSSH-paketti, jotta voit käyttää vieraskäyttöjärjestelmää SSH:n kautta mistä tahansa isäntäverkon koneesta, kuten edellisessä kappaleessa kuvattiin.
14. Kun vieraskäyttöjärjestelmän asennus on valmis, käynnistä VM uudelleen, siirry sitten kohtaan Levyt ja irrota/poista cdrom-laite VM:n levyjen alta. Käynnistä VM sitten napsauttamalla Suorita.
15. Nyt kohdassa Konsolit voit kirjautua vieraskäyttöjärjestelmään käyttäen käyttäjätiliä, jonka olet luonut käyttöjärjestelmän asennuksen aikana.
Vaihe 5: Pääsy virtuaalikoneen vieraskäyttöjärjestelmään SSH:n välityksellä
16. Valitse ”Consoles”. Voit käyttää juuri asennettua vieraskäyttöjärjestelmää isäntäverkosta SSH:n kautta suorittamalla seuraavan komennon (korvaa 10.42.0.197 vieraan IP-osoitteella).
$ ssh [email protected]
17. Voit sammuttaa, käynnistää uudelleen tai poistaa VM:n napsauttamalla sitä VM-luettelosta ja käyttämällä sitten seuraavassa kuvakaappauksessa korostettuja painikkeita.
Tässä kaikki toistaiseksi! Tässä oppaassa olemme näyttäneet, miten KVM-virtualisointipaketteja asennetaan ja miten VM:iä luodaan ja hallitaan Cockpit-verkkokonsolin kautta. Lisätietoja on osoitteessa: Aloittaminen virtualisoinnista RHEL 8:ssa
.