Hypervisoren für Virtualisierung unter Linux: Xen versus KVM

Als Hypervisior für Virtualisierungen unter Linux bietet der Open-Scource-Bereich eine hervorragende Lösung: Xen. Die Stabilität spricht für Xen.

Unter Linux kann man mit Xen und KVM auf zwei frei verfügbare Hypervisoren aus dem Open-Source-Bereich zurückgreifen.

Xen ist der etabliertere der beiden und ein Hypervisor vom Typ 1, der also direkt auf die Hardware aufsetzt. Er bildet die Grundlage für eine Reihe von kommerziellen Produkten, darunter Citrix Systems XenServers und Oracle VM. Als Argument für Xen wird dessen Stabilität angeführt, wie auch die Tatsache, dass er über ein vielfältiges Ökosystem von Tools zur Verwaltung verfügt. Und nicht zuletzt spricht auch die exzellente Performance für Xen.

In letzter Zeit haben sich jedoch verschiedene Linux-Anbieter, darunter Red Hat und Canonical (der Sponsor von Ubuntu) für die sogenannte Kernel-based Virtual Machine (KVM) engagiert. Dabei handelt es sich um einen leichtgewichtigen Hypervisor, der als Modul des offiziellen Linux-Kernels realisiert ist. KVM ist noch ein Neuling, aber die Klasse und Einfachheit seiner Implementierung und die dauerhafte Unterstützung durch die Schwergewichte der Linux-Welt lassen ihn als eine geeignete Alternative erscheinen.

In diesem Artikel werden zwei IT-Experten das Pro und Contra von Xen und KVM diskutieren und dabei jeweils den Hypervisor verteidigen, den sie für die Virtualisierung unter Linux bevorzugen.

Andi Mann: Sechs Gründe, die für Xen und gegen KVM sprechen

Sander van Vugt: KVM schlägt Xen durch bessere Linux-Integration

Sechs Gründe, die für Xen und gegen KVM sprechen

Von Andi Mann, Autor

Wenn man in der Open-Source-Welt die Virtualisierungslösungen Xen und KVM vergleicht, dann geht Xen hieraus als Sieger hervor, und zwar aus den folgenden sechs klaren Gründen: bessere Verfügbarkeit von Ressourcen, Unterstützung verschiedener Plattformen, Features zur Verwaltung, Implementierung, Live Migration sowie Performance-Benchmarks.

  1. Ressourcen: Xen ist vier Jahre früher veröffentlicht worden als KVM (2003 versus 2007). Es gibt Implementierungen von Citrix, Novell, Oracle, Sun, Red Hat und Virtual Iron, was es einfacher macht, IT-Fachleute zu finden, die sich mit Xen auskennen, oder eine Schulung dafür zu absolvieren. Ebenso sind Berater und Zertifizierungen für Xen leichter zu finden. Diese Punkte stehen an zentraler Stelle für jene 60 Prozent der Unternehmen, die laut einem Bericht aus dem Jahr 2008 (erstellt von Enterprise Management Associates / EMA zum Thema Virtualisierungs- und Management-Trends) nicht selbst über die erforderliche Expertise und die notwendigen Ressourcen für diese Technologie verfügen.
  2. Plattform-Unterstützung: Xen unterstützt gegenwärtig ein größere Anzahl von Host- und Gast-Systemen, darunter paravirtualisierte und Hardware-gestützte Systeme sowie modifizierte und unmodifizierte Gastsysteme unter UNIX, Linux sowie Windows (mit direkter Unterstützung von Microsoft). Weiterhin werden eine Reihe von Chipsets unterstützt, darunter x86, IA64 und die ARM-Implementierungen von AMD, Fujitsu, IBM und Sun sowie eingebettete Systeme des x86/64-Herstellers Intel.
  3. Features zur Verwaltung: Nach einer EMA-Studie aus dem Jahr 2009 über die Verwaltung virtueller Systeme stellen die solche Features bei 83 Prozent aller Unternehmen einen zentralen oder zumindest wichtigen Faktor dar, wenn es um die Entscheidung für oder gegen eine Virtualisierungslösung geht. Vergleicht man die beiden Hypervisoren in dieser Hinsicht, dann wird ersichtlich, dass die Unterstützung für Xen auf der Grundlage eines viel breiteren Ökosystems von Drittanbietern besteht; abgedeckt werden Bereiche wie Provisionierung, Backups, Storage-Management, P2V, Kapazitätsplanung, Performance-Überwachung, Prozess-Automatisierung, Sicherheit und andere Aspekte. Zu den Anbietern gehören hier Citrix, IBM, CA, Novell/Platespin, Enomaly, Microsoft, HP, Quest/Vizioncore, Sun, Oracle, Symantec und sogar VMware (über Hyperic). Für KVM dagegen stellt nicht einmal Red Hat entsprechende leistungsfähige Tools bereit, und selbst die für die Zukunft versprochenen KVM-Features werden auf absehbare Zeit nicht an die von Xen herankommen.
  4. Implementierung: Ob KVM nun zum „Typ 1“ oder „Typ 2“ gehört, ist eher eine Frage der Semantik. Xen wird auf einer niedrigen Ebene (Ring 0) ausgeführt und verwaltet, auch bei der Erstellung von neuen virtuellen Maschinen. Die verschiedenen Gast-Systeme verwenden nicht dieselben Speicher-Blöcke, CPU-Instruktionen oder andere darunter liegende (wenn auch manchmal unprivilegierte) Komponenten des Linux-Betriebssystems wie bei KVM. KVM leidet daher unter Problemen in den Bereichen Performance, Latenz, Sicherheit, Skalierbarkeit, Isolierbarkeit und anderen. Bei einem Hypervisor wie Xen, der direkt auf die Hardware zugreift, treten diese nicht auf.
  5. Keine Live Migration bei KVM: Die meisten Argumente, die schon beim Vergleich von VMware ESX mit Microsofts Hyper-V vorgebracht wurden, treffen heute auch auf den Vergleich von Xen und KVM zu. Aber hier handelt es sich um ein wirklich entscheidendes Feature: Anders als KVM erlaubt Xen eine unterbrechungsfreie Migration im laufenden Betrieb für dynamischen Last-Ausgleich und Routine-Wartung praktisch ohne Ausfallzeiten. Bei KVM dagegen kann man solche Ausfallzeiten nicht umgehen.
  6. Performance: Die meisten Benchmark-Vergleiche zeigen, dass Xen mit seiner (nahezu nativen) Performance besser abschneidet als KVM; beim Disk-I/O erweist sich Xen als nur unwesentlich langsamer als KVM. Außerdem haben unabhängige Tests gezeigt, dass die Performance bei KVM in dem Maße leidet, wie Workloads hinzugefügt werden, und dass es regelmäßig zu einem Absturz kommt, wenn man versucht, mehr als vier Gast-Systeme damit zu betreiben. Xen dagegen unterstützt bis zu 30 oder mehr gleichzeitig laufende Workloads bei einer linearen Leistungscharakteristik.

Ein weiterführender Vergleich zwischen den beiden Hypervisoren würde zeigen, dass Xen auch in anderen Bereichen überlegen ist: bei der Unterstützung von virtuellen Netzwerken und virtuellem Storage, bei erweiterten Sicherheitsfeatures, Hochverfügbarkeit,  Fehlertoleranz und beim Power-Management, bei der Hochleistungs-/Echtzeit-Unterstützung und der virtuellen CPU-Skalierbarkeit, bei der Anbieter übergreifenden Kompatibilität und VM-Portierbarkeit sowie in Bezug auf den Markt für virtuelle Appliances und das  Ökosystem um Cloud-Services. KVM ist aus technischer Sicht beeindruckend und für einige Anwendungen sehr gut zu gebrauchen, hat aber andererseits einen gewaltigen Rückstand gegenüber Xen aufzuholen, wenn es um Lösungen für Server-Virtualisierung in der Enterprise-Klasse geht.

Andi Mann ist Vice President für Research, Systems und Storage Management des IT-Analysehauses Enterprise Management Associates (EMA). Er verfügt über mehr als 20 Jahre Erfahrung als IT-Experte sowohl in technischen als auch in Führungspositionen und hat sich dabei mit Enterprise-Systemen und Unternehmenssoftware auf Mainframes, Servern und Desktops befasst. Mann leitet den EMA-Forschungsbereich Systems Management, wo sein Interesse vor allem der Automatisierung von Rechenzentren und der Virtualisierung gilt. Weitere Informationen finden Sie auf der Webseite von EMA.

KVM schlägt Xen durch bessere Linux-Integration

Von Sander van Vugt, Autor

Auch ohne umfangreiche Benchmark-Studie zum Vergleich der Performance von Xen und KVM lassen sich sehr überzeugende Gründe dafür finden, warum man es den führenden Linux-Anbietern Red Hat und Ubuntu gleichtun und einen Wechsel zu KVM in Betracht ziehen sollte. Der wichtigste und und nahe liegendste Grund ist natürlich, dass KVM Teil des Betriebssystem-Kerns von Linux ist; Xen dagegen operiert in einer Schicht, die neben diesem Kernel liegt.

Dies ist deswegen von Bedeutung, weil sich die für die Xen-Umgebung eingereichten Patches in der Vergangenheit oftmals als inkompatibel zum Linux-Kernel erweisen haben. Mit KVM wird dieses Problem auf einfache Weise umgangen. In der Art der Implementierung von KVM liegt auch ein weiterer Grund, warum man sich dafür  entscheiden sollte: Da KVM als Teil des Linux-Kernels selbst realisiert wird, kann der Prozess der Virtualisierung leichter kontrolliert werden.

Die Verfechter von Xen führen oft an, dass KVM noch nicht den Grad der Reife erreicht habe wie Xen. KVM lasse einige entscheidende Features vermissen, etwa Live Migration und Paravirtualisierung. Richtig ist, dass unter Xen laufende Systeme effizienter sind, solange sie mittels Paravirtualisierung direkt auf die Hardware zugreifen können. Allerdings benötigt man für diese Paravirtualisierung ein modifiziertes Betriebssystem – eine Standard-Installation von Windows ist in einer paravirtualisierten Umgebung nicht lauffähig. Und was die Live Migration betrifft, so funktioniert diese bei KVM durchaus, solange man die richtige Version verwendet. Es stimmt, dass dieses Feature früher Probleme bereitet hat, aber dies wurde mittlerweile behoben.

KVM hat zudem den Vorteil einer größeren Flexibilität. Da die Betriebssysteme hier mit einem Hypervisor kommunizieren, der Teil des Linux-Kernels ist, können sie die Hardware immer direkt ansprechen, ohne dass eine Modifikation des virtualisierten Systems nötig ist. Dies ist deswegen von Bedeutung, weil die virtuellen Maschinen dadurch schneller laufen können. Auch die Tatsache, dass KVM einen Prozessor mit Unterstützung für die Virtualisierungstechniken Pacifica (AMD) bzw. Vanderbilt (Intel) benötigt, stellt kaum eine Einschränkung dar, denn die meisten Server sind ohnehin mit solchen CPUs ausgestattet.

Einleuchtender ist zunächst das Argument, dass Xen schon länger zur Verfügung steht und daher ein reiferes Produkt darstellt, und dass es deswegen einer Virtualisierung mittels KVM vorzuziehen sei. Auf längere lange Sicht aber wird Xen mehr und mehr zu einer Bürde für den jeweils verwendeten Linux-Kernel werden, weil es ihm an einer einwandfreien Integration mangelt. Und dieses Problem wird gewiss nicht verschwinden – trotz aller diesbezüglichen Anstrengungen der Xen-Entwickler.

Letztlich läuft alles auf die Tatsache hinaus, dass KVM ein Teil von Linux selbst ist; Xen dagegen kann bestenfalls bis zu einem gewissen Grad in Linux integriert werden. Red Hat, gegenwärtig der Sponsor von KVM und die Nummer Eins der Linux-Welt auf dem Enterprise-Markt, wird sicher daran arbeiten, dass die viel versprechende KVM-Technologie im Laufe der Zeit eine ebenso lange Liste von Features vorweisen kann wie Xen. Die Zukunft gehört deshalb KVM.

Sander van Vugt lebt und arbeitet in den Niederlanden als selbständiger Dozent und Berater. Er ist Linux-Experte auf den Gebieten Hochverfügbarkeit, Virtualisierung und Performance und hat eine Reihe von Projekten realisiert, bei denen alle drei dieser Aspekte eine Rolle spielten. Er ist außerdem Autor verschiedener Bücher zum Thema Linux, darunter Beginning the Linux Command Line, Beginning Ubuntu Server Administration und Pro Ubuntu Server Administration.

Artikel wurde zuletzt im Mai 2011 aktualisiert

Erfahren Sie mehr über Virtualisierung: Anbietervergleich

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchEnterpriseSoftware.de

Close