Notice: Unexpected clearActionName after getActionName already called in /var/www/html/includes/context/RequestContext.php on line 338
Kernel-based Virtual Machine – Wikipedia Zum Inhalt springen

Kernel-based Virtual Machine

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Kernel based Virtual Machine)
Kernel-based Virtual Machine

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | Logo der Kernel-based Virtual Machine
Datei:Kvm running various guests.png
Basisdaten

Hauptentwickler Open Virtualization Alliance (OVA)
Entwickler Qumranet
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Linux-Kernel
Programmier­sprache C
Kategorie Hypervisor
Lizenz GNU General Public License
GNU Lesser General Public License
www.linux-kvm.org

Die Kernel-based Virtual Machine (KVM; {{Modul:Vorlage:lang}} Modul:Vorlage:lang:103: attempt to index field 'wikibase' (a nil value)) ist eine Infrastruktur des Linux-Kernels zur Virtualisierung, die auf mit den Hardware-Virtualisierungstechniken von Intel (VT) oder AMD (AMD-V) ausgestatteten x86-Prozessoren sowie auf der System-z-Architektur lauffähig ist. KVM wurde im Oktober 2006 veröffentlicht und ist ab Version 2.6.20<ref>Die Woche: Xen hat KVM vorbeiziehen lassen Artikel bei Heise open, vom 16. Juni 2011</ref> des Linux-Kernels in diesem enthalten. Es wurde unter der Federführung von Avi Kivity bei dem israelischen Unternehmen Qumranet entwickelt. Qumranet wurde im September 2008 von Red Hat gekauft.<ref>Red Hat investiert in Virtualisierung Artikel bei Heise open, vom 4. September 2008</ref> Es existieren auch Portierungen von KVM nach FreeBSD<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig FreeBSD Quarterly Status Report: Porting Linux KVM to FreeBSD.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 5. September 2014.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> und illumos<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig KVM on illumos.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 5. September 2014.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> in Form von Kernelmodulen.

Datei:Kernel-based Virtual Machine.svg
Überblick

KVM wurde zunächst für die x86-Plattform entwickelt und besteht für diese aus dem Kernel-Modul kvm.ko sowie aus den hardwarespezifischen Modulen kvm-intel.ko (für Intel-Prozessoren) oder kvm-amd.ko (für AMD-Prozessoren). Inzwischen gibt es KVM auch für weitere Plattformen wie PowerPC<ref>KVM läuft auf POWER-Rechnern (ADMIN-Magazin)</ref>, System z und Arm. KVM selbst nimmt keine Emulation vor, sondern stellt nur die Infrastruktur dazu bereit; QEMU ist derzeit die einzige Möglichkeit, diese zu nutzen. Dazu stellt QEMU für virtualisierte Gastsysteme die notwendigen Geräte wie Festplatten, Netzwerk-, Sound- und Grafikkarten zur Verfügung.<ref><templatestyles src="Webarchiv/styles.css" />Artikel bei ordix.de (Memento des Vorlage:IconExternal vom 16. Februar 2012 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.ordix.de Abgerufen am 22. April 2012</ref> Nach dem Laden des Moduls arbeitet der Linux-Kernel selbst als Hypervisor für virtuelle Maschinen. Als Gastsysteme unterstützt KVM Linux (32 und 64 Bit), Windows (32 und 64 Bit), Haiku, AROS, ReactOS, FreeDOS, Solaris und diverse BSD-Derivate. KVM läuft auch auf SMP-Hostsystemen, SMP-Gastsysteme sind ebenfalls möglich. Die Unterstützung für Paravirtualisierung ist mittlerweile in KVM vorhanden und wird unter Linux mittels der Paravirtualisierungsschnittstelle Virtio (seit Kernel 2.6.25 im Kernel enthalten) für Festplatten- und Netzwerkgerätetreiber zur Verfügung gestellt. Für Windows existieren ebenfalls paravirtualisierte Gerätetreiber. Vorteile sind ein geringerer Overhead sowie erhöhte Performance, da das Gastsystem „weiß“, dass es auf virtualisierter Hardware läuft und mit dem Hypervisor zusammenarbeitet.<ref>wiki.libvirt.org Aufgerufen am 22. April 2012</ref> Seit Kernel 3.1 unterstützt KVM nested Virtualization auf Intel-CPUs.<ref>Artikel bei golem.de Aufgerufen am 22. April 2012</ref> Für AMD-CPUs ist dies bereits ab Version 2.6.30 verfügbar. Nested Virtualization ermöglicht es Hostsystemen, die Virtualisierungsunterstützung der CPU für die Gastsysteme verfügbar zu machen, welche so ihrerseits „Unter“-Gäste virtualisieren können.<ref>Artikel bei heise.de Abgerufen am 22. April 2012</ref>

Bestandteile

Die Bestandteile von KVM sind Open-Source-Software und stehen unter verschiedenen Varianten der GPL-Lizenz zur Verfügung:

  • KVM-Kernel-Modul: GPL v2
  • KVM-Benutzer-Modul: LGPL v2
  • QEMU Systememulation (für x86: PC-Emulator): GPL v2
  • Linux-Usermode von QEMU: GPL v2
  • BIOS-Dateien (bios.bin, vgabios.bin und vgabios-cirrus.bin): LGPL v2 oder neuer

Bedeutung

Im Mai 2011 gründeten BMC Software, Eucalyptus Systems, HP, IBM, Intel, Red Hat und SUSE die Open Virtualization Alliance (OVA), um KVM für Virtualisierung und cloudbasierte Lösungen auf dem Markt zu etablieren. Dieser Organisation, die 2016 nach Erreichen des Zieles aufgelöst wurde, gehörten über 200 Mitglieder aus der ganzen Welt an.<ref><templatestyles src="Webarchiv/styles.css" />offizielle Seite der OVA (Memento des Vorlage:IconExternal vom 29. Oktober 2016 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.openvirtualizationalliance.org</ref> Die großen Distributoren Ubuntu,<ref>Artikel auf Golem Abgerufen am 23. April 2012</ref> Red Hat und SUSE Linux<ref>Artikel auf derstandard.de Abgerufen am 23. April 2012</ref> haben bei der präferierten Virtualisierungslösung schon seit einiger Zeit von Xen auf den Neuling KVM gewechselt.

KVM ist eine wesentliche Komponente der Cloud-Computing-Software OpenStack.

Neben kommerziellen Anbietern setzen auch öffentliche Anbieter wie beispielsweise die bwCloud der baden-württembergischen Hochschulen und Universitäten auf KVM. 2017 hat das Bundesamt für Sicherheit in der Informationstechnik eine Sicherheitsanalyse für KVM durchgeführt und dabei festgehalten, „dass die untersuchten Komponenten – allen voran KVM, QEMU und libvirt – dazu geeignet sind, eine technisch ausgereifte und sichere Virtualisierungsumgebung zu realisieren“.<ref>Sicherheitsanalyse KVM (Kernel-based Virtual Machine). BSI, archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 13. Oktober 2017; abgerufen am 13. Oktober 2017.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.bsi.bund.de</ref>

Verwaltungswerkzeuge

Datei:Libvirt support.svg
Kernel-based Virtual Machine wird von libvirt unterstützt

Für KVM sind mehrere Programme zur Steuerung möglich.<ref>linux-kvm.org: Sehr detaillierte Auflistung der vorhandenen Verwaltungswerkzeuge für KVM</ref> So ist es möglich, virtuelle Maschinen mit Hilfe von Kommandozeilenprogrammen wie qemu/kvm oder virsh zu erstellen.

Angenehmer und übersichtlicher gelingt dies jedoch mit grafischen Frontends wie dem Virtual Machine Manager (VMM), AQemu oder dem UCS Virtual Machine Manager.

Weitere kostenlose Management Möglichkeiten für Heimanwender sind Cockpit sowie Kimchi, ein in HTML5 geschriebenes Verwaltungswerkzeug.

Cockpit kann um Cockpit-Machines und Cockpit-Podman erweitert werden, um KVM-Maschinen und Docker-Container zu verwalten.

Es existieren auch Lösungen, die das Management über Weboberflächen und somit das Verteilen einer virtuellen Infrastruktur in Firmen ermöglichen.

Als Lösungen für den Enterprise Bereich sind Nutanix und Proxmox VE, oVirt, Openstack vorhanden.

Das oVirt-Projekt und die darauf aufbauende kommerzielle Redhat Enterprise Virtualization<ref>offizielle Seite von KVM</ref>

Die FOSS-Cloud, welche als reine Open-Source-Lösung zur Verfügung steht,<ref>Seite der FOSS-Cloud</ref>

Die Open-Source-Virtualisierungslösung Proxmox VE dient als Managementplattform für KVM und LXC Container<ref>Artikel auf Admin-Magazin.de Abgerufen am 8. Juni 2017</ref>. Proxmox nutzt allerdings kein libvirt.

Es bestehen auch andere kommerzielle Lösungen für das Aufbauen virtueller Desktop- und Serverinfrastrukten wie beispielsweise VERDE von Virtual Bridges. Diese Lösungen sind jedoch bisher nicht sonderlich weit verbreitet.<ref><templatestyles src="Webarchiv/styles.css" />Seite von Virtual Bridges (Memento des Vorlage:IconExternal vom 23. Januar 2012 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.brianmadden.com</ref>

Besonderheiten

KVM ist eine Erweiterung von QEMU. QEMU ist formal ein Typ2-Hypervisor. Dies bedeutet, dass er im nicht privilegierten Ring 3 läuft. Hierzu besteht eine historische Debatte, ob KVM wirklich ein reiner Typ2-Hypervisor ist, da auch Teile in Ring 0 laufen, was für einen Typ1-Hypervisor spricht.<ref>Artikel auf datacenter-insider.de Aufgerufen am 22. April 2012</ref>

Laut Angaben von Red Hat ist KVM ein Typ 1 Hypervisor.<ref>Was ist KVM?, auf redhat.com</ref> Tatsächlich ist es wohl eine Hybride.

Siehe auch

Literatur

  • Christoph Arnold, Michel Rode, Jan Sperling, Andreas Steil: KVM Best Practices. Virtualisierungslösungen für den Enterprise-Bereich. dpunkt-Verlag, Heidelberg 2012, ISBN 978-3-89864-737-3.

Weblinks

Einzelnachweise

<references responsive />

Vorlage:Hinweisbaustein