Bent u geïnteresseerd in het virtualiseren van Linux-machines? Dan, KVM installeren (Kernel-gebaseerde virtuele machine) zal zeker nuttig voor je zijn. Deze snelle en beknopte handleiding bevat 2026 zal u instructies geven over de eenvoudigste methode voor KVM-installatie zonder extra handelingen en tijdverspilling. Of je nu een softwareontwikkelaar bent, beheerder, of gewoon iemand die geïnteresseerd is in virtualisatie, deze gids helpt u gemakkelijk alle fasen te doorlopen en de taak met succes te voltooien.

Hoe KVM te installeren?
Het is ook mogelijk om alleen QEMU en KVM te gebruiken voor een ultraminimale installatie, maar voor de meeste mensen, de behoefte aan libvirt is absoluut noodzakelijk bij het configureren en beheren van de virtualisatieprocessen (libvirt-daemon-systeem – libvirt, virt-manager – GUI-tool voor libvirt). Een typisch installatieproces omvat de installatie van het volgende:
$ sudo apt install qemu-system libvirt-daemon-system
Als u een server gebruikt voor uw installatie, dan moet je de –no-install-recommends apt-vlag tijdens de installatie, zodat onnodige grafische software niet wordt geïnstalleerd tijdens het installatieproces.
$ sudo apt install --no-install-recommends qemu-system libvirt-clients libvirt-daemon-system
WordPress-webhosting
Vanaf $ 3,99/maandelijks
Deze daemon wordt automatisch gestart wanneer het systeem opstart, en het zal ook automatisch de benodigde KVM-modules kvm-amd of kvm-intel modules laden, die beschikbaar zijn met de Debian Linux Kernel. Om met virtuele machines te werken via de opdrachtregelinterface, je moet virtinst installeren.
Om virtuele machines te besturen met een regulier gebruikersaccount, de gebruiker moet tot de libvirt-groep behoren:
# adduser <youruser> libvirt
Dan moet u uw domeinen kunnen vermelden – d.w.z., virtuele machines onder libvirt-beheer:
# virsh list --all
Gebruikers- en systeem-VM's
Typisch, als virsh wordt gelanceerd als een gewone gebruiker, het maakt gebruik van de qemu:///sessie-URI-string om een verbinding met libvirt tot stand te brengen. In this way, alleen VM's die geassocieerd zijn met de gebruiker die virsh draait, kunnen worden bestuurd. Om systeem-VM's te beheren (die VM's die eigendom zijn van root) we moeten virsh als root starten of de qemu specificeren:///systeem-URI voor onze verbinding:
Goedkope VPS-server
Vanaf $ 2,99/maandelijks
$ virsh --connect qemu:///system list --all
Als alternatief, in plaats van elke keer dat we een virsh-commando willen starten de URI op te geven, het kan worden gedefinieerd binnen de omgevingsvariabele LIBVIRT_DEFAULT_URI:
$ export LIBVIRT_DEFAULT_URI='qemu:///system'
Gast creatie
Een van de eenvoudigste methoden om een VM-gast te maken en te besturen is via een GUI-tool. Bijvoorbeeld:
- AQEMU Aqemu
- Virtual Machine Manager virt-manager
Anderzijds, men kan ervoor kiezen om een gast aan te maken vanaf de opdrachtregelinterface met behulp van virt-install. Het volgende is een voorbeeld van het aanmaken van een Bookworm-gast genaamd “boekenwurm-amd64”:
virt-install --virt-type kvm --name bookworm-amd64 \
--cdrom ~/iso/Debian/debian-12.0.0-amd64-netinst.iso \
--os-variant debian12 \
--disk size=10 --memory 1024
Windows VPS-hosting
Remote Access & Full Admin
Omdat uw gast op dit moment geen netwerkverbinding heeft, je zult de GUI virt-viewer moeten gebruiken om het installatieproces te voltooien.
Deze methode voorkomt de noodzaak om het ISO-bestand te downloaden door gebruik te maken van de –locatie vlag:
virt-install --virt-type kvm --name bookworm-amd64 \
--location https://deb.debian.org/debian/dists/bookworm/main/installer-amd64/ \
--os-variant debian12 \
--disk size=10 --memory 1024
Om uw systeem te installeren via de tekstconsole, je moet ervoor zorgen dat virt-install de seriële console gebruikt:
virt-install --virt-type kvm --name bookworm-amd64 \
--location https://deb.debian.org/debian/dists/bookworm/main/installer-amd64/ \
--os-variant debian12 \
--disk size=10 --memory 1024 \
--graphics none \
--console pty,target_type=serial \
--extra-args "console=ttyS0"
Voor een volledig geautomatiseerde installatie kijk je naar preseed of debootstrap.
Bridge-netwerkinstellingen
Standaard, QEMU gebruikt macvtap in VEPA-modus om NATted-toegang tot internet of een bridged-omgeving te bieden waar andere gasten aanwezig zijn. In this way, gasten hebben toegang tot internet (ervan uitgaande dat er een internetverbinding is op de hostmachine) maar zal niet zichtbaar of toegankelijk zijn vanaf de hostmachine of een andere machine die is aangesloten op het LAN van de host.
Standaardnetwerk geleverd door Libvirt
Het standaardnetwerk dat door Libvirt wordt geleverd, maakt communicatie mogelijk tussen de hostmachine en gastmachines. Het standaardnetwerk is een NATted bridged netwerk, bekend als “standaard.” Het standaardnetwerk is alleen beschikbaar voor de systeemdomein-VM's (dit betekent dat VM's draaien als de rootgebruiker of als de qemu:///systeemverbindings-URI). VM's die met het standaardnetwerk zijn verbonden, worden in de 192.168.122.1/24 bereik en worden voorzien van DHCP door dnsmasq. Het standaardnetwerk wordt niet automatisch gestart. Gebruik:
virsh --connect=qemu:///system net-start default
Om het standaardnetwerk zo in te stellen dat het automatisch wordt gestart, gebruik:
virsh --connect=qemu:///system net-autostart default
Om dit te laten werken, het is noodzakelijk om de aanbevolen pakketten te installeren: dnsmasq-base, brug-gebruik, en firewalld.
Toegang tot gasten via hostnamen
Wanneer het standaardnetwerk is ingesteld, het is mogelijk om de DNS-server van libvirt dnsmasq te configureren, waardoor het mogelijk wordt om toegang te krijgen tot gasten via hun hostnamen. Het is handig als u met meerdere gasten werkt en verbinding met hen moet maken via een eenvoudiger hostnaam dan het onthouden van alle IP-adressen.
Eerst, het standaardnetwerk moet worden geconfigureerd door de opdracht uit te voeren:
<domain name='libvirt' localOnly='yes'/>
libvirt verwijst naar de domeinnaam die wordt gebruikt voor gastmachines. U kunt deze waarde indien nodig wijzigen, maar vermijd het gebruik van “lokaal” omdat dit de mDNS kan verstoren. Het is ook belangrijk om hlocalOnly=’yes in te stellen’ om ervoor te zorgen dat verzoeken binnen dit domein niet worden doorgestuurd naar upstream-servers, Dit helpt potentiële verzoeklussen te voorkomen.
Na het toepassen van deze instellingen, uw netwerkconfiguratie zou er ongeveer als volgt uit moeten zien:
<network connections='1'>
<name>default</name>
<uuid>66b33e64-713f-4323-b406-bc636c054af5</uuid>
<forward mode='nat'>
<nat>
<port start='1024' end='65535'/>
</nat>
</forward>
<bridge name='virbr0' stp='on' delay='0'/>
<mac address='52:54:00:af:9f:2a'/>
<domain name='libvirt' localOnly='yes'/>
<ip address='192.168.122.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
</dhcp>
</ip>
</network>
Mogelijk moet u uw netwerkservice opnieuw opstarten voordat de nieuwe instellingen actief worden.
Volgende, wijs hostnamen toe aan uw virtuele machines. Bijvoorbeeld, als u een gast vm1 een naam wilt geven, log in op die VM en voer het uit:
sudo hostnamectl set-hostname vm1.libvirt
Daarna, pas de NetworkManager van de host aan zodat deze de DNS van libvirt gebruikt en de VM-hostnamen correct kan omzetten. Begin met het inschakelen van de ingebouwde dnsmasq van NetworkManager. Om dit te doen, maak een bestand aan op /etc/NetworkManager/conf.d/libvirt_dns.conf met de volgende inhoud:
[main]
dns=dnsmasq
Dan, configureer de dnsmasq van de host om alle DNS-query’s gerelateerd aan het libvirt-domein door te sturen naar de eigen dnsmasq-instantie van libvirt. Dit wordt gedaan door een ander configuratiebestand te maken op /etc/NetworkManager/dnsmasq.d/libvirt_dns.conf met de onderstaande inhoud:
server=/libvirt/192.168.122.1
Hier, libvirt vertegenwoordigt de domeinnaam die is gedefinieerd in uw libvirt-netwerkconfiguratie. Zorg ervoor dat het IP-adres overeenkomt met het adres dat is toegewezen aan het standaardnetwerk van libvirt (raadpleeg de ip-sectie in uw eerdere netwerkconfiguratie).
Zodra alles is ingesteld, herstart NetworkManager op de host:
sudo systemctl restart NetworkManager
Na het voltooien van deze stappen, u zou verbinding moeten kunnen maken met uw virtuele machines met behulp van hun hostnamen, zoals ssh vm1.libvirt.
Toegang tot hostservices van gasten bij gebruik van firewalld
In de standaardconfiguratie, de virbr0-interface is toegewezen aan de libvirt-zone in firewalld.
firewall-cmd --permanent --zone=libvirt --get-description
Deze zone is geconfigureerd met een ACCEPT-beleid, waardoor verkeer vrij kan worden doorgestuurd tussen interfaces in de zone. Echter, er is ook een weigeringsregel met een lagere prioriteit die directe toegang tot hostservices verhindert, tenzij deze expliciet zijn toegestaan. Beheerders kunnen de lijst met toegestane services indien nodig wijzigen.
De libvirt-zone is specifiek ontworpen voor virtuele netwerken die worden beheerd door libvirt. Standaard, elke nieuwe virtuele netwerkbrug die door libvirt wordt aangemaakt, wordt automatisch aan deze zone toegevoegd.
Als u wilt dat uw virtuele machines toegang krijgen tot specifieke services die op de host draaien, u moet de vereiste poorten in de libvirt-zone openen. Bijvoorbeeld:
firewall-cmd --permanent --zone=libvirt --add-port=3142/tcp
systemctl restart firewalld.service
Handmatige overbrugging
Om communicatie tussen de host en virtuele machines mogelijk te maken, je kunt een macvlan-bridge bovenop een dummy-interface maken. Na het instellen, configureer uw VM's om de dummy0 (macvtap) interface in overbrugde modus.
modprobe dummy
ip link add dummy0 type dummy
ip link add link dummy0 macvlan0 type macvlan mode bridge
ifconfig dummy0 up
ifconfig macvlan0 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0 up
Communicatie tussen gastheer, gasten, en extern netwerk
Als u volledige connectiviteit tussen de host wilt, virtuele machines, en het externe netwerk, u kunt een bridge-interface configureren zoals beschreven in de QEMU-documentatie.
Bijvoorbeeld, bewerken /etc/network/interfaces om uw fysieke interface aan te sluiten (bijv., eth0) naar een brug als br0. Eenmaal geconfigureerd, selecteren br0 als netwerkinterface voor uw virtuele machines.
KVM op Linux op een slimme manier instellen
KVM installeren op Linux in 2026 is niet langer een ingewikkelde of tijdrovende taak, vooral als u een gestroomlijnde aanpak volgt. Met moderne distributies die ingebouwde ondersteuning bieden voor virtualisatietools, u kunt in slechts een paar stappen een volledig functionele KVM-omgeving operationeel krijgen.
Van het installeren van de benodigde pakketten en het inschakelen van virtualisatie-ondersteuning tot het configureren van netwerken en het beheren van virtuele machines, het hele proces is gebruiksvriendelijker en efficiënter geworden. Tools zoals libvirt en virt-manager maken het nog eenvoudiger om uw virtuele machines te besturen en te monitoren zonder met onnodige complexiteit om te gaan.
Uiteindelijk over Hoe KVM te installeren, KVM blijft een van de krachtigste en meest flexibele virtualisatieoplossingen die beschikbaar zijn op Linux. Of u nu een thuislab opzet, testomgevingen, of het uitvoeren van productieworkloads, Het beheersen van KVM geeft u een betrouwbare en krachtige basis.