KVM (Kernel-based Virtual Machine) ist die im Linux-Kernel integrierte Virtualisierungstechnik. Auf einem VPS Linux Infrawire bedeutet das: Ihr Server verhält sich wie ein echter Rechner mit eigenem Kernel und nicht wie ein bloßer, auf fremdem System abgeschotteter Ordner. Diese Anleitung erklärt den Unterschied zu Container-Technologien und zeigt, wie Sie es selbst überprüfen.
📋 Voraussetzungen
- Ein Linux-VPS (Ubuntu 24.04, Debian 12, AlmaLinux 9 oder Rocky Linux 9)
- SSH-Zugang als root oder als Benutzer mit
sudo - Grundkenntnisse in der Kommandozeile
1. So funktioniert KVM
KVM macht den Linux-Kernel des physischen Hosts zu einem Hypervisor. Jede virtuelle Maschine ist ein normaler, von QEMU verwalteter Prozess, sieht aber emulierte Hardware: CPU, RAM, Festplatte und Netzwerkkarte. Dank der CPU-Virtualisierungserweiterungen (Intel VT-x, AMD-V) läuft der Gast-Code nahezu mit nativer Geschwindigkeit.
In der VM installieren Sie ein vollständiges Betriebssystem mit eigenem Kernel, eigenem Init-System und eigenen Prozessen. Aus Ihrer Sicht ist es ein dedizierter Server.
2. KVM im Vergleich zu OpenVZ und LXC
Container-Technologien arbeiten anders:
- OpenVZ und LXC: Alle Container teilen sich den Kernel des Hosts. Sie erhalten nur einen isolierten Userspace. Sie können den Kernel nicht ändern, keine Module laden und die Kernel-Version nicht wählen.
- KVM: Vollständige Virtualisierung. Jeder VPS startet seinen eigenen Kernel und hat eine eigene Speicher- und Festplattenzuteilung.
Ein Container ist leichter, aber durch das begrenzt, was der Host-Kernel erlaubt. Ein KVM-VPS gibt Ihnen Freiheit, bei etwas höherem Speicherbedarf.
3. Warum das auf einem VPS wichtig ist
Mit einem eigenen Kernel können Sie:
- Kernel-Module wie WireGuard,
br_netfilterodernf_conntrackladen - Docker und andere Container-Engines ohne Einschränkungen betreiben (cgroups, Overlay-Dateisystem, iptables)
- Das System mit
sysctlabstimmen (Netzwerkpuffer, IP-Forwarding, BBR-Überlastkontrolle) - Eigene Firewall, Swap-Datei und beliebige Dateisysteme verwenden
- Eine andere Kernel-Version Ihrer Distribution installieren
Bash# Laufenden Kernel anzeigen uname -r # Änderbare Kernel-Parameter anzeigen sudo sysctl net.ipv4.ip_forward net.ipv4.tcp_congestion_control
4. Prüfen, ob Sie auf KVM laufen
Am einfachsten geht es mit systemd-detect-virt:
Bashsystemd-detect-virt # Erwartete Ausgabe: kvm
Gibt der Befehl openvz, lxc oder docker aus, befinden Sie sich in einem Container. none steht für eine physische Maschine.
Bestätigen können Sie es mit lscpu:
Bashlscpu | grep -iE 'hypervisor|virtualization type' # Hypervisor vendor: KVM # Virtualization type: full
Und mit den Boot-Meldungen des Kernels:
Bashsudo dmesg | grep -i -E 'kvm|hypervisor' # Hypervisor detected: KVM
Schließlich zeigt hostnamectl eine Zeile Virtualization: kvm.
5. Testen, was KVM Ihnen bietet
Prüfen Sie, ob Sie ein Modul laden und Container starten können:
Bash# Ubuntu 24.04 / Debian 12: WireGuard-Modul sudo modprobe wireguard lsmod | grep wireguard # Docker aus dem Distributions-Repository installieren und einen Test-Container starten sudo apt update && sudo apt install -y docker.io sudo docker run --rm hello-world
Unter AlmaLinux 9 oder Rocky 9 installieren Sie die Werkzeuge mit sudo dnf install -y wireguard-tools und folgen für die Engine der offiziellen Docker-Dokumentation (docs.docker.com).
🔧 Fehlerbehebung
dmesg: read kernel buffer failed: Operation not permitted
Der Kernel beschränkt dmesg auf root. Führen Sie es mit sudo aus oder nutzen Sie sudo journalctl -k.
modprobe: FATAL: Module wireguard not found
Bei manchen minimalen Images fehlen die zusätzlichen Module. Installieren Sie unter Ubuntu linux-modules-extra-$(uname -r). Haben Sie gerade den Kernel aktualisiert, starten Sie zuerst neu, damit uname -r zu den installierten Modulen passt.
systemd-detect-virt: command not found
Das Image hat kein systemd oder ist sehr minimal. Nutzen Sie stattdessen lscpu oder dmesg, oder installieren Sie das Paket systemd.
Docker meldet Probleme mit cgroups oder iptables
Prüfen Sie mit systemctl status docker, ob der Dienst läuft, und ob Sie nf_tables oder iptables in einer eigenen Firewall-Konfiguration deaktiviert haben.
🚀 Jetzt wissen Sie, was KVM Ihrem VPS bringt: einen echten Kernel, volle Kontrolle und keine versteckten Grenzen durch den Host.