zhaoJians Tech-Notizen

EndeavourOS, Manjaro und andere Arch-basierte Linux-Distributionen - Installation von QEMU+KVM, libvirt und Virt-Manager Virtualisierung

Technologie ~5478 Wörter · 14 Min. Lesezeit - Aufrufe

QEMU, KVM, libvirt und Virt-Manager sind Schlüsselkomponenten für den Aufbau von Virtualisierungslösungen. Sie übernehmen jeweils unterschiedliche Aufgaben, arbeiten aber zusammen, um leistungsstarke Virtualisierungsfunktionen bereitzustellen.

QEMU ist ein quelloffener universeller Hardware-Emulator und Virtualisierungsmanager. Er kann als reiner Emulator (geringere Leistung) oder in Kombination mit KVM zur hardwarebeschleunigten Virtualisierung (höhere Leistung, nahe an nativer Hardware) eingesetzt werden.

KVM ist ein Modul im Linux-Kernel, das direkt auf dem Linux-Kernel läuft und mithilfe von Hardware-Virtualisierungstechnik eine Leistung nahe der nativen Hardware erreicht.

libvirt ist ein Open-Source-API- und Werkzeugsatz zur Verwaltung von Virtualisierungsplattformen (wie QEMU/KVM, Xen, VMware, Hyper-V usw.).

Virt-Manager ist ein grafisches Verwaltungstool, das selbst keine virtuellen Maschinen direkt verwaltet, sondern speziell für die Verwaltung der von libvirt bereitgestellten virtuellen Maschinen dient. Es richtet sich hauptsächlich an Benutzer, die mit der Kommandozeile nicht vertraut sind, und bietet eine komfortable grafische Oberfläche.

KVM ist im Linux-Kernel enthalten und wird mit QEMU integriert, um leistungsstarke Virtualisierung zu ermöglichen. libvirt vereinfacht die Komplexität von QEMU und bietet Verwaltungsfunktionen über die Kommandozeile - es ist das Kernwerkzeug der Virtualisierungsverwaltung. Virt-Manager ist die grafische Oberfläche für libvirt, geeignet für Benutzer, die eine GUI-basierte Verwaltung virtueller Maschinen bevorzugen.

Installation der für den Betrieb virtueller Maschinen erforderlichen Komponenten

yay -S qemu virt-manager virt-viewer dnsmasq vde2 bridge-utils openbsd-netcat ebtables swtpm
sudo systemctl enable libvirtd.service
sudo systemctl start libvirtd.service
sudo usermod -aG libvirt $USER
  1. qemu ist ein universeller und quelloffener Virtualisierer und Emulator. Er ermöglicht es, andere Betriebssysteme innerhalb eines Betriebssystems auszuführen, und unterstützt sowohl vollständige Systemvirtualisierung als auch Prozessemulation.

  2. virt-manager ist ein grafisches Verwaltungstool für virtuelle Maschinen, das die Erstellung, Verwaltung und Überwachung vereinfacht.

  3. virt-viewer ist ein leichtgewichtiges Remote-Anzeige-Tool, das die Verbindung zur grafischen Konsole virtueller Maschinen ermöglicht (über SPICE- oder VNC-Protokoll).

  4. dnsmasq ist ein leichtgewichtiger DNS- und DHCP-Server. Libvirt nutzt ihn, um virtuellen Maschinen NAT-Netzwerkverbindungen bereitzustellen (Standardeinstellung).

  5. vde2 ist ein virtueller Switch zum Erstellen virtueller Netzwerkumgebungen. Ein optionales Tool, hauptsächlich für erweiterte virtuelle Netzwerkkonfigurationen, geeignet für Benutzer, die komplexe Netzwerktopologien benötigen.

  6. bridge-utils bietet Verwaltungstools für Bridge-Netzwerke, um die Netzwerkschnittstellen virtueller Maschinen mit physischen Netzwerkschnittstellen zu bridgen. Erforderlich, wenn virtuelle Maschinen direkt auf das externe Netzwerk zugreifen sollen (Bridge-Modus).

  7. openbsd-netcat ist ein Tool für Netzwerk-Debugging und Datenübertragung, das TCP- und UDP-Protokolle unterstützt. Libvirt nutzt es für einige netzwerkbezogene Aufgaben (z.B. Datenübertragung zwischen Remote-Hosts).

  8. ebtables ist ein Userspace-Tool zur Verwaltung der Bridge-Filtertabellen des Linux-Kernels. Wird bei der Verwaltung von Netzwerkverkehrsregeln virtueller Maschinen in Bridge-Netzwerken benötigt.

  9. swtpm ist ein softwareemuliertes TPM, das virtuellen Maschinen die Nutzung von TPM-Funktionen ohne physische Hardware ermöglicht. Unterstützt Windows 11 oder andere Szenarien, die TPM erfordern.

Zwischenablage-Freigabe und Drag-and-Drop-Funktionalität in QEMU und virt-manager

yay -S spice-vdagent qemu-guest-agent
sudo pacman -S spice-vdagent qemu-guest-agent
  1. spice-vdagent dient hauptsächlich der Verbesserung der Benutzererfahrung und bietet Zwischenablage-Freigabe, Drag-and-Drop und weitere Funktionen.
  2. qemu-guest-agent bietet Verwaltungs- und Kommunikationsfähigkeiten zwischen virtueller Maschine und Host, sodass die virtuelle Maschine effizientere Operationen und Verwaltungsaufgaben ausführen kann.

Nach der Installation müssen in virt-manager (auf der Linux-Host-Seite) die Einstellungen der virtuellen Maschine konfiguriert werden:

  1. Anzeigeprotokoll Spice Spice-Server - Typ: Spice-Server

Anzeigeprotokoll Spice

  1. Hardware hinzufügen (zwei Einträge): Kanal: Name auswählen com.redhat.spice.0 Kanal: Name auswählen org.qemu.guest_agent.0

Hardware hinzufügen - Kanal com.redhat.spice.0

Hardware hinzufügen - Kanal org.qemu.guest_agent.0

Installieren Sie in der virtuellen Maschine (Gastsystem, das installierte VM-Betriebssystem) die Software Spice Guest Tools, um Zwischenablage-Freigabe, Drag-and-Drop und weitere Funktionen zu unterstützen.

Falls beim Starten der Fehler “Fehler beim Starten der Domain: Ungültige Operation: Netzwerk ‘default’ ist nicht aktiviert” auftritt, muss das Default-Netzwerk gestartet werden.

Default-Netzwerk starten

sudo virsh net-start default

Automatischen Start beim Systemstart einrichten

sudo virsh net-autostart default
Teilen:

Kommentare