KVM

So installieren Sie KVM/QEMU auf CentOS 8

So installieren Sie KVM/QEMU auf CentOS 8
Die vollständige Form von KVM ist Kernel Virtual Machine. Es ist eine Virtualisierungslösung für Linux. KVM ist ein Linux-Kernel-Modul, das es dem Linux-Kernel ermöglicht, als Hypervisor-Programm wie VMware ESXi oder VSphere zu fungieren.

In diesem Artikel zeige ich Ihnen, wie Sie KVM auf CentOS 8 installieren und damit eine einfache virtuelle KVM-Maschine erstellen. Also lasst uns anfangen.

Aktivieren der Hardwarevirtualisierung:

Sie müssen die Hardware-Virtualisierungserweiterung im BIOS Ihres Computers aktivieren, damit KVM funktioniert. Bei Intel-Prozessoren sollten Sie die Prozessorfunktion VT-x oder VT-d im BIOS aktivieren enable. Bei AMD-Prozessoren sollten Sie die Prozessorfunktion AMD-v im BIOS aktivieren enable.

Nachdem Sie die Hardwarevirtualisierung im BIOS aktiviert haben, führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Erweiterung VT-x/VT-d oder AMD-v aktiviert ist.

$ grep --color --perl-regexp 'vmx|svm' /proc/cpuinfo

Sie sollten entweder die svm oder vmx Flag in der Ausgabe verfügbar, wenn Sie die Hardwarevirtualisierung im BIOS aktiviert haben.

Ich verwende einen AMD-Prozessor. Also, die svm Flagge ist in meinem Fall verfügbar. Wenn Sie einen Intel-Prozessor verwenden, ist dies der Fall vmx.

Upgrade des Systems:

Vor der Installation von KVM sollten Sie alle vorhandenen Softwarepakete Ihres CentOS 8-Computers aktualisieren.

Aktualisieren Sie zunächst den DNF-Paket-Repository-Cache Ihres CentOS 8-Computers mit dem folgenden Befehl:

$ sudo dnf makecache

Der Cache des DNF-Paket-Repositorys sollte aktualisiert werden.

Aktualisieren Sie alle vorhandenen Softwarepakete Ihres CentOS 8-Computers mit dem folgenden Befehl:

$ sudo dnf-Update

Um das Upgrade zu bestätigen, drücken Sie Ja und drücke dann .

Der DNF-Paketmanager sollte alle erforderlichen Pakete aus dem Internet herunterladen.

Sobald der Paketdownload abgeschlossen ist, sollten alle heruntergeladenen Pakete installiert werden. Es kann eine Weile dauern, bis es abgeschlossen ist.

Zu diesem Zeitpunkt sollte Ihr CentOS 8-System auf dem neuesten Stand sein.

Damit die Änderungen wirksam werden, starten Sie Ihren CentOS 8-Computer mit dem folgenden Befehl neu:

$ sudo Neustart

Setzen von SELinux in den Permissive Mode:

Die Konfiguration von SELinux für KVM ist nicht Gegenstand dieses Artikels. Wenn Sie SELinux in lassen Strikt -Modus (Standard) erhalten Sie beim Erstellen von virtuellen KVM-Maschinen Fehler bei verweigerter Berechtigung. Wenn Sie keine Erfahrung mit SELinux haben, sollten Sie es auf setzen freizügig Modus. Andernfalls können Sie keine virtuellen KVM-Maschinen erstellen.

So setzen Sie SELinux auf freizügig Modus, öffne den /etc/selinux/config Datei mit einem Texteditor (i.e. nano) mit folgendem Befehl:

$ sudo nano /etc/selinux/config

Ändere die Zeile SELINUX=erzwingen zu SELINUX=freizügig wie im Screenshot unten markiert.

Wenn Sie fertig sind, drücken Sie + X gefolgt von Ja und um die Konfigurationsdatei zu speichern.

Damit die Änderungen wirksam werden, starten Sie Ihren Computer mit dem folgenden Befehl neu:

$ sudo Neustart

KVM installieren:

Sie können alle erforderlichen Pakete für die KVM-Virtualisierung auf CentOS 8 ganz einfach installieren, indem Sie einfach die Virtualisierungshost Paketgruppe.

Sie können die . installieren Virtualisierungshost Paketgruppe auf Ihrem CentOS 8-Computer mit dem folgenden Befehl:

$ sudo dnf groupinstall "Virtualisierungshost"

Um die Installation zu bestätigen, drücken Sie Ja und drücke dann .

Der DNF-Paketmanager sollte alle erforderlichen Pakete aus dem Internet herunterladen.

Sobald der Paketdownload abgeschlossen ist, sollten alle heruntergeladenen Pakete installiert werden. Es kann eine Weile dauern, bis es abgeschlossen ist.

An dieser Stelle sollte KVM installiert sein.

Prüfen Sie nun, ob die libvirtd service wird mit folgendem Befehl ausgeführt:

$ sudo systemctl status libvirtd

Wie Sie sehen können, ist die libvirtd Dienst ist aktiv/Laufen. libvirtd Service ist sehr wichtig. Wenn es nicht ausgeführt wird, können Sie KVM nicht verwalten.

Wenn die libvirtd service in Ihrem Fall nicht ausgeführt wird, können Sie ihn mit dem folgenden Befehl starten:

$ sudo systemctl starte libvirtd

Prüfen Sie, ob Sie den KVM-Verwaltungsbefehl ausführen können virsh wie folgt:

$ sudo virsh --version

Der Befehl sollte die Versionsinformationen drucken, wie Sie im Screenshot unten sehen können.

virt-install installieren:

virt-install ist ein Befehlszeilentool zum einfachen Erstellen von virtuellen KVM-Maschinen. virt-install basiert auf libvirt. Also, die virtuellen Maschinen, die mit . erstellt wurden virt-install kann auch verwaltet werden mit virsh und virt-manager.

Sie können installieren virt-install mit folgendem Befehl:

$ sudo dnf install virt-install

Um die Installation zu bestätigen, drücken Sie Ja und drücke dann .

virt-install sollte installiert werden.

Einrichten erforderlicher KVM-Verzeichnisse:

Ich denke, es ist eine gute Idee, alle Daten der virtuellen Maschinen organisiert zu halten. Normalerweise behalte ich alle Daten der virtuellen KVM-Maschinen in /kvm/ Verzeichnis. In dem /kvm/ Verzeichnis, erstelle ich 2 Unterverzeichnisse Scheibe/ und iso/. In dem Scheibe/ Unterverzeichnis behalte ich alle Festplattendateien der virtuellen Maschine (VM). In dem iso/ Unterverzeichnis bewahre ich die ISO-Installationsabbilder verschiedener Betriebssysteme (i.e. Ubuntu, Debian, CentOS usw.).

Sie können die gleichen Verzeichnisstrukturen mit dem folgenden Befehl erstellen:

$ sudo mkdir -pv /kvm/disk,iso

Erstellen einer virtuellen KVM-Maschine:

In diesem Abschnitt zeige ich Ihnen, wie Sie einen Ubuntu Desktop 20 erstellen.04 Virtuelle LTS KVM-Maschine.

Zuerst müssen Sie den Ubuntu Desktop 20 . herunterladen.04 LTS ISO-Installationsabbild. Um alle Dateien/Daten der virtuellen Maschine organisiert zu halten, ist es eine gute Idee, das ISO-Image im /kvm/iso/ Verzeichnis.

Navigieren Sie also zum /kvm/iso/ Verzeichnis mit folgendem Befehl:

$ cd /kvm/iso

Sie können den Ubuntu Desktop 20 herunterladen.04 LTS ISO-Image von der offiziellen Website von Ubuntu mit dem folgenden Befehl:

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

wget sollte mit dem Herunterladen des Ubuntu Desktop 20 beginnen.04 LTS ISO-Image. Es wird eine Weile dauern, bis es fertig ist.

An dieser Stelle ist der Ubuntu Desktop 20.04 LTS ISO-Image sollte heruntergeladen werden.

Der Ubuntu-Desktop 20.04 LTS ISO-Image ist verfügbar im /kvm/iso/ Verzeichnis, wie Sie im Screenshot unten sehen können.

Sobald der Ubuntu Desktop 20.04 Das LTS-ISO-Image heruntergeladen ist, können Sie mit dem folgenden Befehl eine virtuelle KVM-Maschine erstellen:

$ sudo virt-install --name udesktop20_04-01 \
--os-typ linux \
--os-Variante ubuntu19.10 \
--ram 4096 \
--Datenträger /kvm/disk/udesktop20_04-01.img,device=disk,bus=virtio,size=20,format=qcow2 \
--Grafik vnc,listen=0.0.0.0 \
--keineautokonsole \
--hvm \
--cdrom /kvm/iso/ubuntu-20.04.1-desktop-amd64.iso \
--boot cdrom, hdh

Hier lautet der Name der virtuellen Maschine udesktop20_04-01.

Das Betriebssystem, das wir installieren werden, ist Linux.

Die Betriebssystemvariante ist ubuntu19.10. Die Betriebssystemdatenbank von CentOS 8 hat keinen Eintrag für Ubuntu 20.04 LTS zum Zeitpunkt dieses Schreibens. Also habe ich die Informationen für Ubuntu 19 verwendet.10.

Die Werte für den Betriebssystemtyp und die Betriebssystemvariante sind nicht zufällig. Den OS-Typ und die OS-Variante für Ihre gewünschte Linux-Distribution finden Sie mit dem osinfo-Abfrage Befehl. Wie Sie sehen, kein Eintrag für Ubuntu 20.04 LTS ist verfügbar. Aber ein Eintrag für Ubuntu 19.10 ist verfügbar. Der Betriebssystemtyp von Ubuntu 19.10 ist Linux und die OS-Variante ist ubuntu19.10.

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

Der Arbeitsspeicher (Random Access Memory) der VM beträgt 4096 MB (Megabyte) oder 4 GB (Gigabyte).

Die virtuelle Festplatte der VM wird im /kvm/disk/udesktop20.04-01.img Datei. Die virtuelle Festplatte ist ungefähr 20 GB in Größe und Format ist QCOW2 (QEMU Copy-On-Write v2)

Auf die virtuelle Maschine kann über das Remote-Desktop-Protokoll VNC (Virtual Network Computing) zugegriffen werden, und der VNC-Server lauscht auf allen verfügbaren Netzwerkschnittstellen, die auf Ihrem CentOS 8 KVM-Host konfiguriert sind.

Der CentOS 8 KVM-Host versucht nicht automatisch, eine Verbindung zur virtuellen Maschine herzustellen, sobald die virtuelle Maschine erstellt wurde. Die virtuelle Maschine läuft im Hintergrund weiter.

Nutzen Sie die vollständige Virtualisierung für die virtuelle Maschine. Dadurch wird die Leistung virtueller Maschinen besser.

Verwenden Sie den Ubuntu Desktop 20.04 LTS ISO-Image, das wir gerade als virtuelle CD/DVD-ROM der virtuellen Maschine heruntergeladen haben. Wird für die Installation von Ubuntu Desktop 20 verwendet.04 LTS auf der virtuellen Maschine.

Setzt die Bootreihenfolge der virtuellen Maschine. Der erste Boot-Eintrag ist die virtuelle CD/DVD-ROM und dann die virtuelle Festplatte. Die virtuelle Maschine kann also vom Ubuntu Desktop 20 . booten.04 LTS ISO-Image und installieren Sie Ubuntu Desktop 20.04 LTS auf der Festplatte.

Das sind alle Optionen, die Sie zum Erstellen einer virtuellen KVM-Maschine benötigen.

Sobald Sie die virt-install Befehl sollte KVM mit der Erstellung der virtuellen Maschine beginnen. Dies kann je nach Konfiguration Ihrer virtuellen Maschine eine Weile dauern.

An dieser Stelle sollte die virtuelle KVM-Maschine erstellt werden.

Auflisten von virtuellen KVM-Maschinen:

Sobald die virtuelle KVM-Maschine erstellt wurde, können Sie sie mit dem folgenden Befehl auflisten:

$ virsh-Liste --all

Der Befehl sollte Ihnen alle virtuellen KVM-Maschinen anzeigen, die Sie haben. Im Moment habe ich nur 1 virtuelle Maschine udesktop20_04-01. Das ist der, den ich gerade erstellt habe. Wie Sie sehen, ist die virtuelle Maschine udesktop20_04-01 ist Laufen. Sie sollten sich mit jedem VNC-Client darauf verbinden können.

Konfigurieren der Firewall für den Remote-Zugriff auf die virtuellen KVM-Maschinen:

Um remote auf die virtuelle KVM-Maschine zuzugreifen, müssen Sie den Firewall-Zugriff auf den VNC-Port der virtuellen Maschine zulassen.

So finden Sie den VNC-Port der virtuellen KVM-Maschine udesktop20_04-01, führen Sie den folgenden Befehl aus:

$ virsh vncdisplay udesktop20_04-01

Wie Sie sehen, ist die VNC-Portnummer des udesktop20_04-01 virtuelle Maschine ist 0.

Hier, Port 0 bedeutet Hafen 5900. Genauso, Port 1 bedeutet Hafen 5901 und so weiter.

Wie Sie sehen, ist die virtuelle KVM-Maschine udesktop20_04-01 läuft auf port 5900 (:0).

$ sudo netstat -tln

So erlauben Sie den Zugriff auf den Port 5900, führen Sie den folgenden Befehl aus:

$ sudo Firewall-cmd --add-port=5900/tcp --permanent

Führen Sie den folgenden Befehl aus, damit die Firewall-Änderungen wirksam werden:

$ sudo Firewall-cmd --reload

Remote-Verbindung zu den virtuellen KVM-Maschinen mit dem VNC-Client:

Um sich über VNC mit der virtuellen Maschine zu verbinden, müssen Sie die IP-Adresse Ihres CentOS 8 KVM-Hosts kennen.

Sie finden die IP-Adresse Ihres CentOS 8 KVM-Hosts mit dem folgenden Befehl:

$ ip a

In meinem Fall lautet die IP-Adresse 192.168.0.103. Bei dir wird es anders sein. Stellen Sie also sicher, dass Sie es von nun an durch Ihres ersetzen.

Öffnen Sie einen beliebigen VNC-Client und verbinden Sie sich mit der Adresse 192.168.0.103:0.

Klicke auf Fortsetzen.

Klicke auf Fortsetzen.

Sie sollten mit dem Display des . verbunden sein udesktop20_04-01 Virtuelle KVM-Maschine, wie Sie im Screenshot unten sehen können.

Jetzt können Sie Ihr gewünschtes Betriebssystem auf der virtuellen Maschine installieren.

In meinem Fall installiere ich den Ubuntu Desktop 20.04 LTS-Betriebssystem auf der virtuellen Maschine.

Ubuntu-Desktop 20.04 LTS wird auf der virtuellen KVM-Maschine installiert. Es kann eine Weile dauern, bis es abgeschlossen ist.

Klicken Sie nach Abschluss der Installation auf Jetzt neustarten.

Drücken Sie .

Die VNC-Verbindung sollte geschlossen werden.

Die virtuelle Maschine sollte automatisch ausgeschaltet werden, sobald die Installation des Betriebssystems abgeschlossen ist, wie Sie im Screenshot unten sehen können.

$ sudo virsh list --all

Starte das udesktop20_04-01 KVM virtuelle Maschine mit dem folgenden Befehl:

$ virsh starten udesktop20_04-01

Die virtuelle Maschine udesktop20_04-01 sollte gestartet werden.

Jetzt können Sie eine Verbindung zum udesktop20_04-01 virtuelle Maschine von einem VNC-Client wie zuvor. Wie Sie sehen können, ist der Ubuntu Desktop 20.04 LTS läuft in der virtuellen KVM-Maschine einwandfrei.

Entfernen von virtuellen KVM-Maschinen:

Sie können eine virtuelle KVM-Maschine auch ganz einfach mit dem virsh Befehlszeilentool.

Wie Sie sehen können, habe ich 2 virtuelle KVM-Maschinen (udesktop20_04-01 und udesktop20_04-02) läuft auf meinem CentOS 8 KVM-Host. Lass uns entfernen udesktop20_04-02 Virtuelle KVM-Maschine.

$ virsh-Liste --all

Wie Sie sehen können, ist die udesktop20_04-02 KVM virtuelle Maschine ist Laufen. Sie müssen es stoppen, bevor Sie es entfernen.

$ virsh-Liste --all

Um das Stoppen zu erzwingen udesktop20_04-02 KVM virtuelle Maschine, führen Sie den folgenden Befehl aus:

$ virsh zerstören udesktop20_04-02

Wie Sie sehen können, ist die udesktop20_04-02 virtuelle Maschine ist ausgeschaltet.

$ virsh-Liste --all

Sie können die dauerhaft entfernen udesktop20_04-02 virtuellen Maschine und allen angeschlossenen virtuellen Festplatten mit dem folgenden Befehl:

$ virsh undefine --remove-all-storage udesktop20_04-02

Wie Sie sehen können, ist die udesktop20_04-02 virtuelle Maschine ist nicht mehr verfügbar.

$ virsh-Liste --all

Problem Nr. 1: Behebung von cpu->kvm_msr_buf->nmsrs Assertion Error

Beim Erstellen einer virtuellen KVM-Maschine auf dem CentOS 8 KVM-Host wird möglicherweise die folgende Fehlermeldung angezeigt. Es ist ein Kernel-Bug. Normalerweise passiert dies, wenn Sie KVM in einer anderen virtuellen Maschine ausführen. Ich führe KVM in einer virtuellen VMware-Maschine aus. Deshalb habe ich diesen Fehler, glaube ich. Es ist leicht zu beheben.

Öffnen Sie die Konfigurationsdatei /etc/modprobe.d/kvm.conf mit folgendem Befehl:

$ sudo nano /etc/modprobe.d/kvm.conf

Das /etc/modprobe.d/kvm.conf Datei sollte geöffnet werden. Sie müssen die prozessorspezifische Option für die verschachtelte KVM-Virtualisierung von hier aus aktivieren.

Wenn Sie einen Intel-Prozessor verwenden, entkommentieren Sie die Zeile wie im Screenshot unten markiert.

Wenn Sie einen AMD-Prozessor verwenden, entkommentieren Sie die Zeile wie im Screenshot unten markiert.

Dann füge die Zeile hinzu Optionen kvm ignore_msrs=1 am Ende der Datei, wie im Screenshot unten gezeigt.

Wenn Sie fertig sind, drücken Sie + X gefolgt von Ja und um die zu retten /etc/modprobe.d/kvm.conf Datei.

Starten Sie dann Ihren CentOS 8 KVM-Host mit dem folgenden Befehl neu, damit die Änderungen wirksam werden.

$ sudo Neustart

Dein Problem sollte gelöst sein.

Problem 2: Beheben des RFB-Protokollfehlers des VNC-Clients:

Wenn Sie sich über einen VNC-Client mit der virtuellen KVM-Maschine verbinden, wird möglicherweise die folgende Fehlermeldung angezeigt. Diese Fehlermeldung wird angezeigt, wenn die Bildqualität des VNC-Clients auf . eingestellt ist Automatisch. Es ist leicht zu beheben.

Klick auf das Eigenschaften Symbol Ihres VNC-Clients.

Wie Sie sehen können, ist die Bildqualität ist eingestellt auf Automatisch.

Um dieses Problem zu lösen, wählen Sie entweder Niedrig, Mittel, oder Hoch von dem Bildqualität Dropdown-Menü.

Wenn Sie fertig sind, klicken Sie auf OK.

Dein Problem sollte gelöst sein.

Fazit:

In diesem Artikel habe ich Ihnen gezeigt, wie Sie KVM auf CentOS 8 installieren und virtuelle KVM-Maschinen über die Befehlszeile erstellen. Ich habe Ihnen auch gezeigt, wie Sie virtuelle KVM-Maschinen und Lösungen für einige häufige KVM-Probleme entfernen können. Dies sollte Ihnen den Einstieg in die Linux KVM-Virtualisierung erleichtern.

Beste Gamepad-Mapping-Apps für Linux
Wenn du Spiele unter Linux gerne mit einem Gamepad statt mit einem typischen Tastatur- und Maus-Eingabesystem spielst, gibt es einige nützliche Apps f...
Nützliche Tools für Linux-Spieler
Wenn Sie gerne unter Linux spielen, haben Sie wahrscheinlich Apps und Dienstprogramme wie Wine, Lutris und OBS Studio verwendet, um das Spielerlebnis ...
HD-Remastered-Spiele für Linux, die noch nie zuvor eine Linux-Version hatten
Viele Spieleentwickler und -herausgeber entwickeln HD-Remaster alter Spiele, um die Lebensdauer des Franchise zu verlängern. Bitte Fans, die Kompatibi...