Hypervisor für Windows Server 2008

Virtualisierung mit Hyper-V

16. März 2008, 23:00 Uhr | Dr. Bernhard Tritsch/wg Dr. Bernhard Tritsch ist Vice President Research and Development bei Login Consultants.

Microsoft bietet mit Virtual Server und Virtual PC seit geraumer Zeit Software für die Hardwarevirtualisierung, jedoch war diese meist nicht für Unternehmen mit ihren hohen Qualitätsansprüchen geeignet. Im Rahmen von Windows Server 2008 haben die Redmonder die Betaversion einer neuen Virtualisierungstechnik namens Hyper-V eingeführt. Die finale Version soll innerhalb von 180 Tagen nach der Markteinführung von Windows Server 2008 verfügbar sein.

Hyper-V ist – wie der Name schon vermuten lässt – ein so genannter Hypervisor. Dieser legt sich
als Virtualisierungs- und Abstraktionsschicht zwischen die Hardware und das Windows-Betriebssystem.
Die Hypervisor-Software ist weniger als 1 MByte groß und lässt sich ausschließlich auf der
64-Bit-Version von Windows Server 2008 oder von Windows Server 2008 Core als Rolle aktivieren.
Windows Server 2008 Core ist eine "abgespeckte" Version des Betriebssystems, das nicht mehr über
die gewohnte grafische Benutzeroberfläche verfügt, sondern nur noch eine textbasierte
Bedienschnittstelle hat. Der resultierende Ressourcenbedarf eines solchen System ist deutlich
geringer, und auch die Angriffsfläche für Schadcode reduziert sich damit beträchtlich.

Die Aktivierung von Hyper-V gelingt jedoch nur, wenn die eingesetzte physische Prozessorbasis
64-Bit und die Virtualisierung über spezielle Erweiterungen unterstützt. Bei Intel ist dies mit VT
(Codename Vanderpool) und bei AMD mit AMD-V (Codename Pacifica) realisiert. Bevor Hyper-V auf einem
Server eingerichtet werden kann, sind diese Virtualisierungsfunktionen auf CPU-Ebene möglicherweise
erst über das BIOS zu aktivieren. Dies ist jedoch abhängig vom Serverhardwarehersteller. Die
zugehörigen Prozessorerweiterungen übernehmen dann jene Aufgaben der Virtualisierung, die nur
schwierig oder ineffizient in Software realisierbar sind.

Die restlichen Anforderungen von Hyper-V an die Hardwarekomponenten sind identisch mit den
Anforderungen, wie sie auch für Windows Server 2008 gelten – es sind daher keine "exotischen"
Voraussetzungen zu erfüllen, um eine Virtualisierungsplattform aufzubauen. Klares Designziel von
Hyper-V war und ist es, in die normale Landschaft von Windows-Servern zu passen und somit ein Teil
des "Microsoft-Ökosystems" zu werden.

Funktionsweise von Microsofts Hypervisor

Wie aber funktioniert Hyper-V, und warum ist es so klein? Selbst Virtual PC belegt doch schon
deutlich mehr Speicher. Im Grunde wird das ursprünglich direkt auf der Hardware installierte
Windows Server 2008 bei der Installation der Hyper-V-Rolle virtualisiert, indem sich der schlanke
Hypervisor zwischen Betriebssystem und Hardware schiebt. Somit wird aus einer zuvor konventionell
installierten Instanz von Server 2008 die so genannte "Parent-Partition", ein Begriff, der stark an
IBMs Host-Welt erinnert.

Die Parent-Partition verfügt über die richtigen Treiber, um mit der physischen Hardware zu
kommunizieren. Diese Treiber bilden nun die Endpunkte für den so genannten Vmbus – ein Protokoll,
das der Hypervisor zur Kommunikation von virtuellen Maschinen mit den physischen Peripheriegeräten
der realen Hardware bereitstellt. Dies erklärt, warum eine Parent-Partition grundlegende
Voraussetzung dafür ist, dass sich weitere virtuelle Maschinen einrichten lassen. Der Vmbus ist
daher so etwas wie ein Multiplexer für Eingabe- und Ausgabedatenströme: Mit seiner Hilfe greift
immer nur eine einzige Instanz des Betriebssystems aus der Parent-Partition mit seinen Treibern auf
die angeschlossenen physischen Geräte zu, was Konflikte verhindert.

Parent- und Child-Partitionen

Installiert der Systemverwalter nun neben der Parent-Partition weitere virtuelle Maschinen, so
befinden diese sich am Ende jeweils in "Child-Partitions". Damit das Betriebssystem in einer
Child-Partition auf physische Geräte wie beispielsweise Netzwerkadapter zugreifen kann, muss es
zuvor einen virtuellen Netzwerkadapter mit einem Treiber erhalten, der die Kommunikation über den
Vmbus erlaubt – eine direktere Anbindung an physische Geräte ist nicht möglich.

Daher ist es erforderlich, nach der Installation eines neuen Betriebssystems in seiner
Child-Partition zunächst die geeigneten Erweiterungen – "Enlightenments" genannt – aus einer
mitglieferten virtuellen "Integration Services Setup Disk" zu installieren. Darauf befinden sich
die nötigen Treiber und Dienste zum Zugriff auf den Vmbus. An dieser Stelle ist anzumerken, dass
die Virtualisierung unter Citrix/Xen und Vmware ESX Server 3i (nicht aber der "normale" Vmware ESX
Server) ähnlichen Konzepten folgt. Somit fällt es den Partnern Microsoft und Citrix auch
verhältnismäßig leicht, ihre jeweiligen Hardwarevirtualisierungstechniken zu koppeln, was die
beiden Hersteller erst in jüngster Vergangenheit gemeinsam angekündigt haben.

Verwaltung zentraler Ressourcen

Der Hypervisor zwischen den Partitionen und der physischen Hardware kümmert sich somit nur um
zentrale Ressourcen wie beispielsweise Prozessoren und Hauptspeicher, die Zuteilung der
Zugriffszeiten oder die Partitionsverwaltung. Zwischen dem Hypervisor und der Parent-Partition
exisitiert eine Sicherheitsbarriere für die Ausführung von Code. Diese Barriere wird von den
Virtualisierungsfunktionen aufgebaut, die sich auf der Ebene der Prozessorhardware befinden.

Höher priorisierter Modus

Im Grunde wird der Hypervisor dabei in einem zusätzlichen Prozessormodus ausgeführt, der höher
priorisiert ist als der Kernel-Modus (für die Betriebssystemkomponenten) und der Benutzermodus (für
Anwendungen und Hintergrunddienste). Dies erschwert die Ausführung von Fremdcode im Kontext des
Hypervisors deutlich, was auch für den Code von Treibern gilt. Auch Xen verfolgt mit seinem
Open-Source-Hypervisor einen ähnlichen Ansatz. Dieses Vorgehen verhindert nicht zuletzt die
Injektion von Schadcode in den Hypervisor und soll natürlich auch helfen, die Leistungsfähigkeit
der Virtualisierung im Vergleich zu Virtual Server oder Virtual PC zu verbessern: Schließlich
werden mit Hyper-V die zugehörigen Funkti-onen direkt in Hardware ausgeführt.

Die Eigenschaften von Hyper-V sind durchaus beachtlich und stehen denen von Microsofts stärkstem
Wettbewerber Vmware nicht mehr viel nach: Der Hypervisor kann aufgrund seiner 64-Bit-Architektur
auf bis zu 2 TByte physischen Speicher zugreifen – und viel Speicher ist für den parallelen Betrieb
mehrerer Child-Partitionen durchaus nötig. Jede darin ausgeführte virtuelle Maschine kann bis zu
vier Prozessorkerne, 32 GByte Seicher, zwölf Netzwerkkarten und vier SCSI-Adapter mit jeweils bis
zu 256 Festplatten beinhalten. Jedoch sollte man immer bedenken, dass es sich bei Hyper-V noch um
eine Betaversion handelt, die noch keine abschließenden Aussagen bezüglich Performance und
Skalierbarkeit im produktiven Umfeld erlaubt. Interessante Funktionen wie das Umziehen laufender
virtueller Maschinen von einem Hyper-V-Server zu einem anderen (Live-Migration) sollen aber laut
Microsoft erst in einer späteren Produktversion unterstützt werden.

Das Anlegen einer neuen virtuellen Maschine – und somit einer neuen Child-Partition – erfolgt
über ein spezielles MMC-Snap-in (Microsoft Management Console), das in den Server-Manager von
Windows Server 2008 eingebettet ist. Von dort aus lässt sich eine komplett neue virtuelle Maschine
erstellen oder eine bestehende virtuelle Maschine importieren.

VM und Festplatte getrennt zu behandeln

Dabei ist es wichtig zu wissen, dass virtuelle Maschinen und virtuelle Festplatten getrennt
voneinander betrachtet werden: So ist es möglich, eine virtuelle Maschine mit Prozessor,
Hauptspeicher, Festplatten-Controllern und Netzwerkadaptern (natürlich alle virtuell), jedoch ohne
Festplatte zu erzeugen. Eine zugehörige virtuelle Festplatte im VHD-Format (Virtual Hard Disk) kann
der Administrator bei Bedarf später hinzufügen. Dies erlaubt den einfachen Austausch von
Festplatten einschließlich Betriebssystem und installierten Anwendungen zwischen unterschiedlichen
virtuellen Maschinen. Das Verwaltungswerkzeug für Hyper-V beinhaltet daher auch Funktionen zum
Editieren solcher virtueller Festplatten.

Windows Server 2008 in der Parent-Partition stellt neben den mitglieferten grafischen
Verwaltungswerkzeuge auch Programmierschnittstellen zur Verfügung. Skripte, eigene
Verwaltungswerkzeuge oder Managementlösungen wie Microsofts System Center können die
Hyper-V-Funktionen daher über WMI (Windows Management Instrumentation) nutzen. Ein spezieller
Windows-Dienst, der im Kontext der Parent-Partition läuft, kümmert sich um die Einhaltung
vordefinierter Richtlinien – beispielsweise die Zuordnung von Rechenzeit – und die Verwaltung der
Speichernutzung. Für die Ermittlung von Statistikdaten und die Konfigurationskontrolle kommt pro
virtueller Maschine ein weiterer Hilfsprozess in der Parent-Partition zum Einsatz.

Über so genannte Snapshots ist es zudem möglich, den Zustand einer virtuellen Maschine zu
konservieren, bevor man Änderungen daran vornimmt. Mehrere Snapshots lassen sich in einen
hierarchischen Zusammenhang bringen, was Tests und schrittweise Rollbacks deutlich vereinfacht.

Die aktuellen Windows-Betriebssysteme lassen sich sowohl in der 32-Bit- als auch in der
64-Bit-Variante als Gäste auf Hyper-V installieren. Für Windows XP und Windows Server 2003 ist
dabei mindestens das Service-Pack 2 Voraussetzung. Windows Server 2008 und Windows Vista sind sogar
schon so angepasst, dass sie bemerken, wenn sie in einer virtuellen Maschine laufen. Microsoft
nennt dies ein "bimodales" Betriebssystem. Somit muss der Administrator nicht verschiedene oder
speziell angepasste Versionen des jeweiligen Betriebssystems installieren, die entweder für
virtuelle oder für physische Umgebungen optimiert sind. Linux geht hier mit seiner
Paravirtualisierung einen etwas anderen Weg, da es die Erzeugung von eigenen Versi-onen für
virtuelle Umgebungen erfordert und als Open-Source-Lösung auch erlaubt.

Preisgestaltung

An dieser Stelle ist es interessant, auf den Anschaffungspreis zu schauen: Ein
Stand-alone-Hyper-V-Server wird nach Angaben von Microsoft nur 28 Dollar kosten – also lediglich
rund 20 Euro für einen vollständigen Windows Server 2008, auf dem eben nur die Rolle Hyper-V
aktivierbar ist. Jedoch sollte man bedenken, dass sich bei einer Virtualisierungstechnik wie
Hyper-V schnell die Relevanz integrierter Verwaltungswerkzeuge erkennen lässt. Diese Werkzeuge
erlauben die Erstellung und Manipulation von Serverinstallationsvorlagen sowie das Management
größerer Gruppen von physischen Virtualisierungsplattformen, virtuellen Servern und virtuellen
Desktops. Diese Werkzeuge haben in der Regel einen Preis, der 28 Dollar deutlich übersteigt, was
das Geschäftsmodell hinter Hyper-V verdeutlicht: Wie ein Handy im Mobilfunk-Business bringt
Microsoft die VM-Plattform für möglichst wenig Geld auf den Markt, um dann den zugehörigen
Entwicklungs- und Distributionsaufwand über zusätzliche Lösungen oder Dienstleistungen zu
subventionieren.

Eine Anmerkung zum Schluss: Die weiter oben genannten Virtualisierungstechniken und Hyper-V
schließen einander nicht aus. Ganz im Gegenteil: Es ist zu erwarten, dass in Zukunft mehrere
Komponenten des "Virtualisierungs-Stacks" miteinander verbunden werden. So ist es beispielsweise
möglich, dass Terminalserver mit isolierten Anwendungen auf virtuellen Servern in naher Zukunft
nicht die Ausnahme, sondern die Regel sind – falls die Entkopplung physischer Serverhardware ein
wesentliches Entscheidungskriterium ist und die Hardwarevirtualisierung nur wenig mehr Ressourcen
verbraucht als die Installation direkt auf dem physischen Server. Dies bedeutet aber auch, dass die
Komplexität einer Serverumgebung im Rechenzentrum wächst, während der bedarfsgesteuerte Zugriff auf
Anwendungen aus Sicht der Benutzer immer einfacher wird. IT-Architekten, Consultants und
Systembetreuer mit entsprechendem Fachwissen werden daher mit größter Sicherheit attraktiv für
viele Unternehmen sein.


Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Lampertz GmbH & Co. KG

Matchmaker+