De volledige vorm van KVM is Kernel Virtual Machine. Het is de virtualisatie oplossing voor Linux. KVM is een Linux kernel module die de Linux kernel in staat stelt om op te treden als een hypervisor programma zoals VMware ESXi of VSphere.

In dit artikel ga ik je laten zien hoe je KVM installeert op Ubuntu 20.04 LTS en er een eenvoudige KVM virtuele machine mee maakt. Dus, laten we aan de slag gaan.

Hardwarevirtualisatie inschakelen:

U moet de hardwarevirtualisatie-extensie inschakelen vanuit het BIOS van uw computer om KVM te laten werken. Voor Intel-processors moet u de processorfunctie VT-x of VT-d inschakelen vanuit het BIOS. Voor AMD-processors moet u de processorfunctie AMD-v inschakelen vanuit het BIOS.

Wanneer u hardwarevirtualisatie hebt ingeschakeld in het BIOS, voert u de volgende opdracht uit om te controleren of VT-x/VT-d- of AMD-v-extensie is ingeschakeld.

$ grep –color –perl-regexp ‘vmx|svm’ /proc/cpuinfo

U zou de vlag svm of vmx beschikbaar moeten hebben in de uitvoer als u hardwarevirtualisatie hebt ingeschakeld in het BIOS.

Ik gebruik een AMD-processor. Dus, de svm vlag is beschikbaar in mijn geval. Als u een Intel processor gebruikt, dan zal het vmx zijn.

Het systeem upgraden:

Voordat u KVM installeert, dient u de softwarepakketten van uw Ubuntu 20.04 LTS te upgraden.

Voreerst dient u de APT pakket repository cache van Ubuntu 20.04 LTS bij te werken met het volgende commando:

Voordat u KVM installeert, dient u eerst de APT pakket repository cache van Ubuntu 20.04 LTS bij te werken.04 LTS met het volgende commando:

De APT package repository cache van Ubuntu 20.04 LTS moet worden bijgewerkt.

Zoals u kunt zien, zijn alle pakketten van mijn Ubuntu 20.04 LTS machine al up to date. Ik hoef dus niets te doen.

Als u updates beschikbaar hebt, kunt u die toepassen met het volgende commando:

$ sudo apt upgrade

Druk vervolgens op Y en druk vervolgens op <Enter> om de installatie te bevestigen.

Als de updates zijn geïnstalleerd, start u uw computer opnieuw op met het volgende commando:

$ sudo reboot

Installatie van KVM:

KVM-pakketten zijn beschikbaar in de officiële pakketrepository van Ubuntu 20.04 LTS.

U kunt KVM installeren op uw Ubuntu 20.04 LTS met het volgende commando:

$ sudo apt install qemu qemu-kvm qemu-system qemu-utils

Om de installatie te bevestigen, drukt u op Y en vervolgens op <Enter>.

De APT package manager zou alle benodigde pakketten van het internet moeten downloaden.

Als de pakketten zijn gedownload, installeert de APT package manager ze.

Op dit punt zou KVM geïnstalleerd moeten zijn.

LibVirt installeren:

LibVirt is een hulpmiddel voor het maken en beheren van virtuele KVM-machines en het configureren van KVM. Het is een onmisbaar gereedschap voor virtualisatie met KVM.

LibVirt is beschikbaar in de officiële pakketrepository van Ubuntu 20.04 LTS.

Om LibVirt te installeren, voert u het volgende commando uit:

$ sudo apt install libvirt-clients libvirt-daemon-system virtinst

Om de installatie te bevestigen, drukt u op Y en vervolgens op <Enter>.

De APT-pakketbeheerder moet alle vereiste pakketten van het internet downloaden en installeren.

LibVirt moet op dit punt zijn geïnstalleerd.

Nadat LibVirt is geïnstalleerd, voegt u uw aanmeldingsgebruiker toe aan de libvirt-groep met het volgende commando:

$ sudo usermod -aG libvirt $(whoami)

Start vervolgens uw computer opnieuw op met het volgende commando om de wijzigingen van kracht te laten worden.

$ sudo reboot

Zodra uw computer is opgestart, voert u het volgende commando uit om te bevestigen dat LibVirt werkt.

$ virsh –version

Het commando moet het versienummer van LibVirt teruggeven. In mijn geval is dat 6.0.0.

Verplichte KVM-directories instellen:

Ik denk dat het een goed idee is om alle gegevens van de virtuele machine georganiseerd te houden. Ik bewaar meestal alle KVM virtuele machine gegevens in de /kvm/ directory. In de /kvm/ directory, maak ik 2 subdirectories disk/ en iso/. In de disk/ subdirectory bewaar ik alle harde schijf bestanden van de virtuele machine (VM). In de iso/ submap bewaar ik de ISO installatie images van verschillende besturingssystemen (b.v. Ubuntu, Debian, CentOS, etc.).

Je kunt dezelfde directory structuren maken met het volgende commando:

$ sudo mkdir -pv /kvm/{disk,iso}

Een KVM virtuele machine maken:

In dit gedeelte ga ik u laten zien hoe u een Ubuntu Server 20.04 LTS KVM virtuele machine maakt.

U moet eerst het Ubuntu Server 20.04 LTS ISO installatie image downloaden. Om alle bestanden/gegevens van de virtuele machine overzichtelijk te houden, is het een goed idee om de ISO image op te slaan in de /kvm/iso/ directory.

Navigeer dus naar de /kvm/iso/ directory met het volgende commando:

$ cd /kvm/iso

U kunt de Ubuntu Server 20.04 LTS ISO image van de officiële website van Ubuntu met het volgende commando:

$ sudo wget https://releases.ubuntu.com/20.04/ubuntu-20.04.1-live-server-amd64.iso

wget zou moeten beginnen met het downloaden van de Ubuntu Server 20.04 LTS ISO image. Het zal een tijdje duren voordat dit voltooid is.

Wanneer het Ubuntu Server 20.04 LTS ISO-image gedownload is, kunt u een virtuele KVM-machine maken met het volgende commando:

$ virt-install –name server-01 \
–os-type linux \
–os-variant ubuntu20.04 \5620>–ram 1024 \5620>–schijf /kvm/disk/server-01.img,device=schijf,bus=virtio,size=10,format=qcow2 \5620>–grafiek vnc,listen=0.0.0.0 \5620>–noautoconsole \5620>–hvm \5620>–cdrom /kvm/iso/ubuntu-20.04.1-live-server-amd64.iso \
–boot cdrom,hd

Hier zal de naam van de virtuele machine server-01 zijn.

Het besturingssysteem dat we zullen installeren is linux.

De variant van het besturingssysteem is ubuntu20.04 (Ubuntu 20.04 LTS).

De waarden van het OS-type en de OS-variant zijn niet willekeurig. U kunt het OS type en de OS variant voor uw gewenste Linux distributie vinden met het osinfo-query commando. Zoals u kunt zien, is voor Ubuntu 20.04 LTS het OS-type in linux en de OS-variant is ubuntu20.04.

$ osinfo-query os –fields=name,short-id,family | grep -i Ubuntu

Als u geen osinfo-query commando op uw computer beschikbaar heeft, kunt u het met het volgende commando installeren:

$ sudo apt install libosinfo-bin

Het RAM (Random Access Memory) van de VM zal 1024 MB (Megabytes) zijn.

De virtuele schijf van de VM wordt opgeslagen in het bestand /kvm/disk/server-01.img. De virtuele schijf is ongeveer 10 GB groot, en het formaat is QCOW2 (QEMU Copy-On-Write v2)

De virtuele machine is toegankelijk via het VNC (Virtual Network Computing) remote desktop protocol, en de VNC server luistert op alle beschikbare netwerk interfaces die zijn geconfigureerd op uw Ubuntu 20.04 LTS KVM host.

Ubuntu 20.04 LTS KVM host zal niet automatisch proberen verbinding te maken met de virtuele machine zodra de virtuele machine is aangemaakt. De virtuele machine zal op de achtergrond blijven draaien.

Gebruik volledige virtualisatie voor de virtuele machine. Hierdoor zullen virtuele machines beter presteren.

Gebruik de Ubuntu Server 20.04 LTS ISO image die we zojuist hebben gedownload als de virtuele CD/DVD ROM van de virtuele machine en gebruik deze voor de installatie van Ubuntu Server 20.04 LTS op de virtuele machine.

Stelt de opstartvolgorde van de virtuele machine in. De eerste boot entry is de virtuele CD/DVD ROM en dan de virtuele harde schijf. De virtuele machine kan dus opstarten vanaf de Ubuntu Server 20.04 LTS ISO-image en Ubuntu Server 20.04 LTS op de harde schijf installeren.

Dit zijn in principe alle opties die u nodig hebt om een KVM virtuele machine te maken.

Als u het virt-install commando uitvoert, zou KVM moeten beginnen met het maken van de virtuele machine. Dit kan even duren, afhankelijk van uw virtuele machineconfiguratie.

Op dit punt zou de KVM virtuele machine moeten zijn gemaakt.

Vertellen van KVM virtuele machines:

Nadat de KVM virtuele machine is aangemaakt, kunt u deze oplijsten met het volgende commando:

$ virsh list –all

Het commando zou u alle KVM virtuele machines moeten laten zien die u heeft. Op dit moment heb ik slechts 1 virtuele machine server-01. Dit is degene die ik net heb aangemaakt. Zoals je kunt zien, draait de virtuele machine server-01. Je zou er verbinding mee moeten kunnen maken met elke VNC client.

Verbinding maken met KVM virtuele machines op afstand met VNC:

In dit gedeelte ga ik je laten zien hoe je op afstand verbinding kunt maken met je KVM virtuele machine met VNC.

U kunt het VNC poort nummer van de KVM virtuele machine server-01 vinden met het volgende commando:

$ virsh vncdisplay server-01

Zoals u kunt zien, is het VNC poort nummer van de server-01 virtuele machine 0.

Hier, poort 0 betekent poort 5900. Op dezelfde manier betekent poort 1 poort 5901 enzovoort.

Nu kunt u het IP-adres van uw Ubuntu 20.04 LTS KVM host vinden met het volgende commando:

$ ip a

In mijn geval is het IP-adres 192.168.20.131. Het zal voor jou anders zijn. Vervang het dus vanaf nu door het uwe.

Open een willekeurige VNC client en maak verbinding met het adres 192.168.20.131:0.

Klik op Doorgaan.

U zou verbonden moeten zijn met het scherm van de virtuele machine server-01 KVM, zoals u kunt zien in de schermafbeelding hieronder.

Nu kunt u het gewenste besturingssysteem op de virtuele machine installeren.

In mijn geval installeer ik het besturingssysteem Ubuntu Server 20.04 LTS op de virtuele machine.

Ubuntu Server 20.04 LTS is op dit punt op de virtuele machine geïnstalleerd. Laten we de virtuele machine opnieuw opstarten.

Druk op <Enter> wanneer u deze melding ziet.

De virtuele machine server-01 KVM zou automatisch moeten worden uitgeschakeld, zoals u in de onderstaande schermafbeelding kunt zien.

$ virsh list –all

Start de server-01 KVM virtuele machine met het volgende commando:

$ virsh start server-01

De virtuele machine server-01 zou moeten worden opgestart.

Nu kunt u verbinding maken met de virtuele machine server-01 vanaf een VNC client zoals voorheen. Zoals u kunt zien, wordt het inlogscherm van Ubuntu Server 20.04 LTS weergegeven.

U kunt inloggen en elke opdracht uitvoeren die u maar wilt.

Verwijderen van KVM virtuele machines:

U kunt een KVM virtuele machine ook heel gemakkelijk verwijderen met LibVirt.

Zoals u kunt zien, heb ik 2 KVM virtuele machines (server-01 en server-02) draaien op mijn Ubuntu 20.04 LTS KVM host. Laten we server-02 KVM virtuele machine verwijderen.

$ virsh list –all

Zoals je kunt zien, draait de server-02 KVM virtuele machine. U moet deze stoppen voordat u deze verwijdert.

$ virsh list –all

Om de server-02 KVM virtuele machine geforceerd te stoppen, voert u het volgende commando uit:

$ virsh destroy server-02

Zoals u kunt zien, is de server-02 virtuele machine uitgeschakeld.

$ virsh list –all

U kunt de virtuele machine server-02 en al zijn aangesloten virtuele harde schijven permanent verwijderen met het volgende commando:

$ virsh undefine –remove-all-storage server-02

Zoals u kunt zien, is de virtuele machine server-02 niet langer beschikbaar.

$ virsh list –all

Issue#1: Fixing cpu->kvm_msr_buf->nmsrs Assertion Error

Tijdens het aanmaken van een KVM virtuele machine op Ubuntu 20.04 LTS, kunt u de volgende foutmelding te zien krijgen. Het is een kernel bug. Meestal gebeurt dit wanneer u KVM draait in een andere virtuele machine. Ik draai KVM in een VMware virtuele machine. Daarom kreeg ik deze foutmelding, geloof ik. Het is eenvoudig op te lossen.

Maak een nieuw bestand /etc/modprobe.d/qemu-system-x86.conf met het volgende commando:

$ sudo nano /etc/modprobe.d/qemu-system-x86.conf

Voeg de volgende regels toe in het bestand als u een AMD-processor gebruikt.

options kvm_amd nested=1 enable_apicv=n
options kvm ignore_msrs=1

Voeg de volgende regels toe in het bestand als u een Intel-processor gebruikt.

options kvm_intel nested=1 enable_apicv=n
options kvm ignore_msrs=1

Als u klaar bent, drukt u op <Ctrl> + X gevolgd door Y en <Enter> om het bestand /etc/modprobe.d/qemu-system-x86.conf bestand op te slaan.

Restart vervolgens uw computer met het volgende commando om de wijzigingen van kracht te laten worden.

$ sudo reboot

Uw probleem zou opgelost moeten zijn.

Conclusie:

In dit artikel heb ik u laten zien hoe u KVM op Ubuntu 20.04 LTS kunt installeren en KVM virtuele machines kunt maken met LibVirt. Ik heb u ook laten zien hoe u KVM virtuele machines kunt verwijderen. Dit zou u moeten helpen om aan de slag te gaan met Linux KVM virtualisatie.

admin

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.

lg