GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie KVM/QEMU auf Manjaro/Archlinux

Auf dieser Seite

  1. Was ist QEMU?
  • Voraussetzungen
  • Überprüfen der Unterstützung für Systemarchitektur und CPU-Virtualisierung
  • QEMU- und Virt-Manager-Pakete installieren
  • Nicht-Root-Benutzern erlauben, KVM/QEMU-Virtualisierung zu verwenden
  • Überprüfen Sie die QEMU/KVM-Installation mit virt-manager
  • Neue virtuelle Maschine mit virt-manager erstellen
  • Schlussfolgerung
  • KVM ist ein Akronym für Kernel-based Virtual Machine , es ist eine Technologielösung für die Virtualisierung, die auf dem Linux-Kernel-Modul basiert. KVM ist eine Open-Source-Softwarelösung, die auf dem Linux x86-Computer mit Unterstützung der Hardware-Virtualisierungserweiterungen Intel VT oder AMD-V ausgeführt wird . Das KVM-Kernelmodul wird seit Version 2.6.20 an den Linux-Kernel ausgeliefert und wurde als ladbare Kernelmodule auf andere Betriebssysteme wie FreeBSD und Illumos portiert.

    Die KVM-Technologie verwandelt die Linux-Maschine in eine Hypervisor-Virtualisierung, die als Host-Maschine bezeichnet wird. Auf dem Hostcomputer können Sie mehrere isolierte Systeme erstellen, die als virtuelle Maschinen (VM) bezeichnet werden. Jede virtuelle Maschine hat ihr eigenes System (es kann Linux, Windows oder BSD sein), hat auch private virtualisierte Hardware wie Speicher, CPUs, Netzwerkkarte, Festplatte, Grafik usw.

    Was ist QEMU?

    QEMU oder Quick Emulator ist ein Open-Source-Systememulator und Virtualizer für die Hardware-Virtualisierung. Im Allgemeinen wird es als Virtualizer mit dem KVM-Kernelmodul verwendet, um virtuelle Maschinen auszuführen. Um eine hervorragende Leistung für Gastmaschinen/virtuelle Maschinen zu erzielen, werden Hardware-Virtualisierungserweiterungen wie Intel VT oder AMD-V genutzt. Die QEMU/KVM-Virtualisierung wird meist als Hypervisor in einem Rechenzentrum eingesetzt.

    In diesem Handbuch erfahren Sie, wie Sie die KVM/QEMU-Virtualisierung auf einem Manjaro/Archlinux-Rechner einrichten. Außerdem erfahren Sie, wie Sie mit der GUI-Anwendung "virt-manager" - einer Desktop-Benutzeroberfläche zur Verwaltung virtueller Maschinen - die erste virtuelle Maschine erstellen.

    Voraussetzungen

    • Ein Manjaro/Archlinux mit x86- oder 64-Bit-Architektur.
    • Eine CPU/Prozessor mit Virtualisierungsunterstützung (Intel VT oder AMD-V).
    • Ein Nicht-Root-Benutzer mit sudo-Root-Berechtigungen.

    Überprüfen der Unterstützung für Systemarchitektur und CPU-Virtualisierung

    Überprüfen Sie zunächst die Maschinenarchitektur und die Hardwareunterstützung der Virtualisierungsbeschleunigung Intel VT für Intel-CPUs und AMD-v für AMD-CPUs.

    1. Führen Sie den folgenden Befehl aus, um die Systemarchitektur Ihres Systems zu überprüfen.

    uname -m

    Sie erhalten die folgende Ausgabe.

    Linux machine1 5.4.134-1 #1 SMP PREEMPT Tue Jul 06 08:10:03 UTC 2021 x86_64 GNU/Linux

    Wie Sie sehen, verwenden wir derzeit das Linux-System mit "x86_64 " oder "64-Bit " Architektur und die Kernel-Version "5.4 ".

    2. Überprüfen Sie als Nächstes die Hardware-Virtualisierungsunterstützung, indem Sie den folgenden Befehl ausführen.

    sudo lscpu | grep Virtualisierung

    Für den Intel-Prozessor sehen Sie eine ähnliche Ausgabe wie unten.

    Virtualisierung:                  VT-x

    Und für AMD-Prozessoren finden Sie unten eine ähnliche Ausgabe.

    Virtualisierung:                  AMD-V

    3. Optional können Sie die verschachtelte Virtualisierung auf Ihrem Computer mit dem folgenden Befehl aktivieren.

    sudo modprobe -r kvm_intel
    sudo modprobe kvm_intel nested=1

    Führen Sie danach den folgenden Befehl aus, um die verschachtelte Virtualisierung zu überprüfen.

    cat /sys/module/kvm_intel/parameters/nested

    Wenn Sie die Ausgabe wie "Y" erhalten oder "1" , bedeutet dies, dass die verschachtelte Virtualisierung aktiviert ist. Andernfalls wird die Fehlermeldung "Keine solche Datei oder Verzeichnis" angezeigt .

    QEMU- und Virt-Manager-Pakete installieren

    1. Führen Sie den folgenden Befehl aus, um die Pakete qemu und virt-manager zu installieren.

    sudo pacman -S qemu virt-manager libvirt virt-viewer dnsmasq vde2 bridge-utils openbsd-netcat ebtables libguestfs

    Für das Manjaro-System wird es einen Paketkonflikt zwischen "iptables " und "ebtables ". Geben Sie "y ein ", um das standardmäßige iptables-Paket zu entfernen und durch die Datei "ebtables " und "nftables ".

    Nachfolgend finden Sie wichtige Pakete, die Sie kennen müssen:

    • qemu:Ein Open-Source-Maschinenemulator und Virtualisierer.
    • virt-manager; Eine GUI-Anwendung zur Verwaltung virtueller Maschinen.
    • libvirt:Eine API zur Steuerung von Virtualisierungsmaschinen wie KVM, QEMU usw.
    • dnsmasq:Leichtgewichtiger DNS-Forwarder und DHCP-Server.
    • bridge-utils:Dienstprogramme zum Konfigurieren der Linux-Ethernet-Bridge.
    • libguestfs:Satz von Tools zum Ändern von Festplatten-Images virtueller Maschinen (VM).

    2. Als nächstes starten und aktivieren Sie den libvirtd-Dienst mit dem folgenden Befehl.

    sudo systemctl enable --now libvirtd

    Sie erhalten eine ähnliche Ausgabe wie unten.

    Symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service → /usr/lib/systemd/system/libvirtd.service erstellt.
    Symlink /etc/systemd/system/ erstellt sockets.target.wants/virtlockd.socket → /usr/lib/systemd/system/virtlockd.socket.
    Symlink erstellt /etc/systemd/system/sockets.target.wants/virtlogd.socket → /usr/lib /systemd/system/virtlogd.socket.
    Symlink erstellt /etc/systemd/system/sockets.target.wants/libvirtd.socket → /usr/lib/systemd/system/libvirtd.socket.
    Erstellt Symlink /etc/systemd/system/sockets.target.wants/libvirtd-ro.socket → /usr/lib/systemd/system/libvirtd-ro.socket.

    3. Führen Sie danach den folgenden Befehl aus, um den Status des libvirtd-Dienstes zu überprüfen.

    sudo systemctl status libvirtd

    Und Sie sollten eine ähnliche Ausgabe wie unten sehen. Wie Sie sehen, ist der libvritd-Dienst aktiv und wird ausgeführt.

    ? libvirtd.service – Virtualisierungs-Daemon
         Geladen:geladen (/usr/lib/systemd/system/libvirtd.service; deaktiviert; Herstellervoreinstellung:deaktiviert)
         Aktiv:aktiv (läuft) seit Fr. 2021-07- 23 10:33:25 UTC; Vor 6s
    TriggeredBy:? libvirtd-ro.socket
                 ? libvirtd.socket
                 ? libvirtd-admin.socket
           Dokumentation:man:libvirtd(8)
                 https://libvirt.org
       Haupt-PID:16828 (libvirtd)
          Aufgaben:19 (Limit:32768 )
         Speicher:16,4 MB
            CPU:226 ms
         CGroup:/system.slice/libvirtd.service
                 ??16828 /usr/bin/libvirtd --timeout 120

    Nicht-Root-Benutzern erlauben, KVM/QEMU-Virtualisierung zu verwenden

    Standardmäßig kann nur der Benutzer „root“ virtuelle Maschinen erstellen und verwalten. Um es Nicht-Root-Benutzern zu ermöglichen, virtuelle Maschinen zu erstellen und zu verwalten, sollten Sie der unten stehenden libvirtd-Konfiguration folgen.

    1. Führen Sie den folgenden Befehl aus, um die libvirtd-Konfiguration zu bearbeiten.

    sudo nano /etc/libvirt/libvirtd.conf

    Entkommentieren Sie die Option „unix_sock_group " und geben Sie den Gruppennamen als "libvirt" ein ".

    # Stellen Sie den Besitz der UNIX-Domain-Socket-Gruppe ein. Dies kann verwendet werden, um
    # einer 'vertrauenswürdigen' Gruppe von Benutzern Zugriff auf Verwaltungsfunktionen zu gewähren,
    # ohne Root zu werden.
    #
    # Diese Einstellung ist nicht erforderlich oder wird bei Verwendung berücksichtigt systemd socket
    # Aktivierung.
    #
    # Dies ist standardmäßig auf 'root' beschränkt.
    unix_sock_group ="libvirt"

    Entkommentieren Sie danach die Option „unix_sock_rw_perms " und belassen Sie die Berechtigung als Standard "0770 ".

    # Stellen Sie die UNIX-Socket-Berechtigungen für den R/W-Socket ein. Dies wird
    # für die vollständige Verwaltung von VMs verwendet
    #
    # Diese Einstellung ist nicht erforderlich oder wird nicht berücksichtigt, wenn die Systemd-Socket
    #-Aktivierung verwendet wird.
    #
    # Standard erlaubt nur root. Wenn PolicyKit auf dem Socket aktiviert ist,
    # ändert sich die Standardeinstellung, um alle zuzulassen (z. B. 0777)
    #
    # Wenn PolicyKit nicht verwendet und der Gruppenbesitz für den Zugriff festgelegt wird
    # Kontrolle, dann sollten Sie auch diese lockern.
    unix_sock_rw_perms ="0770"

    Speichern Sie die Konfiguration durch Drücken von Strg+x Schaltfläche und geben Sie y ein , dann Eingabe .

    2. Als nächstes fügen Sie Ihren Benutzer der Gruppe „libvirt hinzu " mit dem folgenden Befehl.

    sudo usermod -a -G libvirt Benutzername

    3. Starten Sie danach den libvirtd-Dienst neu, um eine neue Konfiguration anzuwenden.

    sudo systemctl restart libvirtd

    Jetzt können alle Benutzer innerhalb der Gruppe "libvirt" virtuelle Maschinen erstellen und konfigurieren.

    Überprüfen Sie die QEMU/KVM-Installation mit virt-manager

    Öffnen Sie nun die Anwendung „virt-manager " aus Ihrem Anwendungsmenü.

    1. Klicken Sie auf das Menü "Bearbeiten -> Verbindungsdetails " in der virt-manager-Anwendung.

    2. Auf dem Reiter „Übersicht " werden Sie sehen, dass sich der Virt-Manager automatisch mit "qemu:///system verbindet ".

    3. Wechseln Sie zu den Registerkarten „Virtuelle Netzwerke " und Sie sehen die "Standard " Netzwerkkonfiguration.

    • Schnittstelle:virbr0
    • Automatischer Start beim Booten:ja
    • IP-Adresse:192.168.122.0/24
    • Bereich DHCP-IP-Adresse:192.168.122.2 - 192.168.122.254
    • Geben Sie Netzwerk ein:NAT

    4. Wechseln Sie nun zum Reiter „Speicher “,  und Sie sehen „Standard " Konfiguration des Poolspeichers.

    • Typ:Dateisystemverzeichnis
    • Größe:Hängt von Ihrer Festplatte ab
    • Speicherort:/var/lib/libvirt/images
    • Automatischer Start beim Booten:ja

    Alle Images virtueller Maschinen sind auf diesem Standardspeicher verfügbar, dem Verzeichnis „/var/lib/libvirt/images ".

    5. Klicken Sie anschließend auf die Schaltfläche „+ ", um einen neuen Pool-Speicher für ISO-Image-Dateien zu erstellen. Alle Betriebssysteme für ISO-Dateien werden in diesem Pool verfügbar sein.

    Folgen Sie der Speicherkonfiguration wie folgt:

    • Name:ISO
    • Typ:dir:Dateisystemverzeichnis
    • Zielpfad:/path/directory/to/your/iso/

    Klicken Sie auf „Fertig stellen ", um den Vorgang abzuschließen. Danach können Sie neue virtuelle Maschinen erstellen.

    Neue virtuelle Maschine mit virt-manager erstellen

    1. Klicken Sie in der virt-manager-Anwendung auf die Schaltfläche „+ " um eine neue virtuelle Maschine zu erstellen.

    2. Wählen Sie "Lokales Installationsmedium". ", um das ISO-Image für die Installation zu verwenden, und klicken Sie auf die Schaltfläche "Weiter " um fortzufahren.

    3. Klicken Sie auf „Durchsuchen " Taste, um die ISO-Datei auszuwählen.

    Wählen Sie nun den Poolspeicher „ISO " und wählen Sie die ISO-Datei für die Installation aus (für dieses Beispiel ist die "Debian 10 "), und klicken Sie dann auf "Lautstärke auswählen ".

    Deaktivieren Sie die Option „Automatisch vom Installationsmedium/der Quelle erkennen ", geben Sie das Betriebssystem ein, das Sie installieren möchten (in diesem Beispiel ist es "Debian 10 ") und klicken Sie dann auf die Schaltfläche "Weiter " erneut drücken, um fortzufahren.

    4. Wählen Sie aus, wie viel Arbeitsspeicher und CPU für die virtuelle Maschine vorhanden sind, und klicken Sie dann auf „Weiterleiten ".

    5. Wählen Sie die Festplattengröße für die virtuelle Maschine aus und klicken Sie auf „Weiterleiten“. ".

    6. Überprüfen Sie Ihre Konfiguration noch einmal und klicken Sie auf „Fertig stellen " Schaltfläche zum Installieren.

    7. Jetzt läuft die virtuelle Maschine mit der QEMU/KVM-Virtualisierung und Sie können mit der Installation des Betriebssystems fortfahren.

    Schlussfolgerung

    Herzliche Glückwünsche! Sie haben gelernt, wie man die QEMU/KVM-Virtualisierung auf einem Manjaro/Archlinux-Rechner einrichtet. Außerdem erfahren Sie, wie Sie die Anwendung virt-manager zum Erstellen virtueller Maschinen verwenden. Jetzt können Sie virtuelle Maschinen mit Ihrem bevorzugten Betriebssystem erstellen. Sie können eine andere Linux-Distribution, ein Windows oder ein Betriebssystem der BSD-Familie verwenden.


    Linux
    1. So installieren Sie RHEL 8 auf einer virtuellen Maschine

    2. So installieren Sie Erlang auf ArchLinux

    3. So installieren Sie KVM unter CentOS 8 Linux

    4. So installieren Sie Notepad++ auf Manjaro 20

    5. So installieren Sie den Virtualisierungs-Linux-Server

    So installieren Sie Dropbox auf Manjaro 20

    So installieren Sie Git auf Manjaro 20

    So installieren Sie Zoom auf Manjaro 20

    So installieren Sie PyCharm auf Manjaro 20

    So installieren Sie KVM auf Manjaro 21

    So installieren Sie KVM unter CentOS/RHEL 8