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

Richten Sie einen Headless-Virtualisierungsserver mit KVM in Ubuntu 18.04 LTS ein

Wir haben bereits die Einrichtung von Oracle VirtualBox auf Ubuntu 18.04 behandelt Headless-Server. In diesem Tutorial besprechen wir, wie Sie einen Headless-Virtualisierungsserver mit KVM einrichten und wie man die Gastmaschinen von einem Remote-Client aus verwaltet. Wie Sie vielleicht bereits wissen, ist KVM (K Kern-basiertes v irtual m achine) ist eine Open-Source-Vollvirtualisierung für Linux. Mit KVM können wir jeden Linux-Server in wenigen Minuten in eine vollständige Virtualisierungsumgebung verwandeln und verschiedene Arten von VMs wie GNU/Linux, *BSD, Windows usw. bereitstellen.

Herunterladen - Kostenloses eBook:"6 Dinge, die Ubuntu besser kann als Windows"

Headless-Virtualisierungsserver mit KVM in Ubuntu einrichten

Ich habe diese Anleitung auf dem Ubuntu 18.04 LTS-Server getestet, aber diese Anleitung funktioniert auch auf anderen Linux-Distributionen wie Debian, CentOS, RHEL und Scientific Linux. Diese Methode ist perfekt für diejenigen geeignet, die eine einfache Virtualisierungsumgebung auf einem Linux-Server ohne grafische Umgebung einrichten möchten.

Zum Zweck dieses Leitfadens werde ich zwei Systeme verwenden.

KVM-Virtualisierungsserver:

  • Host-Betriebssystem - Ubuntu 18.04 LTS Minimalserver (keine GUI)
  • IP-Adresse des Host-Betriebssystems :192.168.225.22/24
  • Gastbetriebssystem (Was wir auf Ubuntu 18.04 hosten werden):Ubuntu 16.04 LTS-Server

Remote-Desktop-Client :

  • Betriebssystem - Arch-Linux

KVM installieren

Lassen Sie uns zuerst prüfen, ob unser System Hardware-Virtualisierung unterstützt. Führen Sie dazu den folgenden Befehl im Terminal aus:

$ egrep -c '(vmx|svm)' /proc/cpuinfo

Wenn das Ergebnis Null (0) ist , das System unterstützt keine Hardware-Virtualisierung oder die Virtualisierung ist im Bios deaktiviert. Gehen Sie zu Ihrem BIOS und suchen Sie nach der Virtualisierungsoption und aktivieren Sie sie.

wenn das Ergebnis 1 ist odermehr , unterstützt das System Hardware-Virtualisierung. Sie müssen jedoch noch die Virtualisierungsoption im Bios aktivieren, bevor Sie die obigen Befehle ausführen.

Alternativ können Sie den folgenden Befehl verwenden, um dies zu überprüfen. Sie müssen zuerst kvm wie unten beschrieben installieren, um diesen Befehl verwenden zu können.

$ kvm-ok

Beispielausgabe:

INFO: /dev/kvm exists
KVM acceleration can be used

Wenn Sie stattdessen den folgenden Fehler erhalten, können Sie immer noch Gastcomputer in KVM ausführen, aber die Leistung wird sehr schlecht sein.

INFO: Your CPU does not support KVM extensions
INFO: For more detailed results, you should run this as root
HINT: sudo /usr/sbin/kvm-ok

Es gibt auch andere Möglichkeiten, um herauszufinden, ob Ihre CPU Virtualisierung unterstützt oder nicht. Weitere Informationen finden Sie in der folgenden Anleitung.

  • So finden Sie heraus, ob eine CPU die Virtualisierungstechnologie (VT) unterstützt

Installieren Sie als Nächstes KVM und andere erforderliche Pakete, um eine Virtualisierungsumgebung unter Linux einzurichten.

Führen Sie auf Ubuntu und anderen DEB-basierten Systemen Folgendes aus:

$ sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker

Sobald KVM installiert ist, starten Sie den libvertd-Dienst (falls noch nicht geschehen):

$ sudo systemctl enable libvirtd
$ sudo systemctl start libvirtd

Virtuelle Maschinen erstellen

Alle Dateien der virtuellen Maschine und andere zugehörige Dateien werden unter /var/lib/libvirt/ gespeichert . Der Standardpfad für ISO-Images ist /var/lib/libvirt/boot/ .

Lassen Sie uns zuerst sehen, ob es virtuelle Maschinen gibt. Um die Liste der verfügbaren virtuellen Maschinen anzuzeigen, führen Sie Folgendes aus:

$ sudo virsh list --all

Beispielausgabe:

Id Name State
----------------------------------------------------

Wie Sie oben sehen, ist derzeit keine virtuelle Maschine verfügbar.

Lass uns jetzt einen erstellen.

Lassen Sie uns beispielsweise eine virtuelle Ubuntu 16.04-Maschine mit 512 MB RAM, 1 CPU-Kern und 8 GB-Festplatte erstellen.

$ sudo virt-install --name Ubuntu-16.04 --ram=512 --vcpus=1 --cpu host --hvm --disk path=/var/lib/libvirt/images/ubuntu-16.04-vm1,size=8 --cdrom /var/lib/libvirt/boot/ubuntu-16.04-server-amd64.iso --graphics vnc

Bitte stellen Sie sicher, dass Sie das ISO-Image von Ubuntu 16.04 im Pfad /var/lib/libvirt/boot/ haben oder einen anderen Pfad, den Sie im obigen Befehl angegeben haben.

Beispielausgabe:

WARNING Graphics requested but DISPLAY is not set. Not running virt-viewer.
WARNING No console to launch for the guest, defaulting to --wait -1

Starting install...
Creating domain... | 0 B 00:00:01 
Domain installation still in progress. Waiting for installation to complete.
Domain has shutdown. Continuing.
Domain creation completed.
Restarting guest.

Lassen Sie uns den obigen Befehl aufschlüsseln und sehen, was jede Option bewirkt.

  • --name :Diese Option definiert den Namen des virtuellen Namens. In unserem Fall lautet der Name der VM Ubuntu-16.04 .
  • --ram=512 :Weist der VM 512 MB RAM zu.
  • --vcpus=1 :Gibt die Anzahl der CPU-Kerne in der VM an.
  • --CPU-Host :Optimiert die CPU-Eigenschaften für die VM, indem die CPU-Konfiguration des Hosts dem Gast offengelegt wird.
  • --hvm :Vollständige Hardwarevirtualisierung anfordern.
  • --Festplattenpfad :Der Speicherort für die Festplatte der VM und ihre Größe. In unserem Beispiel habe ich 8 GB Festplattengröße zugewiesen.
  • --cdrom :Der Speicherort des ISO-Image des Installationsprogramms. Bitte beachten Sie, dass Sie das aktuelle ISO-Image an diesem Ort haben müssen.
  • --graphics vnc :Ermöglicht VNC-Zugriff auf die VM von einem Remote-Client.

Zugriff auf virtuelle Maschinen mit VNC-Client

Gehen Sie jetzt zum Remote-Desktop-System. SSH zum Ubuntu-Server (Virtualisierungsserver) wie unten gezeigt.

$ ssh [email protected]

Hier, sk ist der Benutzername meines Ubuntu-Servers und 192.168.225.22 ist seine IP-Adresse.

Führen Sie den folgenden Befehl aus, um die VNC-Portnummer herauszufinden. Wir benötigen dies, um von einem entfernten System aus auf die VM zuzugreifen.

$ sudo virsh dumpxml Ubuntu-16.04 | grep vnc

Beispielausgabe:

<graphics type='vnc' port='5900' autoport='yes' listen='127.0.0.1'>

Notieren Sie sich die Portnummer 5900 . Installieren Sie eine beliebige VNC-Clientanwendung. Für diese Anleitung verwende ich TigerVnc. TigerVNC ist in den Standard-Repositories von Arch Linux verfügbar. Um es auf Arch-basierten Systemen zu installieren, führen Sie Folgendes aus:

$ sudo pacman -S tigervnc

Geben Sie den folgenden SSH-Portweiterleitungsbefehl von Ihrem Remote-Client-System ein, auf dem die VNC-Client-Anwendung installiert ist.

$ ssh [email protected] -L 5900:127.0.0.1:5900

Nochmals 192.168.225.22 ist die IP-Adresse meines Ubuntu-Servers (Virtualisierungsserver).

Öffnen Sie dann den VNC-Client von Ihrem Arch Linux (Client).

Geben Sie localhost:5900 ein im Feld VNC-Server und klicken Sie auf Verbinden Schaltfläche.

Starten Sie dann mit der Installation der Ubuntu-VM so, wie Sie es im physischen System tun.

In ähnlicher Weise können Sie je nach Serverhardwarespezifikationen bis zu virtuelle Maschinen einrichten.

Alternativ können Sie virt-viewer verwenden Dienstprogramm, um das Betriebssystem auf den Gastcomputern zu installieren. virt-viewer ist in den Standard-Repositories der meisten Linux-Distributionen verfügbar. Führen Sie nach der Installation von virt-viewer den folgenden Befehl aus, um den VNC-Zugriff auf die VM herzustellen.

$ sudo virt-viewer --connect=qemu+ssh://192.168.225.22/system --name Ubuntu-16.04

Virtuelle Maschinen verwalten

Das Verwalten von VMs über die Befehlszeile mithilfe der virsh-Verwaltungsbenutzeroberfläche ist sehr interessant und macht Spaß. Die Befehle sind sehr leicht zu merken. Sehen wir uns einige Beispiele an.

Um die Liste der ausgeführten VMs anzuzeigen, führen Sie Folgendes aus:

$ sudo virsh list

Oder,

$ sudo virsh list --all

Beispielausgabe:

 Id Name State
----------------------------------------------------
 2 Ubuntu-16.04 running

Um eine VM zu starten, führen Sie Folgendes aus:

$ sudo virsh start Ubuntu-16.04

Alternativ können Sie die VM-ID zum Starten verwenden.

Wie Sie in der obigen Ausgabe sehen, ist die ID der virtuellen Maschine von Ubuntu 16.04 2. Um sie zu starten, geben Sie also einfach ihre ID wie unten an.

$ sudo virsh start 2

Um eine VM neu zu starten, führen Sie Folgendes aus:

$ sudo virsh reboot Ubuntu-16.04

Beispielausgabe:

Domain Ubuntu-16.04 is being rebooted

Um eine laufende VM anzuhalten, führen Sie Folgendes aus:

$ sudo virsh suspend Ubuntu-16.04

Beispielausgabe:

Domain Ubuntu-16.04 suspended

Um die angehaltene VM fortzusetzen, führen Sie Folgendes aus:

$ sudo virsh resume Ubuntu-16.04

Beispielausgabe:

Domain Ubuntu-16.04 resumed

Führen Sie zum Herunterfahren einer VM Folgendes aus:

$ sudo virsh shutdown Ubuntu-16.04

Beispielausgabe:

Domain Ubuntu-16.04 is being shutdown

Um eine VM vollständig zu entfernen, führen Sie Folgendes aus:

$ sudo virsh undefine Ubuntu-16.04
$ sudo virsh destroy Ubuntu-16.04

Beispielausgabe:

Domain Ubuntu-16.04 destroyed

Für weitere Optionen empfehle ich Ihnen, in die Manpages zu schauen.

$ man virsh

Das war's erstmal, Leute. Spielen Sie mit Ihrer neuen Virtualisierungsumgebung. KVM-Virtualisierung wird für Forschungs- und Entwicklungs- und Testzwecke verwendet, ist aber nicht darauf beschränkt. Wenn Sie über ausreichend Hardware verfügen, können Sie diese für große Produktionsumgebungen verwenden.

Verwandte Lektüre:

  • KVM in Ubuntu 20.04 Headless Server installieren und konfigurieren

Quelle:

  • KVM-Website

Ubuntu
  1. So richten Sie einen iSCSI-Speicherserver unter Ubuntu 18.04 LTS ein

  2. So richten Sie den Rsyslog-Server unter Ubuntu 18.04 LTS ein

  3. 4 Schritte zum Einrichten eines lokalen Repositorys in Ubuntu mit APT-Mirror

  4. Einrichten der Servervirtualisierungsumgebung mit Proxmox VE

  5. Richten Sie den Urbackup-Server auf Ubuntu 20.04 ein

So richten Sie Nginx-Serverblöcke in Ubuntu 18.04 LTS ein

So installieren Sie Oracle VirtualBox auf Ubuntu 18.04.2 LTS Headless Server

So richten Sie das neueste MySQL unter Ubuntu 20.04 LTS ein

So installieren Sie Jellyfin Media Server auf Ubuntu 20.04 LTS Server/Desktop

Plex Media Server auf Ubuntu 22.04 LTS installieren und einrichten

So richten Sie NTP-Server und -Client unter Ubuntu 20.04 LTS ein