Xen

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel beschäftigt sich mit der Virtualisierungssoftware Xen. Für weitere Bedeutungen siehe Xen (Begriffsklärung).
Xen
Xen-Logo
Xen screenshot.png
Basisdaten
Entwickler University of Cambridge
Aktuelle Version 4.4.1
(3. September 2014)
Betriebssystem plattformübergreifend
Kategorie Virtualisierung
Lizenz GPL (Freie Software)
Deutschsprachig nein
www.cl.cam.ac.uk/../xen/
www.xen.org

Xen ist ein Hypervisor, also eine Software, die den Betrieb mehrerer virtueller Maschinen auf einem physischen Computer erlaubt. Sie entstand an der britischen Universität Cambridge und wird heute von dem US-Unternehmen Citrix Systems weiterentwickelt.

Technische Details[Bearbeiten]

Xen ist ein Hypervisor (auch Virtual Machine Monitor (VMM) genannt), der direkt auf einer Hardware läuft. Xen kann mehrere Betriebssysteme in virtuellen Maschinen starten, den sogenannten Domänen. Für diese Betriebssysteme sind weder der Hypervisor noch andere Domänen „sichtbar”. Vom Prinzip her ist das Vorgehen vergleichbar mit virtuellem Speicher und Prozessen: Durch den virtuellen Speicher kann jeder Prozess (hier: das virtuelle System) den Speicher so nutzen, als wäre er der einzige Prozess, der vom Betriebssystem ausgeführt wird. Genauer gesagt: Der Hypervisor weist dem virtuellen System Teilbereiche des gesamten Hauptspeichers zu. Diese erscheinen dem virtuellen System als zusammenhängender Adressraum, so wie der physische Speicher einem nicht virtuellen System erscheint. Er kann vom virtuellen System entsprechend und exklusiv genutzt werden.

Eine besondere Bedeutung hat die erste Domäne, die von Xen gestartet wird: Diese Domäne ist privilegiert und dient der Interaktion mit dem eigentlichen Hypervisor. Die privilegierte Domäne, Dom0 genannt, kann andere Domänen starten, stoppen und verwalten. Dazu muss diese Verwaltungsfunktionalität in das Betriebssystem integriert werden, das in der Dom0 läuft.

Um völlig transparent für die unprivilegierten Domänen, häufig DomU genannt, zu sein, benötigt Xen einen Hauptprozessor mit der Befehlssatzerweiterung Secure Virtual Machine, wie beispielsweise Intel VT oder AMD-V. Mit dieser Hardware müssen die Betriebssysteme, die in den Domänen laufen, nicht angepasst werden – sie „bemerken” nicht, dass sie die Hardware in Wirklichkeit mit anderen Systemen teilen. Diese Betriebsart wird als volle Virtualisierung oder Hardware Virtual Machine (HVM) bezeichnet. Wird auf anderer Hardware virtualisiert, haben die jeweiligen Kernels vollen Hardwarezugriff und könnten aufgrund fehlerhaften oder böswilligen Codes auf jeweils fremde Ressourcen (z. B. Hauptspeicher) zugreifen, was aus Gründen der Stabilität und Sicherheit des Ganzen nicht erwünscht ist.

Die Effizienz virtualisierter Systeme kann gesteigert werden, indem Unterstützung für den Betrieb als DomU in das Betriebssystem integriert wird. Dieser Ansatz wird als Paravirtualisierung bezeichnet und erfordert eine Modifikation des Systems, das in einer DomU laufen soll.

Unterstützte Betriebssysteme[Bearbeiten]

Der Linux-Kernel stellt ab Version 2.6.21 die Rahmenbedingungen für den Betrieb unterhalb eines beliebigen Hypervisors in Form von sogenannten paravirt ops bereit. Seit Version 2.6.23 ist eine eingeschränkte Unterstützung für den Betrieb unter Xen integriert.[1] Dieser Basis-Support unterstützt jedoch zahlreiche Möglichkeiten von Xen nicht, beispielsweise das (dynamische) Durchreichen von PCI-Geräten oder dynamische Speichervergrößerungen.

In den Linux-Distributionen openSUSE ab Version 9.3 und in Fedora ab Version 4 ist Xen bereits integriert. Ebenfalls enthalten ist Xen im Novell/SUSE Linux Enterprise Server (SLES) ab Version 10 und im Red Hat Enterprise Linux 5 (RHEL5). Gentoo Linux bietet ebenfalls einen Xen-modifizierten Kernel an, jedoch ist er noch als unstable (instabil) markiert. Debian enthält seit Version 4 (Etch) einen Xen-Kernel. Xen 3.1 hielt im Dezember 2007 Einzug in Univention Corporate Server 2.0 und ist seither Bestandteil der Enterprise-Distribution, die auf Debian GNU/Linux basiert.[2]

Bei den Versionen bis Xen 3.x ist für den Betrieb als Dom0 oder als vollwertige native DomU nur der „offizielle“ Linux-Kernel-Quellcode von Xen verwendbar, der lediglich in der Version 2.6.18.8 vorliegt. Durch die aktive Entwicklung am Linux-Kernel lässt sich der Patch für diese Version nicht ohne erheblichen Aufwand auf einen aktuellen Kernel anwenden. So wurde die aufwändige Praxis, die Xen-Patches an aktuellere Versionen anzupassen, beispielsweise von Debian vor kurzem eingestellt.[3]

Seit Xen 4.0 unterstützt Xen per default auch die Standard-Kernel-Option PVOps für seine dom0-Kernel in Kernel-Version 2.6.31.x. Weiter ist eine Long-Term-Support-Version (LTS) unter pvops und dem Linux-Kernel 2.6.32.x für dom0-Kernel verfügbar. Trotzdem bleibt die Kompatibilität zum bisherigen 2.6.18-Kernel auch weiterhin erhalten und es sind weitere Xen-Patches für diese Version sowie auch für einige Kernel mit Forward-Patches (wie dem Kernel von RHEL 5.x) geplant.

NetBSD 2.0 unterstützte Xen 1.2 als Host und Gast sowie Xen 2.0 nur als Gast, die Version NetBSD 3.1 unterstützt Xen 2.0 komplett, also als Host und Gast, sowie Xen 3.0 als Gast. Seit NetBSD 4.0 wird Xen 3.0 vollständig unterstützt.[4]

Sun hat Xen Anfang Oktober 2007 mit Nevada build 75 unter dem Namen xVM vollständig in OpenSolaris integriert, davor existierten Testversionen.[5]

Auf der Novell BrainShare Conference stellte Novell 2005 eine Portierung von NetWare auf Xen vor.

An einer Portierung von ReactOS auf Xen wird seit 2005 gearbeitet.[6]

Unterstützer und Zusammenarbeit[Bearbeiten]

Zu den Unterstützern von Xen zählen weltweit agierende IT-Konzerne – selbst direkt stark untereinander konkurrierende Unternehmen vereinen sich unter diesem Dach, unter anderem: Microsoft und Sun/Oracle, Intel und AMD, IBM, HP, Red Hat und Novell/SUSE.

Die Open-Source-Software Xen entstand ursprünglich an der Universität Cambridge. Die Entwickler haben mit XenSource ein Unternehmen gegründet, das Xen zum Industriestandard machen soll. Die Firma XenSource wurde im August 2007 für 500 Millionen US-Dollar durch die Firma Citrix Systems übernommen.

Anfang 2013 wurde Xapi dann zusammen mit Xen.org wieder zurück an das Xen-Project übertragen, das unter dem Dach der Linux-Foundation arbeitet. Xapi ist heute demnach ein Unterprojekt des Xen-Projects.

Versionen[Bearbeiten]

Version Veröffentlichung Bemerkungen
1.0 9. September 2003[7]
2.0 5. November 2004[8]
3.0 5. Dezember 2005[9][10][11]
  • Unterstützung von Intel VT für HVM-Gäste.
  • Unterstützung der IA-64-Architektur.

Bis zur Version 3.0.4 kamen außerdem folgenden Features hinzu:

3.1 18. Mai 2007[15]
3.2 17. Januar 2008[16] PCI-Passthrough und ACPI-S3-Standby-Modus für das Host-System.
3.3 24. August 2008[17] Verbesserungen am PCI-Passthrough und am Powermanagement.
3.4 18. Mai 2009[18][19] Enthält eine erste Version der „Xen Client Initiative“, kurz XCI.
4.0 7. April 2010[20] Schafft die Voraussetzungen, um einen mittels PVOps implementierten dom0-Kernel nutzen zu können. Ein Kernel in Version 2.6.31 wurde speziell für diesen Zweck angepasst, da die auf PVOps aufbauenden Funktionen des offiziellen Kernels noch nicht den Betrieb als dom0 unterstützen (Stand Juli 2010).[21]
4.1 25. März 2011[22] Unter anderem: Unterstützung für mehr als 255 Prozessoren, Verbesserung der Stabilität.
4.2 17. September 2012[23] Unter anderem neues Standardmanagementwerkzeug (XL statt xend), Unterstützung größerer Systeme (bis zu 4095 Prozessoren), Fortentwicklungen des Sicherheitssubsystems und Bemühungen um bessere Dokumentation.
4.3 9. Juli 2013[24] Experimenteller Support für ARM-Virtualisierung, NUMA-aware scheduling, Support für openvswitch als Bridging-Mechanismus, verbesserte Sicherheit, PCI-Passthrough.[25][26]
4.4 10. März 2014[27] Produktreifer ARM-Support, stabiler "libvirt" support für "libxl", skalierbares Event-Channel-Interface, Nested Virtualization auf Intel-Hardware.[28][29]

Siehe auch[Bearbeiten]

Literatur[Bearbeiten]

  •  Andrej Radonic, Frank Meyer, Thomas Halinka: Xen 3.2. Franzis' Verlag, Poing 2008, ISBN 978-3-7723-7247-6.
  •  Timo Benk, Henning Sprang, Jaroslaw Zdrzalek, Ralph Dehner: Xen – Virtualisierung unter Linux. Open Source Press, München 2007, ISBN 978-3-937514-29-1.
  •  Hans-Joachim Picht: Xen Kochbuch. O'Reilly Verlag, Köln 2009, ISBN 978-3-89721-729-4.
  •  Marcus Fischer: Xen – Das umfassende Handbuch. Galileo Press, Bonn 2009, ISBN 978-3-8362-1118-5.
  •  David Chisnall: The Definitive Guide to the Xen Hypervisor. Prentice Hall Press, Upper Saddle River, NJ, USA 2007, ISBN 978-0-13-234971-0.

Weblinks[Bearbeiten]

Grafische Verwaltungen[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. http://www.internetnews.com/dev-news/article.php/3674346
  2. http://www.heise.de/open/meldung/Erste-Beta-des-neuen-UCS-2-0-170709.html
  3. Peter Siering: Xen/c't-Debian-Server (Kasten „Xen und der Linux-Kernel“), c't 19/2008, S. 222 oder online
  4. http://www.netbsd.org/ports/xen/howto.html
  5. OpenSolaris Community: Xen
  6. Artikel Xen port im Wiki von ReactOS
  7. http://sourceforge.net/mailarchive/forum.php?forum_name=xen-announce&max_rows=50&style=nested&viewmonth=200309
  8. http://lwn.net/Articles/109789/
  9. http://www.heise.de/newsticker/meldung/Virtualisierungssoftware-Xen-3-0-freigegeben-155099.html
  10. http://www.linux-community.de/Internal/Nachrichten/Virtualisierung-neu-aufgelegt-Xen-3.0
  11. http://web.archive.org/web/20051210024853/http://www2.getxen.com/news/pr120505b.html
  12. http://lists.xensource.com/archives/cgi-bin/mesg.cgi?a=xen-users&i=A95E2296287EAD4EB592B5DEEFCE0E9D4BA296%40liverpoolst.ad.cl.cam.ac.uk
  13. http://lists.xensource.com/archives/html/xen-devel/2006-10/msg00733.html
  14. http://lists.xensource.com/archives/html/xen-devel/2006-12/msg00889.html
  15. http://lists.xensource.com/archives/html/xen-announce/2007-05/msg00002.html
  16. http://www.linux-magazin.de/NEWS/Xen-3.2-freigegeben
  17. http://www.heise.de/newsticker/meldung/Hypervisor-Xen-3-3-0-steht-zum-Download-bereit-199040.html
  18. http://community.citrix.com/display/ocb/2009/05/18/Xen.org+Announces+Release+of+Xen+3.4+Hypervisor
  19. http://www.pro-linux.de/news/1/14211/xen-34-veroeffentlicht.html
  20. http://www.heise.de/newsticker/meldung/Virtualisierung-Xen-sucht-mit-Version-4-Anschluss-974343.html
  21. http://www.xen.org/files/Xen_4_0_Datasheet.pdf
  22. http://blog.xen.org/index.php/2011/03/25/xen-4-1-releases/
  23. http://blog.xen.org/index.php/2012/09/17/xen-4-2-0-released/
  24. http://blog.xen.org/index.php/2013/07/09/xen-4-3-0-released/
  25. http://wiki.xenproject.org/wiki/Xen_4.3_Feature_List
  26. http://www.heise.de/open/meldung/Virtualisierer-Xen-4-3-jetzt-auch-fuer-ARM-1914140.html
  27. http://blog.xen.org/index.php/2014/03/10/xen-4-4-released/
  28. http://wiki.xenproject.org/wiki/Xen_4.4_Feature_List
  29. http://www.heise.de/newsticker/meldung/Xen-4-4-virtuelle-Maschinen-fuer-ARM-2139439.html