Xen
{{Dieser Artikel|beschäftigt sich mit der Virtualisierungssoftware Xen. Für weitere Bedeutungen siehe Xen (Begriffsklärung).}}
{{Infobox Software| Logo = 250px|Xen-Logo
| Screenshot = 250px
| Beschreibung =
| Hersteller = Universität Cambridge
| AktuelleVersion = 4.1
| AktuelleVersionFreigabeDatum = 25. März 2011
| Betriebssystem = plattformübergreifend
| Programmiersprache =
| Kategorie = Virtualisierung
| Lizenz = GPL (Freie Software)
| Deutsch = nein
| Website = [http://www.cl.cam.ac.uk/Research/SRG/netos/xen/ www.cl.cam.ac.uk/../xen/]
[http://www.xen.org/ 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 weiterentwickelt.
Technische Details
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 physischer 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 spezielle Hardware, beispielsweise Prozessoren mit AMD-V (auch Pacifica genannt) oder Intel VT (auch Vanderpool genannt). 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 Betriebssystemkernels vollen Hardwarezugriff und könnten aufgrund fehlerhaftem oder böswilligem Code 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
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.http://www.internetnews.com/dev-news/article.php/3674346 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 SuSE Linux ab Version 9.3 und in Fedora Core Linux 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 GNU/Linux enthält seit Version 4 (Etch) einen Xen-Kernel.
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.Peter Siering: Xen/c't-Debian-Server (Kasten „Xen und der Linux-Kernel“), c't 19/2008, S. 222 oder [http://www.heise.de/ct/08/19/222/ online]
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-Version) 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.http://www.netbsd.org/ports/xen/howto.html
Sun hat Xen Anfang Oktober 2007 mit Nevada build 75 unter dem Namen xVM vollständig in OpenSolaris integriert, davor existierten Testversionen.[http://www.opensolaris.org/os/community/xen/ OpenSolaris Community: Xen]
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.Artikel [http://www.reactos.org/wiki/index.php/Xen_port Xen port] im Wiki von ReactOS
Einige Linux-Distributoren setzen zurzeit bei der Virtualisierung eher auf KVM. KVM verwendet die im Linux-Kern vorhandene Infrastruktur zum Ansteuern beispielsweise von Hauptprozessor oder Chipsatz. Diese Komponenten müssen für Xen portiert oder neu implementiert werden.Artikel [http://www.heise.de/open/artikel/Die-Woche-Virtualisierung-SCO-offene-Standards-969480.html Xen vs. KVM] (Stand: 1. April 2010)
Unterstützer und Zusammenarbeit
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.
Versionen
{| class="wikitable"|- class="hintergrundfarbe5"
! Version
! Veröffentlichung
! Bemerkungen
|-
| 1.0
| 9. September 2003http://xenfr.org/tiki-index.php?page=Roadmap+de+XEN
| |-
| 2.0
| 5. November 2004http://lwn.net/Articles/109789/
| |-
| 3.0
| 5. Dezember 2005http://www.heise.de/newsticker/meldung/Virtualisierungssoftware-Xen-3-0-freigegeben-155099.html http://www.linux-community.de/Internal/Nachrichten/Virtualisierung-neu-aufgelegt-Xen-3.0 http://web.archive.org/web/20051210024853/http://www2.getxen.com/news/pr120505b.html
|
- Unterstützung von Intel_VT für HVM-Gäste.
* Unterstützung der Intel IA64 Architektur.
Bis zur Version 3.0.4 kamen außerdem folgenden Features hinzu:
* Unterstützung der AMD Virtualisierungs-Technik.http://lists.xensource.com/archives/cgi-bin/mesg.cgi?a=xen-users&i=A95E2296287EAD4EB592B5DEEFCE0E9D4BA296%40liverpoolst.ad.cl.cam.ac.uk
* Unterstützung der PowerPC-Architektur.http://lists.xensource.com/archives/html/xen-devel/2006-10/msg00733.html
* Unterstützung eines grafischen Framebuffers für paravirtualisierte Gäste.http://lists.xensource.com/archives/html/xen-devel/2006-12/msg00889.html
|-
| 3.1
| 18. Mai 2007http://lists.xensource.com/archives/html/xen-announce/2007-05/msg00002.html
|
| 3.2
| 17. Januar 2008http://www.linux-magazin.de/NEWS/Xen-3.2-freigegeben
| PCI-Passthrough und ACPI S3 Standby-Modus für das Host-System.
|-
| 3.3
| 24. August 2008http://www.heise.de/newsticker/meldung/Hypervisor-Xen-3-3-0-steht-zum-Download-bereit-199040.html
| Verbesserungen am PCI-Passthrough und am Powermanagement.
|-
| 3.4
| 18. Mai 2009http://community.citrix.com/display/ocb/2009/05/18/Xen.org+Announces+Release+of+Xen+3.4+Hypervisorhttp://www.pro-linux.de/news/1/14211/xen-34-veroeffentlicht.html
| Enthält eine erste Version der „Xen Client Initiative“, kurz XCI.
|-
| 4.0
| 7. April 2010http://www.heise.de/newsticker/meldung/Virtualisierung-Xen-sucht-mit-Version-4-Anschluss-974343.html
| 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).http://www.xen.org/files/Xen_4_0_Datasheet.pdf
|-
| 4.1
| 25. März 2011http://blog.xen.org/index.php/2011/03/25/xen-4-1-releases/
| Unter anderem: Unterstützung für mehr als 255 Prozessoren, Verbesserung der Stabilität.
|}
Siehe auch
- Bochs
* Kernel-based Virtual Machine (KVM)
* Microsoft Virtual PC
* OpenVZ
* Parallels Workstation
* Proxmox VE
* QEMU
* User Mode Linux
* VirtualBox
* VMware
Literatur
- {{Literatur
|Autor=Andrej Radonic, Frank Meyer, Thomas Halinka
|Titel=Xen 3.2
|Verlag=Franzis' Verlag
|Ort=Poing
|Jahr=2008
|ISBN=978-3-7723-7247-6
}}
* {{Literatur
|Autor=Timo Benk, Henning Sprang, Jaroslaw Zdrzalek, Ralph Dehner
|Titel=Xen – Virtualisierung unter Linux
|Verlag=Open Source Press
|Ort=München
|Jahr=2007
|ISBN=978-3-937514-29-1
}}
* {{Literatur
|Autor=Hans-Joachim Picht
|Titel=Xen Kochbuch
|Verlag=O'Reilly Verlag
|Ort=Köln
|Jahr=2009
|ISBN=978-3-89721-729-4
}}
* {{Literatur
|Autor=Marcus Fischer
|Titel=Xen – Das umfassende Handbuch
|Verlag=Galileo Press
|Ort=Bonn
|Jahr=2009
|ISBN=978-3-8362-1118-5
}}
* {{Literatur
|Autor=David Chisnall
|Titel=The Definitive Guide to the Xen Hypervisor
|Verlag=Prentice Hall Press
|Ort=Upper Saddle River, NJ, USA
|Jahr=2007
|ISBN=978-0-13-234971-0
}}
Weblinks
- [http://xen.org/ Xen-Projekt-Website] (englisch)
* [http://www.netzwelt.de/news/84115-xen-virtuelle-server-windows-linux.html Einführung in Xen] (deutsch)
Grafische Verwaltungen
- [http://xenman.sourceforge.net/index.html XenMan] – firmiert jetzt unter dem „Namen“ oder Dachprojekt ConVirt
* [http://virt-manager.et.redhat.com/ RedHat Linux & Fedora Core Virtual Machine Manager]
* [http://www.openqrm.com/ openQRM] GPL
* [http://www.enomalism.com/ Enomalism] (GPL, mit kommerzieller Variante)
* [http://www.vadmin.de/ vAdmin] (kommerziell)
* [http://xenaccess.sourceforge.net/ XenAccess]
* [http://www.gplhost.com/software-dtc-xen.html DTC-Xen] – nur in Verbindung mit DTC Hosting System nützlich
* [http://xen-tools.org/software/xen-tools/ Xen-Tools]
* [http://www.karesansui-project.info Karesansui]
* [http://www.ispsystem.com VDSmanager]
* [http://www.lxcenter.org/ HyperVM]
* [http://www.xen-orchestra.com/ Xen-Orchestra]
* [http://code.google.com/p/ganeti/ Ganeti]
* [http://www.webmin.com/cloudmin.html Cloudmin] – VPS Verwaltung für Webmin
Einzelnachweise
Kategorie:Linux-Software
Kategorie:Unix-Software
ca:Xen
cs:Xen
da:Xen
Xen
es:Xen
fi:Xen
Xen
he:Xen
it:Xen
ja:Xen (仮想化ソフトウェア)
ko:젠
nl:Xen
pl:Xen
pt:Xen
ru:Xen
sv:Xen (virtualisering)
ta:சென்
zh:Xen
Text und Bilder dieses Beitrags stammen aus dem Artikel Xen der freien Enzyklopädie Wikipedia und stehen unter der GNU Free Documentation License. Die Liste der Autoren ist in der Wikipedia unter dieser Seite verfügbar, der Original-Artikel lässt sich hier bearbeiten.