Kernel-gebaseerde virtuele machine (KVM kortom) is een open-source en de facto standaard virtualisatie-oplossing die nauw is geïntegreerd in Linux. Het is een laadbare kernelmodule die Linux verandert in een type-1 (bare-metal) hypervisor die een virtueel besturingsplatform creëert dat wordt gebruikt om virtuele machines (VM's) te laten draaien.
Onder KVM, elk VM is een Linux-proces dat wordt gepland en beheerd door de kernel en dat gevirtualiseerde privéhardware heeft (d.w.z. CPU, netwerkkaart, schijf, enz.). Het ondersteunt ook geneste virtualisatie, waarmee u een VM binnen een andere VM kunt draaien.
Enkele van de belangrijkste functies zijn ondersteuning voor een breed scala aan door Linux ondersteunde hardwareplatforms (x86-hardware) met virtualisatie-uitbreidingen (Intel VT of AMD-V)), biedt het verbeterde VM-beveiliging en isolatie met behulp van beide SELinux en veilige virtualisatie (sVirt), het erft kernelgeheugenbeheerfuncties en het ondersteunt zowel offline als realtime migratie (migratie van een draaiende VM tussen fysieke hosts).
In dit artikel leer je hoe te installeren KVM virtualisatie, maak en beheer virtuele machines in CentOS 8 en RHEL 8 Linux.
Zorg er bovendien voor dat uw hardwareplatform virtualisatie ondersteunt door de volgende opdracht uit te voeren.
# grep -e 'vmx' /proc/cpuinfo #Intel-systemen. # grep -e 'svm' /proc/cpuinfo #AMD-systemen.
Controleer ook of KVM-modules in de kernel zijn geladen (standaard zouden ze dat moeten zijn).
# lsmod | grep kvm.
Hier is voorbeelduitvoer op het testsysteem dat op Intel is gebaseerd:
In een eerdere serie KVM-gidsen toonden we: hoe virtuele machines in Linux te maken met KVM (Kernel-gebaseerde virtuele machine) waar we hebben laten zien hoe VM's kunnen worden gemaakt en beheerd met behulp van virt-manager GUI-tool (die nu is verouderd volgens de RHEL 8-documentatie). Voor deze gids zullen we een andere benadering kiezen, we zullen de Cockpit-webconsole.
1. De cockpit is een gebruiksvriendelijke, geïntegreerde en uitbreidbare webgebaseerde interface om een Linux-server in een webbrowser te beheren. Hiermee kunt u systeemtaken uitvoeren, zoals het configureren van netwerken, het beheren van opslag, het maken van VM's en het inspecteren van logboeken met een muis. Het gebruikt de normale gebruikersaanmeldingen en privileges van uw systeem, maar andere authenticatiemethoden worden ook ondersteund.
Het wordt voorgeïnstalleerd en ingeschakeld op vers geïnstalleerd CentOS 8 en RHEL 8 systeem, als je het nog niet hebt geïnstalleerd, installeer het dan als volgt: dnf commando. De cockpit-machines-extensie moet worden geïnstalleerd om VM's te beheren op basis van: Libvirt.
# dnf cockpit cockpit-machines installeren.
2. Wanneer de pakketinstallatie is voltooid, start u de cockpit-socket, schakelt u deze in om automatisch te starten bij het opstarten van het systeem en controleert u de status om te bevestigen dat deze actief is.
# systemctl start cockpit.socket. # systemctl schakel cockpit.socket in. # systemctl status cockpit.socket.
3. Voeg vervolgens de. toe cockpit service in de systeemfirewall die standaard is ingeschakeld, met behulp van de firewall-cmd commando en laad de firewallconfiguratie opnieuw om de nieuwe wijzigingen toe te passen.
# firewall-cmd --add-service=cockpit --permanent. # firewall-cmd --reload.
4. Om toegang te krijgen tot de cockpit-webconsole, opent u een webbrowser en gebruikt u de volgende URL om te navigeren.
https://FQDN: 9090/ OF. https://SERVER_IP: 9090/
De cockpit gebruikt een zelfondertekend certificaat om in te schakelen HTTPS, ga gewoon verder met de verbinding wanneer u een waarschuwing van de browser krijgt. Gebruik de inloggegevens van uw servergebruikersaccount op de inlogpagina.
5. Installeer vervolgens de virtualisatie module en andere virtualisatiepakketten als volgt. De virt-install pakket biedt een hulpmiddel voor het installeren van virtuele machines vanaf de opdrachtregelinterface, en a virtuele kijker wordt gebruikt om virtuele machines te bekijken.
# dnf module installeer virt # dnf installeer virt-installeer virt-viewer.
6. Voer vervolgens de. uit virt-host-valideren opdracht om te valideren of de hostmachine is ingesteld om te worden uitgevoerd libvirt hypervisor-stuurprogramma's.
# virt-host-valideren.
7. Start vervolgens de libvirtd daemon (libvirtd) en schakel het in om automatisch te starten bij elke keer opstarten. Controleer vervolgens de status om te bevestigen dat deze actief is.
# systemctl start libvirtd.service. # systemctl schakel libvirtd.service in. # systemctl-status libvirtd.service.
8. Maak nu een netwerkbrug (virtuele netwerkswitch) om virtuele machines te integreren in hetzelfde netwerk als de host. Standaard één keer libvirtd daemon is gestart, activeert het de standaard netwerkinterface virbr0 die de virtuele netwerkswitch vertegenwoordigt die werkt in NAT modus.
Voor deze handleiding zullen we een netwerkinterface maken in een overbrugde modus genaamd br0. Hierdoor kunnen virtuele machines toegankelijk zijn op de hostnetwerken.
Klik in de hoofdinterface van de cockpit op Netwerken, dan klikken Brug toevoegen zoals aangegeven in de volgende schermafbeelding.
9. Voer in het pop-upvenster de naam van de bridge in en selecteer de bridge-slaves of poortapparaten (bijv enp2s0 die de Ethernet-interface vertegenwoordigt), zoals weergegeven in de volgende schermafbeelding. Dan klikken Van toepassing zijn.
10. Als je nu naar de lijst met Interfaces, de nieuwe bridge zou daar moeten verschijnen en na een paar seconden zou de Ethernet-interface moeten worden uitgeschakeld (verwijderd).
11. Van de cockpit hoofdinterface, klik op de Virtuele machines optie zoals gemarkeerd in de volgende schermafbeelding. Van de Virtuele machines pagina, klik op VM maken.
12. Een venster met opties om een nieuwe. te maken VM zal weergeven. Voer de verbinding, naam (e, g ubuntu18.04), Type installatiebron (op het testsysteem hebben we ISO-images opgeslagen onder de opslagpool, d.w.z /var/lib/libvirt/images/), Installatiebron, Opslag, Grootte, Geheugen zoals weergegeven in de volgende afbeelding. De OS-leverancier en het besturingssysteem moeten automatisch worden gekozen na het invoeren van de installatiebron.
Vink ook de optie aan om direct de. te starten VM, dan klikken Creëren.
13. Na het klikken op Creëren van de vorige stap, de VM zou automatisch moeten worden gestart en het zou moeten opstarten met behulp van de meegeleverde ISO-image. Ga verder met het installeren van het gastbesturingssysteem (Ubuntu 18.04 in ons geval).
Als u klikt op Netwerk interfaces van de VM, moet de netwerkbron de nieuw gemaakte bridge-netwerkinterface aangeven.
En tijdens de installatie, bij de stap van het configureren van een netwerkinterface, zou u moeten kunnen opmerken dat de VM's Ethernet interface ontvangt een IP-adres van de DHCP server van het hostnetwerk.
Merk op dat u de OpenSSH pakket om toegang te krijgen tot het gast-besturingssysteem via SSH vanaf elke machine op het hostnetwerk, zoals beschreven in de laatste sectie.
14. Wanneer de installatie van het gast-besturingssysteem is voltooid, start u de VM, ga dan naar Schijven en ontkoppel/verwijder het cdrom-apparaat onder de VM-schijven. Dan klikken Loop om te beginnen VM.
15. Nu onder Consoles, kunt u zich aanmelden bij het gast-besturingssysteem met een gebruikersaccount dat u tijdens de installatie van het besturingssysteem hebt aangemaakt.
16. Om toegang te krijgen tot het nieuw geïnstalleerde gast-besturingssysteem vanaf het hostnetwerk via SSH, voert u de volgende opdracht uit (replace 10.42.0.197 met het IP-adres van uw gast).
$ ssh [e-mail beveiligd]
17. Om een VM af te sluiten, opnieuw op te starten of te verwijderen, klikt u erop in de lijst met: VM'sen gebruik vervolgens de knoppen die zijn gemarkeerd in de volgende schermafbeelding.
Dat is het voor nu! In deze handleiding hebben we laten zien hoe u KVM-virtualisatiepakketten installeert en VM's maakt en beheert via de cockpit-webconsole. Zie voor meer informatie: Aan de slag met virtualisatie in RHEL 8.