Was ist KVM?
Kernel-Based Virtual Machine (KVM) ist eine Open Source-Virtualisierungstechnologie für Linux®-Betriebssysteme. Mit KVM kann Linux als Hypervisor fungieren, der mehrere isolierte virtuelle Maschinen (VMs) ausführt.
KVM wurde im Jahr 2006 angekündigt und ein Jahr später in den Linux-Kernel integriert. Viele Open Source-Virtualisierungstechnologien, darunter auch das Virtualisierungsportfolio von Red Hat, verwenden KVM als eine ihrer Komponenten.
Welche Aufgabe hat ein Hypervisor?
Mithilfe von Virtualisierung können Sie ein Betriebssystem in einem anderen Betriebssystem ausführen, was durch Hypervisoren ermöglicht wird. Ein Hypervisor fasst Computing-Ressourcen wie Verarbeitung, Arbeitsspeicher und Storage in Pools zusammen und weist sie unter VMs neu zu. Hypervisoren können mehrere VMs gleichzeitig ausführen und verwalten. Außerdem unterstützen sie die Erstellung von neuen VMs. Bei Verwendung als Hypervisor wird die physische Hardware als Host bezeichnet. Die vielen VMs, die seine Ressourcen nutzen, sind Guests.
Hypervisoren benötigen zur Ausführung der VMs einige Komponenten auf Betriebssystemebene, zum Beispiel einen Speichermanager, Prozessplaner, Input/Output-Stack (I/O), Gerätetreiber, Sicherheitsmanager, Netzwerk-Stack und mehr. KVM umfasst alle diese Komponenten, da sie Teil des Linux-Kernels sind. Jede VM wird als regulärer Linux-Prozess implementiert und vom standardmäßigen Linux-Planer geplant – mit dedizierter virtueller Hardware wie Netzwerkkarten, Grafikkarten, CPU(s), Speicher und Disks.
Red Hat Ressourcen
Welche Vorteile bietet die Virtualisierung?
Virtualisierung ermöglicht es, verschiedene Betriebssystemumgebungen auf einer einzelnen Hardware schnell zu starten und zu stoppen, was zahlreiche Vorteile für Ihr IT-Ökosystem bietet.
Flexibilität
Sie können eine Host-Maschine in mehrere VMs aufteilen und die Ressourcen so zuweisen, wie sie gebraucht werden. Auf diese Weise können Sie den vorhandenen Speicherplatz bestmöglich nutzen und den Energieverbrauch und die Wartung optimieren, indem Sie mehrere VMs auf nur einer physischen Hardwarekomponente hosten.
Geschwindigkeit
Da VM-Konfigurationen von Software definiert werden, lassen sich VMs schnell erstellen, entfernen, klonen und migrieren. Sie können eine VM außerdem remote steuern und das VM-Management automatisieren.
Kompatibilität
Mithilfe von VMs lässt sich Software ausführen, die nicht für Ihr Betriebssystem freigegeben wurde. Sie können beispielsweise ein älteres Betriebssystem in einer VM starten und so vorhandene Software auf moderner Hardware ausführen.
Stabilität und Sicherheit
VMs bieten auch Sicherheitsvorteile, da die einzelnen VMs separat ausgeführt werden. Wird eine VM instabil, hat dies daher keine Auswirkungen auf das Host-Betriebssystem oder andere VMs auf demselben Host. Sie können neue Konfigurationen testen, ohne Beeinträchtigungen des gesamten Systems zu riskieren.
Welche Funktionen bietet KVM?
Mit KVM handelt es sich bei einer VM um einen Linux-Prozess, der vom Kernel geplant und gemanagt wird. VMs, die mit KVM ausgeführt werden, profitieren von den Performance-Features von Linux, und Nutzende können die Vorteile der detaillierten Steuerung nutzen, die der Linux-Planer bereitstellt. KVM bietet auch verschiedene Funktionen im Bereich Sicherheit, Storage, Hardwareunterstützung und Live Migration.
Sicherheitsgrenzen mit SELinux und sVirt
Durch eine Kombination aus SELinux (Security-Enhanced Linux) und sVirt verbessert KVM die Sicherheit und Isolation Ihrer VMs. SELinux errichtet dabei Sicherheitsgrenzen um die VMs und sVirt erweitert die Funktionen von SELinux zusätzlich, indem es MAC-basierte Sicherheit (Mandatory Access Control) auf Guest-VMs anwendet und manuelle Label-Fehler verhindert.
Storage-Flexibilität
KVM kann alle von Linux unterstützten Storage-Typen verwenden, darunter auch einige lokale Disks und NAS (Network-Attached Storage). Außerdem unterstützt KVM gemeinsam genutzte Dateisysteme, damit VM-Images von mehreren Hosts genutzt werden können.
Unterstützung verschiedener Hardwarearchitekturen
KVM lässt sich auf vielen verschiedenen Hardwareplattformen ausführen. Wird KVM als Teil von Red Hat Enterprise Linux 9 genutzt, wird es mit 64-Bit AMD-, Intel- und ARM-Architekturen sowie IBM z13-Systemen und höher unterstützt.
Live Migration
KVM unterstützt Live Migrations, also die Möglichkeit, eine VM während der Ausführung zwischen physischen Hosts zu migrieren, ohne dass es zu einer merklichen Unterbrechung des Service kommt. Die VM und ihre Netzwerkverbindungen bleiben dabei aktiv und betroffene Anwendungen werden weiterhin ausgeführt. KVM speichert außerdem den aktuellen Zustand der VM, so dass dieser erhalten bleibt und später wieder aufgenommen werden kann.
Wie werden VMs mit KVM gemanagt?
Wenn Sie mehrere VMs ausführen, ist ein Virtualisierungsmanagementtool nützlich, um den Überblick zu behalten. Einige VM-Managementtools werden über die Befehlszeile ausgeführt, andere bieten grafische Benutzeroberflächen (GUIs) und wieder andere wurden für das Management von VMs in großen Unternehmensumgebungen entworfen. Im Folgenden sind einige gängige Virtualisierungsmanagementlösungen für KVM aufgeführt.
libvirt und virsh
Das libvirt-Projekt bietet eine API für die Verwaltung von Virtualisierungsplattformen. In libvirt gibt es das Befehlszeilentool virsh, mit dem Sie VMs erstellen, starten, auflisten und stoppen sowie eine Virtualisierungs-Shell aufrufen können.
Virtual Machine Manager
Virtual Machine Manager (auch bekannt als VMM oder virt-manager) bietet eine Desktopoberfläche für VMs und ist für die wichtigen Linux-Distributionen verfügbar.
Webkonsolen
VM-Admins können sich auch für die Verwaltung von VMs mit einer webbasierten Oberfläche entscheiden. Mit Cockpit lassen sich beispielsweise VMs über eine Webschnittstelle verwalten. Red Hat Enterprise Linux bietet ein Webkonsolen-Plugin für die Virtualisierung.
KubeVirt
KubeVirt ist eine Lösung zum Verwalten einer großen Anzahl von VMs in einer Kubernetes-Umgebung, in der VMs zusammen mit containerisierten Anwendungen gemanagt werden können. KubeVirt stellt die Basis für Red Hat OpenShift® Virtualization bereit.
Warum zu einer KVM-basierten Virtualisierungsplattform migrieren?
Ein Vorteil von VMs ist ihre Flexibilität – und auch ihre Portierbarkeit. Dank dieser Portierbarkeit können Sie eine VM von einem Virtualisierungsanbieter zum anderen verschieben, um geringere Kosten, zusätzliche Funktionen, eine bessere Kontrolle oder andere Vorteile zu nutzen.
Entwicklungsteams sehen KVM als eine ausgereifte Technologie an und Unternehmen bauen darauf, wenn es um die effiziente Handhabung von VMs in großem Umfang geht. Durch die Migration zu einer KVM-basierten Plattform wie dem Virtualisierungsportfolio von Red Hat können Sie vorhandene VM-Investitionen erhalten und gleichzeitig von einer Lösung mit Open Source-Basis profitieren. Die Technologien von Red Hat ermöglichen es Ihnen außerdem, eine einheitliche Umgebung für VMs, Container und Serverless-Anwendungen zu verwalten.
Warum Red Hat für die Virtualisierung?
KVM ist der Hypervisor im Virtualisierungsportfolio von Red Hat. Profitieren Sie von der Flexibilität und den Vorteilen eines Open Source-Hypervisors wie KVM in Kombination mit der Sicherheit, die Ihnen der unternehmensgerechte Support, die Sicherheitsfunktionen und die Stabilität von Red Hat bieten.
Die bewährten Produkte und das Partnernetzwerk von Red Hat wurden in einer umfassenden Virtualisierungslösung vereint. Migrieren Sie Ihre virtuellen Maschinen jetzt zu Red Hat OpenShift Virtualization, einer modernen Anwendungsplattform, die auf den Open Source-Projekten KVM und KubeVirt basiert und virtuelle Maschinen und Container parallel ausführen kann. Das enthaltene Migrations-Toolkit für die Virtualisierung bietet Ihnen die Tools, die Sie für die Migration in wenigen, einfachen Schritten benötigen. Beschleunigen Sie mithilfe von Automatisierung die Bereitstellung mit Red Hat Ansible® Automation Platform – von der Migration in großem Umfang bis hin zu Day-2-Operationen und Fehlerbehebung. Überwachen Sie die Sicherheit und Performance Ihrer VMs über eine einzige Konsole mit Red Hat Advanced Cluster Management for Kubernetes. Red Hat bietet zusätzliche Supportoptionen und Partnerintegrationen für Storage, Backup, Disaster Recovery und Netzwerke. So können Sie sich darauf verlassen, dass Ihre virtuelle Infrastruktur in der gesamten Hybrid Cloud problemlos ausgeführt und auf eine zukünftige Modernisierung vorbereitet wird.
Der offizielle Red Hat Blog
Lernen Sie mehr über unser Ökosystem von Kunden, Partnern und Communities und erfahren Sie das Neueste zu Themen wie Automatisierung, Hybrid Cloud, KI und mehr.