Xen - Voraussetzungen

39
Marcus Fischer Xen Das umfassende Handbuch

Transcript of Xen - Voraussetzungen

Page 1: Xen - Voraussetzungen

Marcus Fischer

XenDas umfassende Handbuch

Page 2: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 157 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

»Das Gewöhnliche gibt der Welt ihren Bestand,das Außergewöhnliche ihren Wert.«

Oscar Wilde (1854–1900),Schriftsteller

4 Xen

Was Sie in diesem Kapitel erwartet

In den beiden vorangegangenen Kapiteln haben wir uns ausführlich mit der Geschich-te und den Grundlagen der Virtualisierung beschäftigt. In diesem Kapitel möchte ichnun zum eigentlichen Thema dieses Buchs kommen: Xen. Die folgenden beidenKapitel 4, »Xen« und 5, »Voraussetzungen« sind hierbei als Einheit anzusehen undbeschäftigen sich mit den Grundlagen von Xen.

Im Anschluß daran beginnt ein neuer Teil des Buches, der sich zunächstmit den Grundlagen der Virtualisierung (Prozessor-, Speicher und E/A-Virtualisierung)beschäftigt, um sich dann in mehrern Kapiteln ausführlich der Architektur von Xenwidmet.

Benötigtes Vorwissen

Es sind keine Vorkenntnisse nötig.

4.1 Hintergrund

Nach einigen einführenden Worten über Virtualisierung im Allgemeinen möch-te ich Ihnen jetzt Xen etwas detaillierter vorstellen. Wir schlagen hierbei einenBogen von den Anfängen im universitären Umfeld bis zur heutigen kommerziel-len Produktpalette von Citrix, dem neuen Eigentümer von XenSource – aber derReihe nach.

4.1.1 Der Name

Der Begriff Xen ist mit großer Sicherheit eine Zusammensetzung aus den BegriffenLinux und Zen. Die englische Aussprache dieses Kunstwortes ist Zen mit einemweichen Z.

157

Page 3: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 158 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

Linux und Zen

Linux ist das populärste freie Betriebssystem der Welt mit geschätzten 30 Millio-nen Anwendern. Im Bereich der Serveranwendungen und des Super-Computingist die Verbreitung von Linux sogar noch höher als die der proprietären Konkur-renz (beispielsweise Microsoft).

Aus diesem Grund findet Linux sehr viel Verbreitung an Universitäten und wur-de schließlich auch an der Universität Cambridge – der Geburtsstätte von Xen,eingesetzt.

Der Zen-Buddhismus (oder kurz Zen) ist eine in China ab etwa dem 5. Jahrhun-dert unserer Zeitrechnung entstandene Strömung des Mahayana-Buddhismus, diewesentlich vom Daoismus beeinflusst wurde.

Abbildung 4.1 Die Kalligrafie des Enso (japanisch für Kreis) verkörpert Leerheit und Vollendung.Sie wird häufig als visuelles Symbol für Zen verwendet (Quelle: Wikipedia).

Primäre Aufgabe des Zen-Schülers ist die fortgesetzte, vollständige und bewuss-te Wahrnehmung des gegenwärtigen Moments. Auf diese Weise kann sich dieErkenntnis der absoluten Realität einstellen. An dieser Stelle bemerkt man dasWortspiel im Bezug zur Virtualität, die Thema dieses Buchs ist. Mit Xen wird dieVirtualisierung zur absoluten Realität.

158

Page 4: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 159 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hintergrund 4.1

4.1.2 Ursprung

Xen wurde 2001 im Computer-Labor der Universität Cambridge erdacht. Es warTeil des XenoServer-Projektes (siehe Kasten) und wurde 2003 unter der Leitungvon Ian Pratt selbständig. Ende 2003 wurde Xen erstmals öffentlich in einemAufsatz beschrieben (siehe Abbildung 4.2).

Abbildung 4.2 Auf dem Symposium on Operating Systems (SOSP) veröffentlichen der Program-mierer Ian Pratt und andere Mitarbeiter im Oktober 2003 eine Abhandlung mit dem Titel »Xenand the Art of Virtualization«.

159

Page 5: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 160 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

XenoServer

Ziel von XenoServers war es eine öffentliche Infrastruktur für verteiltes Rechnen zubieten, das sogenannte Grid Computing. Xen selbst war daraus ein Teil des Konzeptes,um auf einem physischen Rechner mehrere Betriebssysteme mit unterschiedlichenApplikationen laufen zu lassen. Diese Betriebssysteme sollten untereinander abge-schottet sein.

Das Projekt wurde finanziell unterstützt vom Engineering and Physical Sciences Re-search Council (UK-EPSRC), der offiziellen englischen Forschungsförderung.

Xen hatte von Beginn an einen sehr großen Erfolg und gilt heute als einer derwichtigsten Open-Source-Projekte. Mit der Zeit ist Xen so gewachsen, dass darausein eigenes Projekt mit der Firma XenSource entstand. Die Firma XenSourcemit Sitz in Palo Alto (Kalifornien, USA) bietet kommerzielle Xen-Lösungen undSupport an.

Abbildung 4.3 Die offizielle Homepage des Xen-Projektes nach der Übernahme durch Citrix(Stand März 2008)

160

Page 6: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 161 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hintergrund 4.1

XenSource wurde von den ursprünglichen Entwicklern des Xen-Projektes gegrün-det. Dies sind Ian Pratt, Keir Fraser, Steven Hand und Christian Limpach. Auchwenn Xen und XenSource zwei verschiedene Projekte sind, beeinflussen sie sichstark gegenseitig.

XenSource kümmert sich hauptsächlich um die Weiterentwicklung von Xen undist das virtuelle Zuhasue für die Community rund um Xen. Die Firma kümmertsich ebenfalls um das Wiki, die Homepage, die Mailinglisten und den Download-server für die Xen-Software.

Der Markt für Virtualisierungssoftware wächst seit Jahren stetig und inzwischenbeginnt auch hier die Konsolidierung. Dies zeigt sich nicht nur daran, dass inzwi-schen sogar Microsoft auf den Markt drängt, sondern auch daran, dass XenSource2007 von Citrix übernommen wurde.

Förderer

Xen hat inzwischen viele Partner und Förderer wie beispielsweise Intel, AMD, Mi-crosoft, IBM, HP oder SUN. Viele Entwickler dieser Firmen tragen maßgeblich zurEntwicklung bei. Die Liste der Förderer wächst beständig.

4.1.3 Gründe für den Erfolg

Es stellt sich natürlich die Frage, warum das Xen-Projekt so außerordentlichschnell wuchs und eine derartige Beachtung fand. Ich möchte versuchen, eini-ge der zahlreichen Faktoren aufzuzählen, die die Entwicklung von Xen positivbeeinflussten.

� GlückDas Projekt erschien genau zur richtigen Zeit. Der Bedarf an Virtualisierungwächst seit Jahren konstant. Die bisherigen Einsparpotenziale in Bezug aufStrom und Administration werden durch Bladeserver realisiert, die sich ei-nem extrem starken Interesse gegenübersehen. Viele Stromanbieter haben diesogenannten Flatrates für Strom abgeschafft, weil der Bedarf an elektrischerEnergie durch den weiter wachsenden Servermarkt ungeahnte Dimensionenangenommen hat. Dies sind Gründe, die die Akzeptanz von Server-Konsoli-dierung durch Virtualisierung erhöht.

� Open-SourceXen ist Open-Source-Software und daher von Beginn an unabhängig von wirt-schaftlichen Interessen und Risiken entwickelt worden. Dadurch wird einekonstante Weiterentwicklung durch eine Vielzahl von freiwilligen Entwick-lern gewährleistet.

161

Page 7: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 162 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

� KostenlosXen ist nicht nur Open-Source, sondern auch kostenlos. Es kann damit frei ver-fügbar heruntergeladen und ohne Lizenzbeschränkungen eingesetzt werden.Xen steht unter der GPL und kann frei modifiziert und weitergegeben werden.Dies sorgt für eine gute Werbung, aber auch dafür, dass viele Administratorenohne Risiko einen Blick auf das Produkt werfen können – wer sich einmal ineine komplöizierte Technik eingearbeitet hat, wird oftmals bei dieser bleiben.

� TechnikXen ist ein technisch interessantes und fortschrittliches Produkt. Die Leis-tungsfähigkeit und Stabilität ist größtenteils besser als die der (kommerziellen)Konkurrenz.

4.2 Xen-Philosophie

Um die technische Basis von Xen in seiner Gesamtheit zu verstehen, ist es über-aus hilfreich, wenn man sich die Prinzipien dieser Virtualisierungslösung näheransieht. Prinzipiell haben wir es bei der Philosophie von Xen mit zwei Dogmenzu tun, auf die ich im Folgenden näher eingehen werde.

4.2.1 Grundlegende Trennung

Xen vollzieht eine grundlegende Trennung zwischen den Richtlinien, sogenann-ten Policies, und den eigentlichen Mechanismen, wie der Zugriff geregelt wird. Esist wichtig für das Verständnis, dass der Xen-Hypervisor zwar die Mechanismenfür den Hardwarezugriff bereitstellt, die Rechte dazu aber bei den Gästen liegen.

Genauso unterstützt Xen keine Geräte direkt, sondern gibt den Gästen einenMechanismus an die Hand, durch den sie Zugriff auf die reale Hardware erhalten.Dadurch ist es möglich, dass die Xen-Gäste vorhanden Treiber für die Gerätenutzen. Wenn mehrere virtuelle Maschinen gleichzeitigen Zugriff auf ein Gerätbenötigen, stellt der Hypervisor lediglich eine Art der Speicherverwaltung zurVerfügung – den Mechanismus.

4.2.2 Weniger ist mehr

Im Gegensatz zu den meisten anderen Software-Projekten versucht Xen bei jederneuen Veröffentlichung weniger zu tun als bei der vorherigen. Der Grund liegtdarin, dass Xen als ein sehr sensiber Teil Ihres Systems fungiert. Es hat sogar mehrPrivilegien als das Betriebssystem und dementsprechend auch mehr Risiken.

162

Page 8: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 163 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Zwei Wege zum Ziel 4.3

Um das zu verstehen, muss man sich vor Augen halten, dass

� ein Programmfehler eventuell nur Auswirkungen auf die Daten dieses Pro-grammes hat,

� ein Fehler im Betriebssystem aber das ganze System lahmlegen und schließlich

� ein Fehler in Xen Auswirkungen auf alle virtuellen Maschinen hat.

Aus diesem Risiko heraus ist es nachvollziehbar, dass der Xen-Code so schlankwie möglich sein darf. Es ist damit die berechtigte Hoffnung verbunden, dass einschlanker Code generell weniger Fehler enthält. Der Xen-Kernel enthält übrigensungefähr 40.000 Zeilen. Verglichen mit einem klassischen Linux-Kernel (Version2.6 hat ungefähr 5,9 Millionen Zeilen) ist ein Xen-Kernel äußerst schlank.

Ein Beispiel des Prinzips »Weniger ist mehr« ist das Bridging und Routing vonNetzwerkgeräten. Ich werde auf diese Techniken später in den Abschnitten 10.3.5,»Bridging«, und 10.3.4, »Routing«, ab Seite 366 näher eingehen. In der ersten Ver-sion von Xen waren diese Techniken noch fester Bestandteil des Hypervisors. Inder Folgezeit stellte sich allerdings heraus, dass neue Implementierungen in denBetriebssystemen das Routing und Bridging effizient über- nehmen konnten undso wurden beim Übergang zu Xen 2.0 diese in den Host (Domain 0) verlagert.

Die Verlagerung von Funktionen in die Domain O, also den Host, oder das Zu-rückgreifen auf dessen Tools hat auch noch einen weiteren gewichtigen Aspekt,den man nicht außer acht lassen sollte. Jeder Administrator (und auch »Normals-terblicher«) hat nur eine begrenzte Zeit zur Verfügung. Da ist es von Vorteil, wennderjenige nicht beständig den Umgang mit neuen Programmen erlernen muss.Stellen Sie sich nur einmal vor, wie es wäre, wenn Xen seine eigene Definitionder iptables hätte.

4.3 Zwei Wege zum Ziel

In Abschnitt 3.6, »Paravirtualisierung«, auf Seite 144 hatte ich bereits angedeutet,dass Xen zwei verschiedene Arten der Virtualisierung beherrscht:

1. Paravirtualisierung

2. Hardwarebasierte Virtualisierung

Zur Wiederholung und zur besseren Übersicht betone ich an dieser Stelle diewichtigsten Eigenschaften der jeweiligen Lösung.

Auf die technischen Details der Umsetzung dieser Techniken werde ich im Archi-tekturteil dieses Buchs ab Seite 209 näher eingehen.

163

Page 9: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 164 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

4.3.1 Paravirtualisierung

Wenn Linux als Gastsystem zum Einsatz kommt, muss dessen Kernel einen Patcherhalten, um die notwendige Zwischenschicht einzubauen, damit die Systembe-fehle, die an die Hardware gerichtet sind, direkt an den Hypervisor weitergeleitetwerden können.

Da Xen noch nicht in den ofiziellen Linux-Kernel integriert ist, wird damit zurzeitauch automatisch die Kernel Version 2.6.18 vorgegeben. Das bedeutet explizit:wer Xen einsetzen möchte, muss vorab prüfen, ob der von Xen unterstützte Li-nux-Kernel auch die notwendigen Treiber (Module) beinhaltet, die für das Systembenötigt werden.

Einige Linux-Distributionen (beispielsweise Fedora und Ubuntu) integrieren Xenauch in einen weitaus neueren Kernel. Dies erfordert eine Menge Arbeit, da Xendiese Kernel »offiziell« nicht unterstützt. Es werden lediglich Patches und Quell-pakete angeboten, die von den Distributoren mit viel Zeit- und Personalaufwandselber integriert werden müssen. Es ist zu hoffen, dass Xen bald in den offiziellenKernel eingegliedert wird und sich diese Problematik entschärft.

Integration in den offiziellen Linux-Kernel

Die Integration von Xen in den offiziellen Kernel ist eine unendliche Geschich-te. Die ersten Anfragen auf der Mailingliste der Kernel-Entwickler sind aus demJahr 2005, also zwei Jahre nach der Veröffentlichung des Projektes. Die Ker-nel-Entwickler, beispielsweise Andrew Morton und Linus Torvalds, sind den (Ser-ver-)Virtualisierungstechniken nicht grundsätzlich abgeneigt, legen aber sehr hoheAnsprüche an den zu integrierenden Code. So wurde die Integration bisher auf-grund mangelnder Qualität des Codes abgelehnt. Andrew Morton äußerte sich 2006folgendermaßen über die Problematik:

»Ich habe schon vor einem Jahr erwartet, dass Xen aufgenommen wird. Die Entwicklervon Xen haben uns allerdings keinen Code geschickt und nicht genügend Ressourcen indie Anpassung gesteckt. Seit einem Jahr gibt es Diskussionen, ob Xen als Architekturoder Sub-Architektur integriert wird. Die sind noch nicht abgeschlossen.«

An der Xen-Version 3.3 (September 2008) kann man erkennen, dass derzeit viel ander Sauberkeit des Codes gearbeitet wird, um die Integration in Linux voranzutreiben.Im August 2008 wurde von Seiten der Firma XenSource die Vermutung geäußert,dass eine Integration im Verlauf des Jahres 2009 erfolgen wird.

Seit 2007 ist aber der Code der Kernel-based Virtual Machine (KVM) in den offiziellenKernel integriert. Auf KVM gehe ich in Kapitel 3.7.2 ab Seite 150 detailliert ein.

164

Page 10: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 165 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Zwei Wege zum Ziel 4.3

4.3.2 Hardwarebasierte Virtualisierung

Diese Technik bietet CPU-seitig eine bessere Leistungsfähigkeit, da die Zwischen-schicht für den Hypervisor in großen Teilen entfallen kann. Die CPU-Adressierungwird nun nicht mehr von Xen gesteuert, sondern direkt von der CPU. Um dieszu können, müssen sowohl das Mainboard, Bios, und natürlich die CPU selber,die entsprechenden Voraussetzungen mit sich bringen. Vor dem Kauf sind daherentsprechende Recherchen angesagt.

Achten Sie beim Kauf von Hardware unbedingt darauf, dass die Virtualisierungs-techniken der Prozessoren auch vom Mainboard unterstützt werden. In zahlrei-chen Supportforen im Internet häufen sich die Beschwerden, dass Anwendereinen modernen Intel-VT- oder AMD-V-Prozessor besitzen, aber die Hardwareba-sierte Virtualisierung auch mit einem neuen Mainboard nicht gelingen will. DerGrund liegt darin, dass das Mainboard den erweiterten Befehlssatz der CPUs un-terstützen muss. Viele Hersteller deaktivieren aus Stabilitätsgründen diese Funk-tion im BIOS oder bieten sie gar nicht erst an.

Zuvor sollte nicht unerwähnt bleiben, dass zwar die Zwischenschicht (Hypervisor)auf ein Minimum beschränkt werden kann, allerdings betrifft dies nur im Großenden Prozessoranteil. Um jedoch mit der restlichen Außenwelt kommunizieren zukönnen, muss unter Xen 3.x wieder Hardware emuliert werden. Daher hat dasXen Projekt aus dem QEMU Projekt die entsprechenden Teile entnommen undin das Xen Projekt integriert.

Dies führt wiederum dazu, dass durch die notwendige Emulation wieder Leis-tungseinbußen hingenommen werden müssen. Daher lohnt sich dies derzeit nurbei Systemen, die nicht angepasst werden können, also deren Quelltext nicht freieinsehbar und modifizierbar ist.

Die folgende Tabelle gibt Ihnen einen Überblick, welche Art der Virtualisierungin Abhängigkeit von der Rechnerarchitektur möglich ist. Auf einen 32 Bit-Systemsind grundsätzlich auch nur 32 Bit-Gäste möglich. Mit Hilfe von PAE kann Xenbei 32 Bit-Systemen bis zu 16 GB RAM nutzen.

Architektur Virtuelle Maschine32 Bit

Virtuelle Maschine32 Bit (PAE)

Virtuelle Maschine64 Bit

32 Bit PV & VV

32 Bit (PAE) VV PV

64 Bit VV VV PV & VV

Tabelle 4.1 Möglichkeiten der Servervirtualisierung – dargestellt sind die Kombinations-möglichkeiten der Paravirtualisierung (PV) und Hardwarebasierter Virtualisierung (HV) inAbhängigkeit von der Rechnerarchitektur (nur x86).

165

Page 11: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 166 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

4.4 Funktionsumfang

Auf den letzten Seiten konnten Sie eine Einsicht bekommen, wie die Entwicklungvon Xen verlief und welche Funktionen bei jeder neuen Veröffentlichung hinzu-kamen. Allerdings fehlt so der komplette Überblick des Funktionsumfanges undgenau dies möchte ich in diesem Abschnitt nachholen. Die Basis stellt hierbei Xenin der zum Zeitpunkt der Drucklegung (April 2008) aktuellen Version 3.2 dar.

Allgemein muss man festhalten, dass die Entwicklung recht dynamisch erfolgt.Xen wurde zu Beginn nicht in der Absicht entwickelt, einmal in den Linux-Kernelintegriert zu werden oder die Standardlösung im Bereich der Virtualisierung zuwerden. Der Code wurde in den ersten Jahren mehrfach massiv umgeworfen.Dies führte nicht nur zu Problemen im produktiven Betrieb und zu nicht repro-duzierbaren Fehlern, sondern verhinderte bisher auch eine Integration in denoffiziellen Linux-Kernel.

Schwerpunkte

Zurzeit existieren in der Entwicklung von Xen zwei Schwerpunkte. Dies bedeutetselbstverständlich nicht, dass von den Entwicklern nicht nur diese Ziele verfolgtwerden. Auf die sogenannte Roadmap werde ich in Abschnitt 4.6 ab Seite 172näher eingehen.

Mit der Entwicklung der Version 3.2 begann eine intensive Arbeit an der Qualitätdes zugrunde liegenden Codes, einem der Hauptkritikpunkte der Linux-Entwick-ler. Hierbei wird an einer grundsätzlichen Überarbeitung der Code-Architekturgearbeitet, um die Aufnahme in den Kernel zu erreichen. Ein weiterer Schwer-punkt der aktuellen Entwicklung liegt in der Schaffung von umfassenden grafi-schen Management-Werkzeugen. In diesem Bereich ist die Konkurrenz, nament-lich VMware und Microsoft, Xen um Jahre voraus.

4.4.1 Hardware

Hardwareseitig bietet Xen Unterstützung für

� 32 Bit- und 64 Bit-Systeme mit Linux-Kernel 2.6.x,

� Hyperthreading,

� Physical Adress Extension (PAE) bei 32 Bit-Systemen,

� bis zu 1 Terabyte Arbeitsspeicher bei 64 Bit-Systemen,

� SMP-Systeme mit bis zu 32 CPUs und

� den erweiterten Befehlssatz (Intel VT und AMD-V).

166

Page 12: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 167 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Funktionsumfang 4.4

Wie Sie an der obigen Auflistung erkennen können, bietet Xen eine umfassendeHardwareunterstützung. Es werden fast alle Linux-Treiber unterstützt. Man mussaber ehrlich eingestehen, dass es noch erhebliche Arbeit bedarf, um ACPI, APModer 3D-Grafik ohne Probleme zu verwenden.

Auch wenn die ACPI-Unterstützung (des Hosts) bei der aktuellen Version von Xenerheblich verbessert wurde, so gelingt dies nicht unter allen Konfigurationen. DesWeiteren ist es problematisch, wenn Host und Guest gleichzeitig die Soundaus-gabe nutzen. Hier hilft es meist nur, den Sound für die Gäste zu deaktivieren.

4.4.2 Konfiguration

Folgende Konfigurationen sind möglich:

� Aufbau virtueller Netzwerke zwischen mehreren Gästen

� Virtuelle Mehrfachprozessoren auch auf einen 1-CPU-System

� Unterstützung diverser Speichersysteme als Speicherort für Gäste: NAS, SAN,iSCSI, NFS, LVM usw.

� Automatisiertes Starten und Stoppen von Gästen

� Dynamisch während der Laufzeit kann die virtuellen Hardware geändert wer-den:

� Größe des Arbeitsspeichers

� Anzahl der virtuellen Prozessoren

� Hotplugging von Netzwerkschnittstellen und

� Hotplugging von Festplatten

4.4.3 Management

Das Xen-Management ermöglicht:

� Verschieben von Gästen von einem Wirtrechner auf einen anderen (Migrati-on). Dies ist sogar bei laufendem Betrieb, also on-the-fly. Die IP- und MAC-Adressen werden hierbei automatisch transferiert.

� Unterstützung für Trusted Plattform Modules (TPM)

� Leistungs- und Aktivitätsüberwachung durch xentop und XenoProf

� XML-RPC-Schnittstelle für Web-basierte Administration und Monitoring

� Echtzeit-Monitoring

167

Page 13: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 168 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

� Kommandozeilen-Tool zur Verwaltung der Gäste:

� Starten und Stoppen

� Pausieren und Neustarten

� Speichern und Wiederherstellen des Status

� Es sind unterschiedliche Prioritätseinstellungen der Gäste möglich. Quality ofService (QoS) für Loadbalancing und Netzwerkanbindungen.

Sie werden im Praxisteil dieses Buchs ab Seite 309 erfahren, wie Xen die obigenFunktionen in der Praxis nutzt. Für einen detaillierten Blick auf die Architekturverweise ich auf den Architekturteil dieses Buchs ab Seite 209.

4.4.4 Die Grenzen

Xen ist selbstverständlich nicht perfekt. Die bisherige Entwicklung ist die einestypischen Open-Source-Projektes, die zu Beginn nicht auf kommerzielle Interes-sen ausgerichtet war. Es wurde bisher eindeutig die Priorität auf die Funktionengelegt und nicht auf die »Usability«. Auch wenn Xen im Funktionsumfang mitden meisten kommerziellen Produkten mithalten kann, ist die Verwaltung nichtso einfach wie bei der Konkurrenz.

Konkret handelt es sich vor allen Dingen um Management-Tols, die erst in naherZukunft für die nächsten Versionen geplant sind.

� So fehlt beispielsweise komplett eine Management-GUI. Diese ist zwar in Ar-beit, aber noch nicht fertig gestellt worden und dementsprechend auch nichtintegriert. In diese Lücke springen allerdings verschiedene andere Werkzeugevon Drittanbietern, auf die ich in Kapitel 11 ab Seite 387 eingehen werde.

� Es fehlen allerdings auch einige wichtige Verwaltungsfunktionen, die aller-dings größtenteils bereits in der Entwicklung sind. Man darf bei diesen Punk-ten in den nächsten Versionen von Xen mit deutlichen Fortschritten rechnen.Es fehlen stichwortartig folgende Funktionen:

� Snapshot-Erstellung

� Klonen

� Template-Erstellung

� Automatisierte Installation von Domains

� Konvertierungen: physical-to-virtual (P2V) und virtual-to-physical (V2P)

168

Page 14: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 169 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Kommerzielle Xen-Produkte 4.5

4.5 Kommerzielle Xen-Produkte

Nicht zuletzt durch die Übernahme von XenSource durch Citrix im Jahr 2007weht nun ein neuer Wind der beginnenden Professionalität. Das Xen-Projekt hatinzwischen die Kinderstube verlassen und beginnt erwachsen zu werden. Citrixbietet mit der XenServer-Reihe kommerzielle Produkte für den Virtualisierungs-markt an. Die folgenden Abschnitte sollen einen Überblick der verschiedenenProdukte geben.

Verwechseln Sie die kommerziellen Produkte der »XenServer«-Reihe nicht mitden frei verfügbaren Xen-Paketen, die auch Bestandteile der Repositories vielerDistributionen sind. Ich werde in Abschnitt ?? auf Seite ?? auf die Unterstützungdurch Distributoren zurückkommen.

Citrix

Citrix Systems ist ein US-amerikanisches Softwareunternehmen. Bekannt gewordenist Citrix in erster Linie mit Applikations- und Terminalserver-Anwendungen.

Citrix betreibt ein eigenes Ausbildungsprogramm. Die Abschlüsse dieses Programms,die so genannten Zertifikate, sind Citrix Certified Administrator (CCA), Citrix CertifiedEnterprise Administrator (CCEA), Citrix Certified Integration Architect (CCIA), CitrixCertified Sales Professional (CCSP), Citrix Certified Instructor (CCI).

Die Firma XenSource wurde im August 2007 für 500 Millionen US-Dollar durch dieFirma Citrix übernommen.

Symantec StorageFoundation

(Future Update)

XenMotion

Resource Pools

Basic Support Services

Multi-Server Management

XenCenter Unified Virtualization Management Console

XenAPI Management & Control Scripting Interface

Windows & Linux Guests

Xen Native 64-bit Hypervisor

Express Edition Standard Edition Enterprise Edition

Abbildung 4.4 Grafische Übersicht der Unterschiede zwischen den unterschiedlichenXenServer-Produkten (Quelle: Citrix)

169

Page 15: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 170 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

4.5.1 XenServer Enterprise

XenServer Enterprise ist das Flaggschiff unter den kommerziellen Lösungen vonCitrix. Wie die Bezeichnung »Enterprise« schon verrät, zielt dieses Produkt ein-deutig auf den Einsatz in Firmen und Rechenzentren ab. Es bietet u. a. folgendeFunktionen:

� Native 64-Bit-UnterstützungDer Xen-Hypervisor läuft nativ auf einem 64 Bit-System.

� MigrationDurch XenMotion können Gäste on-the-fly migriert werden.

� AdministrationskonsoleMit Hilfe von XenCenter ist die Verwaltung mehrerer Server gleichzeitig mög-lich.

� QoSDer Enterprise-Server kann die Ressourcen (CPU, Festplatte, Netzwerk) derGäste beliebig priorisieren.

4.5.2 XenServer Standard

Der XenServer Standard ist die günstigste Virtualisierungslösung von Citrix. Esbiete eine komplette Server-Virtualisierung und sollte den Anforderungen dermeisten Firmen genügen. Allerdings fehlen im Vergleich zur Enterprise-Versioneinige Funktionen wie beispielsweise die Live-Migration.

Es ist problemlos und ohne Neuinstallationen möglich von der Standard- auf dieEnterprise-Version »upzugraden«.

4.5.3 XenServer Express

Der XenServer Express schließlich ist eine kostenlose Variante des Standard-Ser-vers, allerdings mit nochmals eingeschränktem Funktionsumfang. Dieses Produkteignet sich bevorzugt für Privatanwender oder für erste Testumgebungen. Dabeiist es von Vorteil, dass man problemlos auf die höherwertigen (kostenpflichtigen)Editionen upgraden kann.

In der folgenden Tablle sind einige technische Unterschiede der verschiedenenProdukte aufgelistet. Ich habe mich hierbei auf die wichtigsten Unterscheidungs-merkmale beschränkt. Für eine vollständige Übersicht verweise ich Sie auf dieInternet-Seiten von Citrix, die Sie unter www.citrix.de finden.

170

Page 16: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 171 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Kommerzielle Xen-Produkte 4.5

XenServer Express Standard Enterprise

Server 1 unbegrenzt unbegrenzt mitRessourcenverwaltung

CPU 2 unbegrenzt unbegrenzt

RAM bis 4 GB bis 128 GB bis 128 GB

VM bis zu 4 gleichzeitig unbegrenzt unbegrenzt

RAM / VM bis 4 GB bis 32 GB bis 32 GB

Ressourcen-Pool

nicht möglich nicht möglich möglich

Speicher-Verwaltung

einzeln einzeln einzeln und geteilt

Migration nein nein ja mit XenMotion

VLAN nein nein ja

QoS nein nein ja

Tabelle 4.2 Die kommerziellen XenServer-Produkte von Citrix im Vergleich.

Im März 2008 erschien die erste kommerzielle Reihe 4.1 dieser Xen-Server, seitCitrix das Unternehmen XenSource gekauft hat. Als wichtigste Neuerung gabCitrix bekannt, dass Xen sich nun besser skalieren lasse und auch Microsoftsaktuelles Betriebssystem Windows Vista als Gastsystem laufen lassen kann.

� Die bessere Skalierbarkeit der Software soll unter anderem dadurch erreichtwerden, dass XenServer nun »Rapid Virtualization Indexing» (früher »NestedPage Tables«) in neueren AMD-Prozessoren verwenden kann. Damit bekommteine virtuelle Maschine ihren eigenen Adressraum im Speicher und kanndiesen selbst verwalten. Dies soll den Hypervisor deutlich entlasten.

� XenServer 4.1 bietet überdies eine bessere iSCSI-Kompatibilität, NIC-Bondingund kann 10-GBit/s-Netzwerkkarten verwenden.

� Bei den Gastsystemen können nun Red Hat Enterprise Linux 5, Oracle En-terprise Linux 5 sowie CentOS 5 in den 32- und 64-Bit-Editionen eingesetztwerden und die 32-Bit-Edition von Windows Vista wird ebenfalls unterstützt.

� Wer Managementsoftware entwickelt, die über das XenAPI auf den Hypervisorzugreift, hat nun auch Java-Bindings zur Verfügung.

� Die Storage Delivery Services für das Betriebssystem Data ONTAP von NetAppsind nun bereits vorinstalliert. Data ONTAP bietet eine einheitliche Speicher-Plattform für virtualisierte Umgebungen. Dies ist die Grundlage für eine Da-tenverwaltung, die physikalische und virtuelle Server für geschäftskritischeAnwendungen nutzt und nicht für Aufgaben zum Speichermanagement.

171

Page 17: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 172 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

Citrix-Kunden können die Features zur Datenverwaltung und Datensicherunginnerhalb ihrer NetApp-Speichersysteme nutzen. Dazu gehören Thin Provisio-ning, Cloning, Replication und Backup/Recovery.

� XenApp ist Teil des kürzlich vorgestellten Citrix Delivery Center und ermög-licht die Virtualisierung von Anwendungen sowohl client- als auch serversei-tig. Alle Windows-basierten Applikationen werden zentral im Rechenzentrumgespeichert und dem Endanwender über moderne Virtualisierungs-Technolo-gie zur Verfügung gestellt. Je nach Anwender, Anwendung oder Anwendungs-ort (online oder offline) lässt sich die optimale Art der Anwendungs-Bereit-stellung wählen – jeweils on-demand.

Kunden mit einer fortwährenden Lizenz oder dem »Subscription Advantage Pro-gram« sowie mit XenSource-Lizenzen bzw. -Supportverträgen können die neueVersion der Virtualisierungssoftware von der Firmenhomepage herunterladen.Die Preise für die XenServer-Editionen beziehen sich auf jeweils zwei CPUs undbeginnen bei 900,- US-Dollar für die Standardedition. Die Enterprise-Variantekostet 3.000,- US-Dollar, die neu hinzugekommene Platinum Edition 5.000,- US-Dollar.

Citrix und MIcrosoft

Die seit 18 Jahren bestehende Partnerschaft zwischen Microsoft und Citrix wurde imJanuar 2008 erweitert. Citrix stellt nun eine komplette End-to-End Virtualisierungs-Infrastruktur für Server, Applikationen und Desktops bereit – sowohl für WindowsServer 2008 als auch für Windows Server 2008 Hyper-V. Alle Virtualisierungs-Lösun-gen von Citrix (Citrix XenServer, Citrix XenApp und Citrix XenDesktop) sind mit derWindows-Plattform kompatibel.

4.6 Roadmap

Sie bisher von mir bis zu dieser Stelle eine Menge über Virtualisierung undXen gelesen. Jetzt haben Sie wahrscheinlich einen Punkt erreicht, an dem Siebegeistert sind ob der fantastischen Möglichkeiten, die sich durch diese Technikenbieten.

Es sind Konsolidierungsraten von 18 : 1 möglich

Vom Nutzen dieser Technik sprechen auch Erfahrungen diverser Rechenzentren.So hat beispielsweise die Firma Strato AG fast 90 Prozent Strom- kosten einspa-ren können und benötigt inzwischen nur noch 20 Prozent des ursprünglichenPlatzbedarfes.

172

Page 18: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 173 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Roadmap 4.6

Vielleicht sind Sie aber auch immer noch skeptisch und vermissen einige für Siewichtige »Features«. Daher möchte ich an dieser Stelle die aktuellen Neuerungenin Xen 3.x vorstellen und einen Blick in die Zukunft wagen.

4.6.1 Neuerungen in Xen 3.x

In der Version 3 bietet Xen folgende Möglichkeiten:

� Bis zu 32 Prozessoren innerhalb eines Gast Systems (64 Stück auf 64 Bit-Syste-men), welche aus einer Core CPU generiert werden können (wichtig für eineSMP Server Konsolidierung)

� Mittels PAE-Unterstützung auf 32-Bit Systemen kann mehr RAM alloziert wer-den, als dies normal möglich wäre. Diese Option sollte ab mehr als 1 GB RAMgenutzt werden.

� x86/64 Unterstützung (Intel EM64T, AMD Opteron)

� Dank Intels Vanderpool und AMDs Pacifica können unmodifizierte Betriebs-systeme eingesetzt werden.

� Verbesserte Management Tools

� Verbesserte ACPI-Unterstützung

� AGP/DRM/Framebuffer Grafik

� Live Migration von Gästen

Die aktuelle Version 3.3 erschien am 25.08.2008. Da die Entwickler einiges unterder Haube schraubten, sind viele der vorgenommenen Änderungen und Verbes-serungen nicht für den Nutzer sichtbar. Doch auch einige direkt nutzbare Neue-rungen gibt es, darunter das Sicherheitsframework Xen Security Modules (XSM).XSM erweitert die ursprünglich in Xen vorhandene Sicherheitsarchitektur ACMund ähnelt den Linux Security Modules.

Mit der neuen Xen-Version wird zudem ACPI-S3 (Suspend-to-RAM) auf dem Hostunterstützt. PCI-Geräte lassen sich nun auch exklusiv einem unmodifizierten Gastzuweisen, was dann allerdings nur mit den neuen AMD- und Intel-Prozessoren,die hardwareseitig I/O-Virtualisierung bieten, funktioniert.

Änderungen an der Architektur

Der x86-Real-Modus lässt sich nun so weit emulieren, dass bei nicht modifi-zierten Gästen bisher inkompatible Bootloader funktionieren. Eine schnellereVGA-Emulation und konfigurierbare Timer gibt es ebenfalls im Zusammenspielmit Prozessoren, die Virtualisierungsfunktionen unterstützen.

173

Page 19: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 174 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

Die ersten Jahre der Entwicklung waren geprägt von der Arbeit an Aspekten wieStabilität und Sicherheit, neue Funktionen flossen nur spärlich ein. Spätestens mitder Übernahme von XenSource durch Citrix ist der weitere Weg von Xen aberabsehbar, es folgt der »Angriff« auf die Platzhirsche VMware und Microsoft.

4.6.2 Ausblick

Ich möchte nun etwas Mut beweisen und an dieser Stelle einen persönlichenAusblick wagen. Wie wir bereits festgestellt haben, wächst der Markt für Server--Virtualisierung seit Jahren beständig. Mehr und mehr Firmen drängen in diesenMarkt und die wirtschaftliche Konsolidierung beginnt. Spätestens als Microsoft2003 die Virtualisierungstechnik von Connectix erwirbt, ist jedem Beobachterklar geworden, dass mit Virtualisierung Geld verdient werden kann.

Xen hat eine konstant größer werdende Konkurrenz durch Firmen wie VMware,IBM, SUN, Parallels usw. zu beklagen. Trotzdem schlug Xen 2003 ein wie eineBombe. Der einschlagende Erfolg basierte von Anfang an auf einer Reihe vonInnovationen. Xen machte viele Sachen anders und sorgte für frischen Wind inder »Virtualisierungs-Gemeinde«. Diesen frischen Wind muss Xen beibehalten,wenn es dauerhaft Erfolg haben will.

Integration in den Kernel

Der wohl wichtigste Aspekt wird die zukünftige Integration von Xen in denLinux-Kernel darstellen. Dies würde Xen neue Türen öffnen und für noch mehrVerbreitung sorgen. Allerdings ist hier noch nicht geklärt, ob nicht lediglich eineneuartige Schnittstelle für diverse Virtualisierungstechniken implementiert wird.Dies würde den Zugang zum Kernel vereinfachen und gleiche Bedingungen fürunterschiedliche Lösungen schaffen.

Die offizielle Roadmap des Xen-Projektes finden Sie unter http://wiki.xensource.com/xenwiki/XenRoadMap.

Versionszyklus

Bisher wurden neue Xen-Versionen ungefähr im 12-Monats-Rhythmus veröffentlicht.Das Entwicklungstermin hat sich allerdings 2006 eine neue Strategie überlegt, umdie Versionsnummern nicht ins Bodenlose abgleiten zu lassen.

Xen 4 wird erst erscheinen, wenn es derart bedeutende Änderungen in der inne-ren Architektur von Xen gibt, die einen solchen Versionssprung rechtfertigen. Bisdahin erscheinen inkrementelle Änderungen der Bezeichungen: 3.0.1, 3.0.2, 3.1, 3.3(aktuell) usw.

174

Page 20: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 175 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Roadmap 4.6

Die Xen-Entwickler arbeiten an einer Vielzahl von Projekten und jedes einzelnehier zu beschreiben, würde den Rahmen des Buches sprengen. Allgemein kannman diese Projekte aber in vier grundlegende Themen einsortieren:

1. Leistungsfähigkeit und SkalierbarkeitDie Leistungsfähigkeit soll weiter gesteigert werden, indem Xen weiter aufdie moderne CPU-Architektur angepasst wird. 2008 werden Intel und AMDin ihren neuen Prozessoren der 45 nm Strukturbreite die zweite Generationder Virtualisierungsunterstützung implementieren. Dadurch kann Xen selbstnoch schlanker, sicherer und leistungsstärker werden.

Der Hypervisor soll weiter angepasst werden an den Betrieb auf Multi-core-Prozessoren. Hierbei sollen die Vorteile der Prozessor- und Speichervir-tualisierung der Non-Uniform Memory Architecture (NUMA) genutzt werden.

Für eine kurze Darstellung der NUMA sehen Sie bitte in Abschnitt 4.7 aufSeite 176 nach.

2. Unterstützung für weitere BetriebssystemeDie Unterstützung für weitere x86-kompatible Betriebssysteme soll weiterausgebaut werden. Dies betrifft gleichermaßen angepasste Systeme für Para-virtualisierung als auch unveränderte Systeme für die hardwarebasierte Vir-tualisierung.

3. Erweiterung auf andere ArchitekturenXen ist primär für den Betrieb auf der x86-Architektur ausgelegt und ent-wickelt worden. Trotzdem sind Portierungen auf andere Architekturen wiebeispielsweise IBM PowerPC, SUN Sparc oder Intel IA-64-Architekturen er-schienen, allerdings mit reduziertem Leistungsumfang. Diese Portierungensollen weiter verbessert werden.

4. Codebasis schlanker gestaltenDie I / O-Verwaltung soll deutlich mehr in die Gäste ausgelagert werden, umden Hypervisor weniger fehleranfällig und die I/O- Virtualisierung leistungs-fähiger zu machen.

Ich werde hier nicht näher auf diese teilweise sehr umfangreichen Themen ein-gehen und verweise Sie bei Interesse auf die Seiten des XenSource-Projektes.Allerdings möchte ich etwas auf die vielbeachtete Kooperation zwischen Micro-soft und xen eingehen.

4.6.3 Kooperation mit Microsoft

Am 18. Juli 2006 haben XenSource (jetzt Teil von Citrix) und Microsoft eineKooperationsvereinbarung geschlossen, die eine erhebliche Aufmerksamkeit er-

175

Page 21: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 176 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

regte. Warum diese Vereinbarung so überraschte, möchte ich hier versuchendarzulegen.

XenSource hatte bereits vor der Kooperation mit Microsoft seine Absicht erklärt,die Unterstützung im Hypervisor für Windows-basierte Gäste erheblich auszu-bauen. Dies ist seit langem eine der gefragtesten Einsatzbereiche (vor allem vonPrivatanwendern). Aber auch Unternehmen zeigten ein zunehmendes Interessedaran, das Beste aus beiden Welten (Linux und Windows) zu vereinen. Xen solltehierbei in Verbindung mit den hardware-basierten Virtualisierungstechnologienvon Intel und AMD die leistungsstärkste Lösung sein. Microsoft bot für diesesVorhaben seine Unterstützung an.

Die offizielle Kooperationsvereinbarung geht aber noch erheblich über das Ziel,Windows in virtuellen Maschinen laufen zu lassen, hinaus. Die beiden Firmentauschen inzwischen nicht nur erhebliches Wissen über die Techonologie desHypervisors aus, sondern arbeiten aktiv zusammen. Es soll damit erreicht wer-den, dass die Interoperabilität zwischen dem XeSource-Hypervisor und MicrosoftsWindwos Server-Virtualisierung stark vereinfacht wird.

4.7 Exkurs: NUMA

Non-Uniform Memory Architecture (NUMA) ist eine Computer-Speicher-Archi-tektur für Multiprozessorsysteme, bei denen die Zugriffszeiten auf den Speichervom Ort des Speichers abhängen. Ein Prozessor kann auf seinen eigenen, als lokalzugewiesenen Speicher schneller zugreifen als auf den von anderen Prozessorenim gleichen System verwalteten Speicher.

NUMA-Architekturen sind der logisch nächste Schritt zur Erhöhung der Skalier-barkeit von SMP-Architekturen. NUMA-Systeme stehen dabei im Gegensatz zu so-genannten UMA- (Uniform-Memory-Architecture), NoRMA- (No-Remote-Memo-ry-Architecture) und CoMA- (Cache-only-Memory-Architecture) Architekturen.

Fast alle Rechnerarchitekturen benutzen eine kleine Menge sehr schnellen Spei-chers, der als Cache bezeichnet wird, um bei Speicherzugriffen Lokalitätseigen-schaften auszunutzen. Bei Verwendung von NUMA sorgt das Beibehalten derCache-Kohärenz über den verteilten Speicher für zusätzlichen Overhead. Als Bei-spiel stelle man sich vor, dass sich ein Prozessor Daten aus dem Speicher eines an-deren Prozessors holt, damit Berechnungen anstellt und die Ergebnisse in seinenlokalen Cache schreibt. Der Cache des Prozessors, von dem die Daten stammen(und vielleicht auch noch weitere Caches im System) müssen dann synchronisiertwerden.

176

Page 22: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 177 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Der Lebenszyklus einer virtuellen Maschine 4.8

ccNUMA

Nicht Cache-kohärente NUMA-Systeme sind zwar einfacher zu entwickeln und zubauen, aber mit dem Standard-Programmiermodell von von Neumann nur schwerprogrammierbar. Daher besitzen alle derzeit im Einsatz befindlichen NUMA-Sys-teme spezielle Hardware, um die Cache-Kohärenz sicherzustellen, und werdendeshalb auch als cache-coherent NUMA (ccNUMA) bezeichnet.

Dies wird meistens durch Inter-Prozessor-Kommunikation zwischen den Cache-Controllern erreicht, die so für konsistente Speicherinhalte sorgen, falls die glei-che Speicherstelle in mehr als einem Cache gespeichert ist. ccNUMA leidet unterschlechter Performance, wenn mehrere Prozessoren schnell nacheinander aufdieselbe Speicherstelle zugreifen wollen. Daher versucht ein Betriebssystem mitNUMA-Unterstützung die Häufigkeit solcher Zugriffe zu minimieren, indem Pro-zessoren und Speicher auf NUMA-freundliche Art und Weise alloziert werden.

Aktuelle Implementationen von ccNUMA Systemen sind beispielsweise AMDMehrprozessor Systeme auf Opteron Basis. Frühere NUMA Systeme basierten aufdem Alpha-Prozessor EV7 von Digital Equipment Corporation (DEC).

NUMA kann als sehr eng gekoppelte Form von Cluster-Computing gesehen wer-den. Das Hinzufügen von Paging für virtuellen Speicher zu einer Cluster-Ar-chitektur macht es möglich, NUMA in Software zu implementieren, wo keineNUMA-Hardware existiert. Die Latenzzeiten von softwarebasiertem NUMA sindjedoch um ein vielfaches größer als mit Hardware-NUMA.

4.8 Der Lebenszyklus einer virtuellen Maschine

Der Lebenszyklus einer realen Maschine war bisher denkbar einfach. Sie wurdeangeschaltet, lief und wurde wieder ausgeschaltet. Neuere Maschinen verfügenaußerdem über verschiedene Ruhezustände, die einem Linux-Nutzer manchmalarge Kopfschmerzen bereiten:

� »Ruhezustand« (suspend-to-RAM) oder

� »Standby« (suspend-to-disk).

Bei virtuellen Maschinen sieht dies etwas anders aus. Eine virtuelle Maschine hatneben den oben genannten Zuständen noch einen zusätzlichen Status: »pausie-ren« (paused). Dieser Status ist anzusiedeln zwischen »laufen« und »ruhen«. Wirhaben es hierbei mit einer typischen Eigenschaft von virtuellen Maschinen zutun, die darauf beruht, dass wir virtuelle Ressourcen nach Belieben verändernkönnen oder sie dem Gast sogar ganz entziehen.

177

Page 23: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 178 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

4 Xen

So hat der Status »Pausieren« die Bedingung, dass die Maschine zwar noch gestar-tet bleibt, aber keiner CPU-Zeit mehr zugerechnet wird. Wir haben dem virtuellenGast also lediglich die Ressource »CPU« temporär entzogen.

Im Gegensatz dazu wird bei einem klassischen Ruhezustand der Gesamtzustanddes Systems eingefroren und permanent gespeichert. Beim Erwachen einer virtu-ellen Maschine aus dem Ruhezustand wird das Speicherabbild wieder gelöscht.

Wake

Running

Suspended

Off

Turn on

Turn off

Turn off Sleep

Abbildung 4.5 Nutzung der Treiber durch unprivilegierte Gäste unter Xen (nach Chisnall)

Wake

Turn on

Turn off

Turn off Sleep

Stop

Start (paused)

Pause Resume

MigrateOff Running

Paused

Suspended

Abbildung 4.6 Nutzung der Treiber durch unprivilegierte Gäste unter Xen (nach Chisnall)

Ruhend oder ausgeschaltet?

Der einzige Unterschied, der für eine virtuelle Maschine zwischen »Ruhend« und»Ausgeschaltet« besteht, ist also der Status, der gespeichert wird. In beiden Fällenbleibt der Status des Block Device zwar erhalten, aber im Ruhezustand bleibenzusätzlich sowohl der Inhalt des Speichers als auch der CPU erhalten. Man könntesagen, dass dies auch beim Ausschalten der Fall ist, aber der Status der CPU wirdhier »Booten« sein und beim Speicher wird der Status undefiniert sein.

178

Page 24: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 179 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Der Lebenszyklus einer virtuellen Maschine 4.8

VM mit Mirationshintergrund

Ein anderer Unterschied zwischen einer realen und einer virtuellen Maschinebesteht beim Status »Laufen«. Eine reale Maschine ist immer an die Hardwaregebunden; bei einer virtuellen Maschine ist dies nicht der Fall. Dies bedeutet,dass man sie problemlos von einer Maschine zur anderen migrieren kann. Wenndie Maschine auf der einen realen Maschine ruht, so kann sie auf einer anderenfortgesetzt werden.

Die Art und Weise, wie die Übergänge vollzogen werden, unterscheiden sichebenfalls zwischen realen und virtuellen Maschinen. Eine reale Maschine wirddurch Drücken eines physischen Knopfes angeschaltet, während ein Xen Gastdurch Management-Werkzeuge wie beispielsweise xm oder xend gestartet bezie-hungsweise beendet wird.

179

Page 25: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 181 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

»Ausdauer wird früher oder später belohnt– meistens aber später.«

Wilhelm Busch (1832–1908),deutscher Dichter, Zeichner und Maler

5 Voraussetzungen

Was Sie in diesem Kapitel erwartet

Nachdem wir im vorangegangenen Kapitel die Philosophie und den Funktionsumfangkennengelernt haben, möchte ich mich im Folgenden mit den Voraussetzungen füreinen erfolgreichen Betrieb von Xen beschäftigen. Hierbei kommen Faktoren wie

� Hardwareunterstützung,

� unterstützte Betriebssysteme und

� Distributionen mit integriertem Xen

zum Tragen. Eine umfassende Darstellung dieser Faktoren ist nur bedingt möglich.Zum einen hat sich Xen in letzter Zeit sehr dynamisch entwickelt, sodass sich die Un-terstützung bestimmter Hardware/Betriebssysteme ändern kann, zum anderen kannXen selbstverständlich auch auf Systemen laufen, die in meiner Auswahl fehlen.

Benötigtes Vorwissen

Es sind grundlegende Kenntnisse bei der Administration von Linux notwendig. DesWeiteren sollten Sie einen sher guten Überblick über die verwendete Hardwarebesitzen.

5.1 Allgemein

Trotz aller Unterschiede zwischen den einzelnen Linux-Distributionen gibt es soetwas wie einen kleinsten gemeinsamen Nenner – die Mindestanforderungen fürden performanten Betrieb von Xen:

� Xen läuft nur unter Linux, sodass eine sauber installierte Linux-Distributionessentiell ist.

� Ein funktionierender GRUB-Bootloader ist ebenfalls Bedingung.

181

Page 26: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 182 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

� Sie benötigen für die meisten Aktionen Root-Zugriff.

� Ein Prozessor der P6-Klasse (oder früher) ist sinnvoll für einen reibungslosenBetrieb.

� Die Linux-bridge-utils, sowie die Linux-Hotplug-Systeme sind einerseits wich-tig für die Netzwerkfunktionen der virtuellen Maschinen, andererseits für dasdynamische Verwalten der Ressourcen.

� Viele Werkzeuge sind in Python geschrieben, sodass eine funktionsfähige Py-thon-Laufzeitumgebung (mind. 2.2) installiert sein sollte.

� Auch wenn manche Distributionen gerade den Umschwung zu upstart vor-nehmen, basieren viele Funktionen von Xen noch auf den traditionellen In-itialisierungsskripten (initscripts).

Die Abhängigkeiten werden in der Regel automatisch während des Installations-prozesses von Xen konfiguriert.

5.2 Hardwareunterstützung

Vielleicht stehen Sie gerade vor der Entscheidung, welche neue Hardware Siesich kaufen? Herzlichen Glückwunsch, dann haben Sie jetzt nicht nur die dieQual der Wahl, sondern stehen zudem vor einem schier unübersichtlichen Infor-mationschaos. Virtualisierung ist im Desktop-Bereich zum einen noch ein relativjunges Thema, zum anderen noch kein Kaufargument für die breite Masse derAnwender. Dementsprechend bedeckt halten sich die Hersteller mit Auskünftenauf ihren Packungen und in den technischen Daten ihrer Hardware.

Wenn Sie die Anschaffung neuer Hardware planen, sehen Sie vorher unbedingt indas Wiki von Xen. Dort finden Sie viele Informationen zu kompatiblen Produkten.

Alle Adressen beginnen mit http://wiki.xensource.com/xenwiki:

� /HardwareCompatibilityList – Hardware-Kompatibilitätsliste

� /HVM_Compatible_Processors – Eine Übersicht zu Intel VT- und AMD-V-Prozes-soren. Diese Liste deckt zwar nicht mehr die neuesten Prozessoren ab, kannIhnen aber bei der Bestimmung von Virtualisierungsfähigkeiten eines älterenProzessors helfen.

� /HVM_Compatible_Notebooks – Liste HVM-fähiger Notebooks

Seit der Übernahme durch Citrix ist der gesamte Auftritt von Xen deutlich profes-sioneller geworden. Eine sehr gute Auflistung bezüglich Hardware-Kompatibilität

182

Page 27: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 183 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hardwareunterstützung 5.2

finden Sie unter http://hcl.xensource.com/. Dort werden sogar verschiedene Kate-gorien angegeben:

� Kategorie 1 – tested by Citrix

� Kategorie 2 – certified by Vendor

� Kategorie 3 – submitted by community

Die Hardware ist aufgeteilt in die vier Bereiche

� Systems – tested servers and workstations

� Storage – tested storage systems

� Components – tested devices and peripherals

� Drivers – available kernel modules

und deckt verschiedene Versionen von Xen ab.

Foren und Mailinglisten

Darüber hinaus erhalten Sie viele hilfreiche Hinweise, wenn Sie die Foren undMailinglisten zu Xen besuchen bzw. abbonieren. Eine Auflistung zahlreicher Sei-ten finden Sie in Abschnitt 13.7, »Hilfe aus dem Netz«, auf Seite 465. WennSie unter diesen Adressen das Gesuchte nicht finden, können Sie sich selbstver-ständlich auch selbst mit einer Frage an die internationale Benutzergemeinschaftwenden.

Lenovo

Auch wenn es mir fern liegt, an dieser Stelle Werbung für einen bestimmten Her-steller zu machen, so muss ich die Firma Lenovo positiv hervorheben. Lenovo hatdie Notebook-Sparte von IBM übernommen und ist aufgrund dieser historischenVerpflichtung wesentlich auskunftsfreudiger als andere Hersteller. Lenovo bietet aufallen Thinkpads der T60-Serie HVM-Unterstützung und weist sogar explizit daraufhin.

Die oben genannten Listen können selbstverständlich nicht den gesamten Um-fang des Hardwareangebotes abdecken. Daher bleibt Ihnen wohl manchmal nichtsanderes übrig, als Ihr Geld mit etwas Mut zu investieren. Ich gebe Ihnen den Rat,an dieser Stelle lieber einige Euro mehr auszugeben, wenn Sie eine Hardwarebekommen können, die nachweislich kompatibel ist.

183

Page 28: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 184 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Fachhändler

Ansonsten ist es durchaus sinnvoll, wenn Sie Ihrem Fachhändler von Ihren Pla-nungen in Bezug auf Xen erzählen. Treffen Sie mit ihm eine Vereinbarung, dassSie Komponenten, die sich in Ihren Tests als nicht Xen-tauglich erweisen, zurück-geben können.

5.2.1 Prozessoren

Wer Xen einsetzen möchte, benötigt als erstes eine Architektur, die x86 kompa-tibel ist (32 oder 64 Bit). Leider reicht dabei ein beliebiger Intel- oder AMD-Pro-zessor nicht aus, da Xen sehr nah an der Hardware entwickelt wurde und ältereCPU-Architekturen nicht unterstützt werden. Sie benötigen mindestens einenProzessor der fünften Generation (Pentium) oder neuer.

Pentium leitet sich vom griechischen Pente für die Zahl fünf ab und bezeichnetdie fünfte x86-Generation aus dem Hause Intel.

Als Faustregel kann man annehmen, dass Xen problemlos mit Prozessoren har-monisiert, die nach 1993 auf dem Markt erschienen. Zu diesen Prozessoren ge-hören unter anderem auch der Pentium Pro, Celeron oder AMD Athlon. Selbst-verständlich werden auch SMP-Prozessoren, also reine Mehrprozessorsysteme,unterstützt.

Hyperthreading und V (T)

Profitieren kann Xen von der Hyperthreading-Technologie der neuen Intel-Prozesso-ren und von der erweiterten (Virtualisierungs)-Architektur der neuesten Prozessorenvon Intel (Bezeichnung: Intel VT) und AMD (Bezeichnung: AMD-V). Ich werde aufdiese neuartigen Prozessoren in Abschnitt 7.7 ab Seite 230 näher eingehen.

Portierungen

Portierungen für IA64 und PPC sind in der Entwicklung. Da das Hauptaugenmerkauf IA32/IA64 liegt, ist der PPC-Zweig aus dem Betastadium bisher noch nichtherausgekommen. Auch wird nur eine einzige CPU (970) unterstützt.

Empfehlung

Ich empfehle Ihnen, mindestens einen Pentium 4 einzusetzen, wenn Sie meh-rere virtuelle Maschinen gleichzeitig betreiben wollen. Hinzu kommt, dass IhrRechner über mindestens 1 Gigabyte Arbeitsspeicher und mehrere Gigabyte frei-en Festplattenplatz verfügen sollte. Selbstverständlich kann einen Virtualisierungauch mit leistungsschwächerer Hardware funktionieren. Als Beispiel wären hierzahlreiche Embedded-Systeme zu nennen.

184

Page 29: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 185 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hardwareunterstützung 5.2

Ansprüche der Distributoren

Viele Linux-Distributionen stellen höhere Ansprüche an die Komponenten IhresPCs als die genannten, wenn Sie die vorgefertigten Pakete der Anbieter verwen-den möchten. Hierzu sollten Sie auf jeden Fall die mitgelieferte Dokumentati-on der Distributoren oder die Wikiseiten im Internet konsultieren. OpenSUSEbeispielsweise verlangt mindestens 1 GB RAM für den Betrieb auch nur einereinigen VM. Dieser Leistungshunger gipfelt teilweise in der Behauptung, dass Siezum Betrieb von Xen zumindest einen Prozessor mit Hyperthreading-Technologiebenötigen.

Wir werden in Kapitel 7, »CPU-Virtualisierung«, ab Seite 211 einen detailliertenBlick auf die Virtualisierung einer CPU werfen. Dort lernen Sie den generellenAufbau einer x86-Architektur kennen und erfahren, mit welchen Mitteln Intelund AMD ihre Prozessoren erweitert haben, um die Virtualisierung zu vereinfa-chen.

Intel VT und AMD V

Neuere Prozessoren aus dem Hause Intel und AMD liefern die Virtualisierungs-erweiterungen automatisch mit. Möglicherweise haben Sie aber einen älterenProzessor und fragen sich, ob dieser HVM-kompatibel ist. Um dies zu ermitteln,können die beiden folgenden Tabellen hilfreich sein. Die Angaben erheben aller-dings nicht den Anspruch auf Vollständigkeit. Auf keinen Fall kompatibel sinddie beiden Intel-Prozessoren

� Intel Core 2 Duo Processor E4300 und

� Intel Pentium D Processor 9x5 (D945),

obwohl sie aus entsprechenden Prozessor-Serien stammen, die die Erweiterunggrundsätzlich implementiert haben.

Athlon 64 Athlon 64 X2 Turion 64 X2 Opteron

3800+ 5000+ TL-60 1000 Series

3500+ 4800+ TL-56 2000 Series

3200+ 4600+ TL-52 8000 Series

3000+ 4400+ TL-50

FX-62 4200+

4000+

3800+

Tabelle 5.1 Unterstützte Prozessoren von AMD

185

Page 30: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 186 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Core Duo Pentium Xeon

X6800 965 7041

E6700 955 7040

E6600 960 7030

E6400 950 7020

E6300 940 5080

T2600 930 5063

T2500 920 5060

T2400 672 5050

T2300 662 5030

Tabelle 5.2 Unterstützte Prozessoren von Intel

5.2.2 Arbeitsspeicher

Wie bereits erwähnt, sollten Sie Ihre Virtualisierungsversuche erst ab 1 GB RAMstarten. Die meisten Xen-Installationen verlangen für ihre virtuellen Maschinenmindestens 512 MB Arbeitsspeicher. Dies bedeutet allerdings nicht, dass sichder RAM-Bedarf von mehreren VMs linear addiert. Die Speicheradressierungenmehrerer VMs können sich überlagern. Allerdings sollten Sie darauf achten, dassIhr Host noch genügend freien Speicher für den eigenen Betrieb verwenden kann.

Es macht sicherlich keinen besonderen Spaß, ein komplettes Linux-Desktop-System mit hardwarebeschleunigter Grafik zusammen mit leistungshungrigen vir-tuellen Installationen z.B. von Windows Vista zu betreiben, wenn einem nur 1 GBRAM zur Verfügung steht. Wenn Sie allerdings nur einen schlanken Server alsHost betreiben, sieht die Sache schon etwas anders aus.

Nutzung von mehr als 32 GB RAM

Der Xen-Kernel unterstützt nicht mehr als 32 GB Speicher für x86/64-Systeme.Falls Sie den Virtualisierungs-Kernel auf Systemen mit mehr als 32 GB physikali-schem Speicher booten müssen, müssen Sie in der Kommandozeile den Kernel-Parameter mem=32G anhängen. Dieses Beispiel zeigt, wie die passenden Parameterin der Datei grub.conf aktiviert werden:

title Red Hat Enterprise Linux Server (2.6.18-4.elxen)root (hd0, 0)kernel /xen.gz-2.6.18-4-el5 mem=32Gmodule /vmlinuz -2.6.18-4.el5xen ro root=LABEL=/module /initrd-2.6.18-4.el5xen.img

Listing 5.1 Parameter für mehr als 32 GB RAM

186

Page 31: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 187 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hardwareunterstützung 5.2

PAE

PAE (Physical Address Extension) ist eine Technologie, bei der die Menge des für Be-nutzer-Applikationen zur Verfügung stehenden physikalischen oder virtuellen Spei-chers erhöht wird. Für Xen ist eine Aktivierung von PAE auf Ihren Systemen erfor-derlich. Die Virtualisierung der 32-Bit-Architektur mit PAE unterstützt bis zu 16 GBphysikalischen Speicher. Es wird empfohlen, dass Sie mindestens 256 Megabytes Ar-beitsspeicher für jeden Gast, den Sie auf Ihrem System ausführen, bereitstellen. Xenermöglicht es x86/64-Maschinen, bis zu 64 GB physikalischen Speicher zu adressie-ren. Auf Systemen ohne PAE funktioniert Xen dagegen nicht.

Um festzustellen, ob ein System PAE unterstützt, geben Sie den folgenden Befehlin einem Terminal ein:

user$ grep pae /proc/cpuinfo

Listing 5.2 Abfrage der PAE-Funktion

Eine positive Ausgabe sieht wie folgt aus:

flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov patpse36 mmx fxsr sse syscall mmtext 3dnowext 3dnow

Listing 5.3 Ausgabe der flags

Wenn Ihre Ausgabe in etwa mit dem obigen Beispiel übereinstimmt, dann unter-stützt Ihre CPU PAE. Wenn der Befehlsprompt nichts anzeigt, dann unterstütztIhre CPU PAE nicht.

5.2.3 Treiber

Der Wirt übernimmt die eigentliche Kommunikation mit der Hardware und somitwerden auch keine separaten Treiber benötigt. Sollte doch einmal ein Treiber feh-len, so kann dies über den normalen Weg der Kernel-Konfiguration im Quellpaketvon Xen nachgeholt werden. Sie finden für diesen Zweck im ausgepackten Quell-code-Verzeichnis von Xen eine entsprechende INSTALL- und README-Datei mitdetaillierten Anweisungen, wie ein Linux-Kernel für Xen angepasst werden kann.

Die Anpassung unterscheidet sich nicht wesentlich von einer normalen Linux-Ker-nel-Konfiguration. Die Geräte im Gastsystem arbeiten wie gewohnt und bedürfenkeiner Anpassung. Als Wirtsysteme eignen sich Linux, NetBSD oder Solaris.

187

Page 32: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 188 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Die eigentliche Arbeit von Xen besteht darin,

1. die virtuelle CPU zu starten,

2. das Interrupt Routing einzurichten und

3. die PCI Geräte aufzuzählen.

Zusätzlich besteht die Aufgabe xon Xen darin, den Gästen eine standardisierteSchnittstelle zur Hardware zur Verfügung zu stellen.

Die Entwicklung von Xen schreitet sehr schnell voran und hat in den letzten Jahreerhebliche Fortschritte gemacht. In Abschnitt 4.6 ab Seite 172 gehe ich auf dieNeuerungen bei Xen 3.x ein.

Die folgende Tabelle gibt die wichtigsten Punkte der Hardwareunterstützungübersichtlich wieder.

Hardware Umsetzung

x86 (32,64 Bit) bei 64 Bit zu 1 TB RAM möglich, bei 32 Bit bis zu 4GB. Mit PAE sind 8 TB, bzw 16 GB möglich

SMP bis zu 32 SMP-CPUs möglich, auchCPU-Hotplug-fähig

Hyperthreading vollständig unterstützt

Intel VT / AMD-V Beliebige Betriebssysteme können als Gäste installiertwerden.

Trusted Platform Modules vollständig unterstützt

Tabelle 5.3 Hardwareunterstützung in Xen 3.x

5.2.4 HVM und ACPI

Viele Benutzer von Xen stimmen der folgenden Aussage zu, wenn sie nach denVorraussetzungen für eine erfolgreiche Virtualisierungsumgebung gefragt wer-den: »Abgesehen vom Prozessor läuft Xen grundsätzlich auf jeder Hardware, auf derauch das Wirtsystem einwandfrei läuft.«

Leider ist die Realität dann aber doch nicht so einfach, und Ausnahmen sind oft-mals die Regel. Nur weil eventuell eine Linux-Distribution bei Ihnen einwandfreifunktioniert, kann man leider daraus noch nicht sicher folgern, dass Xen ebenfallsproblemlos funktioniert.

Einige Stolperfallen habe ich breits erwähnt. So kann selbstverständlich ein Li-nux-System mit weniger als 1 GB RAM und einem Pentium II problemlos laufen,wenn Sie auf eine ressourcenschonende Konfiguration achten. Installieren Sienun aber Xen auf einem solchen Rechner, wird das gesamte System in die Kniegezwungen.

188

Page 33: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 189 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Hardwareunterstützung 5.2

Stolperfallen

Wir müssen allerdings nicht so weit zurückblicken und das Beispiel sehr alterRechner bemühen, um die Grenzen dieser Aussage aufzuzeigen. Es gibt zweigroße Stolperfallen, die Ihnen hohe Kosten bescheren können und eine Virtuali-sierung teilweise oder komplett unmöglich machen. Der Ärger über diese Hard-warefallen ist besonders hoch, da man beim Kauf weder darauf hingewiesen wirdnoch sie selbst rechtzeitig entdecken kann. Erst wenn man die Produkte auspro-biert, stellt man mitunter fest, dass die Hardware die erwünschte Funktionalitätnicht besitzt oder korrekt umsetzen kann.

Sie können dann allerdings noch auf einen Umtausch beim Fachhändler Ihres Ver-trauens hoffen. Grundsätzlich sind Sie bei solchen Angelegenheiten bei kleinenFachhändlern besser aufgehoben als bei großen Discountern.

� HVMWenn Sie die hardwarebasierte Virtualisierung nutzen, also Betriebsystemein virtuellen Maschinen betreiben möchten, die aus verschiedenen Gründennicht auf Paravirtualisierung portiert werden können (beispielsweise Micro-soft Windows), dann kommen Sie um den Einsatz der neuesten Intel- undAMD-Prozessoren (Intel-VT und AMD-V) nicht herum. Aber auch, wenn Sieeinen derartigen Prozessor Ihr Eigen nennen, bedeutet dies nicht, dass Siediesen auch wie gewünscht nutzen können.

Einige moderne Mainboards haben zwar den passenden Sockel für diese Pro-zessoren und nutzen die Multicore-Leistungen der Prozessoren, haben aber dieUnterstützung für Virtualisierung standardmäßig deaktiviert oder versteckt.Solange die Funktion nur abgeschaltet ist, brauchen Sie diese lediglich imBIOS zu aktivieren. Wenn das BIOS diese Option aber gar nicht anbietet,haben Sie ein größeres Problem. Hier hilft oftmals nur eine Anfrage beimHerstelles des Boards nach einem BIOS-Update oder der komplette Neukauf(bzw. der Umtausch bei Neukäufen).

Wenn Sie sich unsicher sind, ob Ihr Prozessor die Erweiterungstechnikenbesitzt, dann sehen Sie bitte in Abschnitt 7.7 auf Seite 230 nach. Ich werdedort auf die technischen Besonderheiten dieser Technik eingehen und kurzdarstellen, in welchen Prozessoren diese Technik integriert ist.

� ACPIEin weiteres großes Problem stellt oftmals Hardware mit fehlerhaften ACPI-Ta-bellen dar. Für volle ACPI-Unterstützung müssen sowohl die Hauptplatine mitihrem Chipsatz, Timer und BIOS als auch das Betriebssystem und teilweiseauch die CPU ACPI-fähig sein. BIOS und Chipsatz stellen eine Reihe von Tabel-len zur Verfügung, die das System und seine Komponenten beschreiben oderRoutinen anbieten.

189

Page 34: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 190 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Wenn es keine korrekten oder vollständigen Informationen in diesen Tabellengibt, kann das Betriebssystem und damit auch Xen nicht einwandfrei mit derHardware kooperieren.

In der Regel werden Sie an die Information, ob eine Hardware korrekteACPI-Tabellen besitzt, nicht oder nur sehr schwer herankommen. Dies istumso ärgerlicher, als dieser Umstand dazu führen kann, dass die betreffendeHardware eine Virtualsisierung unmöglich macht. Xen hat allerdings ab derVersion 3.2 große Fortschritte im Umgang mit fehlerhaften ACPI-Tabellen ge-macht. So ist Xen im Vergleich zu früher heute wesentlich fehlerresistenter indiesem Zusammenhang.

Es erweist sich als großer Vorteil, wenn Sie die betreffende Hardware vor-her mit einer Live-CD auf Xen-Tauglichkeit testen können. Ich werde auf dieMöglichkeiten dieser Live-CD noch einmal in Abschnitt 5.4 auf Seite 193zurückkommen.

ACPI

Das Advanced Configuration and Power Interface (ACPI) ist ein offener Industriestan-dard für Energieverwaltung in Desktop-Computern, Notebooks und Servern. Er wirdfederführend von den Firmen Hewlett-Packard, Intel, Microsoft, Phoenix und Toshibaentwickelt und stellt Schnittstellen zur Hardwareerkennung, Gerätekonfiguration undzum Energiemanagement zur Verfügung.

Die Kontrolle über das Energiemanagement liegt beim ACPI – anders als beim älterenAPM-Standard – komplett beim Betriebssystem, das einen besseren Überblick überden aktuellen Leistungsbedarf und die Sparmöglichkeiten in einem Rechner hat alsdas hardwareorientierte BIOS. Mit ACPI ist das BIOS des Rechners nur noch fürdie Details der Kommunikation mit der Hardware verantwortlich, die Kontrolle liegtaber beim Betriebssystem. Gegenüber APM werden weitergehende Möglichkeitenzum Energiesparen angeboten.

5.3 Installationsmöglichkeiten

Prinzipiell haben Sie drei Möglichkeiten Xen, zu installieren:

� BinärpaketeXenSource bietet auf der Seite http://xen.org/download/ (siehe Abbildung 5.1)Binärpakete der neuesten Xen-Versionen für die Linux-Distributionen RedHat,Fedora und OpenSUSE (Novell) an. Diese Pakete bieten sich zur Installationan, wenn Sie eine der genannten Distributionen installiert haben und dieneuesten Xen-Pakete wünschen.

190

Page 35: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 191 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Installationsmöglichkeiten 5.3

Die Binärpakete sind auf die neuesten Versionen der jeweiligen Distributionenabgepasst und kompiliert worden. Es kann also aufgrund nicht aufzulösenderAbhängigkeiten zu Problemen kommen, wenn Sie eine ältere Version dieserDistributionen verwenden. In diesem Fall hilft nur eine Installation aus denQuellen (siehe nächster Punkt).

XenSource veröffentlicht keinerlei Sicherheitsupdates für neuere Kernel. Lautder Entwickler ist für das Patchen (und damit auch für das Beheben vonSicherheitslöchern) der jeweilige Distributor zuständig.

� QuellenAuf derselben Downloadseite finden Sie ebenfalls die Quellpakete der neues-ten Xen-Version. Bei der Installation dieser Pakete stehen Sie vor der teilweisehaarsträubenden Aufgabe, alle Abhängigkeiten selber installieren zu müssen.Allerdings werden den unerschrockenen Benutzern dadurch Wege eröffnet,die sonst verschlossen bleiben. So hat man direkten Einfluss auf neue Funktio-nen und kann selber bestimmen, welche Komponenten und Treiber enthaltensein sollen.

� DistributionspaketeDie einfachste Möglichkeit ist selbstverständlich, die Paketverwaltung der in-stallierten Distribution zu bemühen. Nahezu jeder Hersteller hat in seineraktuellen Distribution vorkompilierte Xen-Pakete, die sich nahtlos in das be-stehende Linux integrieren. Mit diesen Paketen gelangen Sie innerhalb weni-ger Minuten ans Ziel.

Diese Möglichkeit hat aber auch noch einen weiteren gewichtigen Faktor,der nicht unterschätzt werden sollte: die Sicherheit. Wie ich bereits bei derBehandlung der Quellen erwähnte, fühlt XenSource sich für eventuelle Sicher-heitslücken nicht zuständig, wenn Xen auf einem anderen Kernel als 2.6.16eingesetzt wird. XenSource stellt lediglich Patches zur Verfügung, die den Be-trieb von Xen auf neueren Kernels ermöglicht. Für das Einpflegen dieser Pat-ches und das »Stopfen von Sichereitslöchern« sind allerdings die Distributorenzuständig.

Die Vorgehensweise von XenSource ist nicht nur negativ zu bewerten, öffnetsie doch den kommerziellen Distributoren die Tür zum Anbieten von Supportund Sicherheits-Updates.

Sie erfahren Näheres über die verschiedenen Installationsmöglichkeiten in Kapitel9, »Installation«, ab Seite 311. Dort sind unterschiedliche Installationsanleitungennach Distributionen sortiert.

191

Page 36: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 192 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Abbildung 5.1 Der Downloadbereich von Xen

Sicherheit

Wenn Sie Ihre ersten Erfahrungen mit Xen machen oder die Kompatibilität miteinem bestimmten Betriebssystem testen möchten, so empfiehlt es sich, dass Siein einer ersten Test-Installation sämtliche optionalen Sicherheitsfunktionen wieSELinux, Firewall usw. abschalten. Sie können durch falsche Konfiguration dieserMechanismen erheblichen Schaden anrichten und potentiellen Angreifern Türund Tor öffnen.

192

Page 37: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 193 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Live-CDs 5.4

Testsystem

Ich rate Ihnen, sich zuerst mit der grundlegenden Arbeitsweise von Xen in derPraxis (auf einem Testsystem) vertraut zu machen und die ersten Konfigurationenan einem virtuellen Netzwerk vorzunehmen, bevor Sie mit der Umrüstung IhresServers beginnen.

Sie erfahren alles Wesentliche über Xen-Netzwerke und deren Konfiguration inAbschnitt 10.3, »Netzwerktechnik«, ab Seite 359.

5.4 Live-CDs

Um Ihre ersten Schritte mit Xen zu wagen oder Hardware auf ihre Kompatibilitätzu testen, sind Live-CDs besonders hilfreich. Sie erlauben es, Xen auf Herz undNieren zu prüfen, ohne Ihr installiertes und stabiles System zu gefährden. Eineandere Möglichkeit besteht darin, mit einer Live-CD zum Computerhändler zugehen, um den gewünschten PC oder das Notebook vorab zu testen.

Zurzeit gibt es eigentlich nur eine wirkliche Xen-Live-CD: Xenoppix (siehe Ab-schnitt 5.4.2, »Xenoppix«, auf Seite 194).

5.4.1 XenSource

Bis zur Veröffentlichung von Xen 3.0.3 gab es von XenSource eine regelmäßigaktualisierte Demo-CD als Image zum Download. Inzwischen ist Xen um einigeVersionsnummern älter, ohne dass diese CD aktualisiert wurde, und es ist zuvermuten, dass die Version 3.0.3 die letzte ihrer Art bleibt. Allerdings reicht dieseverhältnismäßig alte Version noch zum Testen für grundsätzliche Funktionen aus.

Leider veraltet

Inzwischen finden Sie das CD-Image nur noch im Archiv der XenSource-Home-page, wenn Sie dort das Verzeichnis 3.0.3 auswählen.

Diese Demo-CD ist im Prinzip nichts anderes als eine Live-CD, wenn man davonabsieht, dass sie nicht distributionsspezifisch, sondern Xen-spezifisch ist.

Dieser Unterschied fällt sofort auf, wenn man von der Demo-CD bootet. BeimBootloader-Menü kann man wählen, welche Distribution man als Dom0, alsoals Wirt, einrichten möchte. Zur Auswahl stehen hier Debian (Standard), CentOSund OpenSUSE. Alle drei Systeme sind identisch eingerichtet, und Sie können IhrLieblingssystem wählen (falls es in dieser kurzen Auflistung enthalten ist).

193

Page 38: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 194 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

5 Voraussetzungen

Ich gehe im Folgenden davon aus, dass Sie die Standard-Einstellung unverändertlassen und Debian booten. Am Anmeldebildschirm lauten die Login-Daten:

Benutzername: rootPasswort: xensource

Listing 5.4 Login-Daten

Nach der Anmeldung starten der XFCE-Fenstermanager, ein Terminal und derHilfebrowser mit Informationen zur Nutzung der Demo-CD.

Integriertes CentOS

Mit der Eingabe dieses Befehls startet CentOS als virtuelle Maschine:

root$ xm create -c /root/centos-conf -name=centos

Listing 5.5 Start eines virtuellen CentOS

Wenn die Distribution im VNC-Viewer problemlos bootet, dann ist die zugrundeliegende Hardware grundsätzlich für die Paravirtualisierung mit Xen geeignet.Einer Installation von Xen außerhalb einer Live-CD steht in diesem Fall zumeistnichts mehr im Wege.

Die Xen-Live-Version entspricht der Begleit-CD zu diesem Buch. Nähere Detailsfinden Sie in Kapitel 6, »Nutzung der beiliegenden Live-CD«, auf Seite 197 nach.

5.4.2 Xenoppix

Xenoppix ist eine auf Knoppix basierende Live-CD, in der verschiedene Virtua-lisierungslösungen integriert sind, u.a. auch ein modifizierter Xen-Kernel. DesWeiteren befinden sich in Xenoppix einige Startskripte, mit denen sich eine unpri-vilegierte Domain schnell und unkompliziert von der CD starten lässt. Die offizi-elle Homepage des Projektes hat die Adresse http://unit.aist.go.jp/itri/knoppix/vmknoppix/ndex-en.html. Die Links zum Download sind auf der sehr unübersicht-lichen Seite gut versteckt: Sie befinden sich innerhalb des Fließtextes. SuchenSie die Links unterhalb einer neuen Release-Ankündigung oder nutzen Sie dieSuchfunktion ihres Browsers.

Das Xenoppix-Projekt verspricht, dass die Xenoppix-CD die Gastsysteme Plan 9und NetBSD gleichsam von Haus aus integriert hat. Dies galt allerdings nur fürdie ersten Versionen dieser Live-CD. Inzwischen sind diese beiden Distributionenaus Xenoppix verschwunden.

194

Page 39: Xen - Voraussetzungen

Marcus Fischer – Xen – Erste Auflage – November 2008 Galileo Press, ISBN: 978-3-8362-1118-5Layout: gp.cls, Version 3.2.002 (27th September 2008), (C) Daniel Lauer, Bonn Mit TEX bearbeitet am 4. November 2008, 23:56 Uhr Umlaut-Check: äöüÄÖÜ.

S. 195 Einstellungen: ohne Marginalien – ohne Seitenrand – mit Taben – mit Kapitel-Intro – normal breit

Live-CDs 5.4

Download-Probleme

Zum Zeitpunkt der Drucklegung dieses Buches basierte Xenoppix auf Knoppix5.1.1 und Xen 3.0.4. KVM/QEMU sind ebenfalls enthalten. Es war mir in letzterZeit allerdings nicht mehr möglich, das Image von einem Server (http oder ftp)herunterzuladen. Die einzig verbliebene Möglichkeit bestand in einem Bittorent-Download, der sich aufgrund einer geringen Anzahl von Seedern sehr langsamvollzog.

Im Bootloader der CD müssen Sie auswählen, welchen Kernel Sie starten möchten(Xen oder normal). Nach dem Booten erscheint die KDE-Desktop-Umgebung, inder Sie ein Terminal starten können. Wenn Sie

user$ sudo knoppixU

Listing 5.6 Start eines virtuellen Knoppix

eingeben, startet der VNC-Viewer mit einer virtuellen Knoppix-Instanz. Wenndies gelingt, war der Test erfolgreich und Sie können davon ausgehen, dass Xenauch bei einer festen Installation problemlos seinen Dienst verrichetet.

Xenoppix richtet die benötigten Gerätetreiber mit den Autoconfig-Funktionenvon Knoppix ein und erlaubt es, Gastsysteme zu booten. Knoppix stellte dabeiauch das X-Window-System zur Verfügung. Der Zugriff auf die Gastsysteme wirdüber VNC im Vollbildmodus realisiert, sodass es so scheint, als würden die Gästeallein auf dem System laufen.

Der Zugriff auf das Host-System ist mit der Tastenkombination��

��Strg +

��

��Alt +

��

��F1 möglich, das Gastsystem ist mit

��

��Strg +

��

��Alt +

��

��F5 zu erreichen.

Server-Betrieb möglich

Da die Gastbetriebssysteme über die VIF-Bridge von Xen mit einer eigenen IP-Adresse per DHCP versorgt werden, lassen sie sich auch als Server einsetzen. Al-lerdings booten die Gäste nur, wenn das Netzwerk-Interface eth0 vorhanden ist.Der Knoppix-Installer funktioniert mit Xenoppix nicht. Wenn Sie wissen möch-ten, ob die zugrunde liegende Hardware nicht nur Paravirtualisierung, sondernauch die hardwarebasierte Virtualisierung (HVM) beherrscht, geben Sie folgendesin einem Terminal ein:

user$ sudo knoppixHVM

Listing 5.7 Start der hardwarebasierten Virtualisierung

195