Microsoft Hyper-V
|
|
Was ist Hyper-V?
Servervirtualisierung oder allgemein Virtualisierung ist heute kein bloßer Trend mehr, sondern eine logische Konsequenz der bisherigen EDV-Entwicklung. Sie ist vielmehr eine zukunftsweisende Perspektive, an der langfristig niemand mehr vorbeigehen wird. Aus diesem Grund hat Microsoft als größter Hersteller von (Server-)Betriebssystemen reagiert und seine Plattform Windows Server 2008 bzw. Windows Server 2008 R2 um eine innovative Virtualisierungstechnologie ergänzt, welche den Namen Hyper-V trägt.
Was ist Virtualisierung?
Unter Virtualisierung versteht man in der EDV genau genommen die Möglichkeit, reale Ressourcen wie beispielsweise ganze Betriebssysteminstallationen logisch statt physikalisch voneinander zu trennen und sie trotzdem wahlweise auf eine einzige Hardwareplattform abzubilden. Für den Fall, dass Ihnen diese Definition nicht weiterhilft, verdeutlichen wir sie am besten mit Hilfe von Mathematik, denn nichts ist so eindeutig wie die Mathematik und die Tatsache, dass Servervirtualisierung unumgänglich ist.
Mathematisch gesehen, haben wir bislang bijektiv abgebildet, was so viel bedeutet, wie die Installation eines einzigen bestimmten Betriebssystems auf einem einzelnen Rechner. Zwar war es bis dato auch möglich, mehrere Installationen von unterschiedlichen Systemen auf derselben Plattform zu unterhalten, parallel liefen sie dabei allerdings nicht, da jedes Betriebssystem per se autokratisch ist – also die zugrundeliegende Hardware für sich selbst beansprucht. Virtualisierung macht nun demgegenüber die surjektive Abbildung (rechts im untenstehenden Bild) von Betriebssystemen auf die vorhandenen Hardwareplattformen möglich, wodurch also mehrere Installationen gleichzeitig auf derselben physischen Basis zum Laufen gebracht werden können.

Die Betriebssysteminstallationen werden im Rahmen der Virtualisierung zu einzelnen virtuellen Maschinen zusammengefasst, die sich jeweils wie unabhängige logische Rechner verhalten. Damit die Menge der virtuellen Maschinen auf einer einzigen Hardwareplattform gleichzeitig und trotzdem isoliert ausgeführt werden kann, bedarf es einer verhältnismäßig „dünnen“ Softwareschicht, die für die Verwaltung der virtuellen Maschinen und den kontrollierten Zugriff auf die Hardware zuständig ist. Diese spezialisierte Steuerungsschicht der Virtualisierung nennt man Hypervisor und genau aus diesem Begriff leitet sich auch der von Microsoft gewählte Produktname ab.
Warum Servervirtualisierung?
In einem typischen IT-Umfeld ergeben sich irgendwann zwangsläufig bestimmte Szenarien, die sich mit Mitteln der Virtualisierung vollständig abdecken lassen, was allein technisch enorm vorteilhaft ist. So könnte eine große heterogene EDV-Landschaft recht einfach konsolidiert werden, was faktisch bedeutet, dass die vorhandene Hardware reduziert wird. Dabei werden veraltete und damit anfällige Komponenten entfernt und idealerweisen durch einige wenige — dafür aber leistungsstarke — Plattformen ersetzt. Die ursprünglichen Installationen werden nun virtualisiert, wodurch eine exakte logische Kopie in Form einer virtuellen Maschine entsteht. Dadurch erübrigt sich die Neuinstallation der Betriebssysteme und der entsprechenden Software. Anschließend werden die virtuellen Maschinen auf die reduzierte bzw. überholte Menge der Hardware verteilt.
Neben der Konsolidierung gibt es in vielen Unternehmen einen beträchtlichen Entwicklungs- und Testbedarf. Selbstverständlich kann ein solcher Bedarf nur in separaten Umgebungen erfüllt werden, um die Produktion nicht zu beeinträchtigen. Virtualisierung macht dabei die Isolation solcher Umgebungen extrem einfach, ohne jedoch zusätzliche Hardware zu benötigen. Wo wir gerade von Beeinträchtigung sprechen, ein Unternehmen existiert nur solange erfolgreich weiter wie seine IT zuverlässig arbeitet. Ausfallsicherheit ist dabei von entscheidender Bedeutung. Mit Mitteln der Virtualisierung ist es heute möglich, nahezu jede Ressource abzusichern und dabei trotzdem an Hardware zu sparen. Die Geschäftskontinuität bleibt also vollständig erhalten. Alle diese entscheidenden Aspekte bilden schlussendlich ein dynamisches Rechenzentrum, welches seine physischen Ressourcen bestmöglich auslastet, ohne sie jedoch dabei zu überlasten. Weiterführende Verwaltungswerkzeuge bieten zahlreiche Automatisierungs- und Optimierungsmöglichkeiten, um die Administration tatsächlich dynamisch zu gestalten.
Wie funktioniert Hyper-V?
Die Hyper-V-Technologie, die es in zwei Ausführungen — zum einen als Merkmal von Windows Server 2008 und zum anderen als eigenständiges Produkt Microsoft Hyper-V Server — gibt, setzt voll und ganz auf die Leistungsfähigkeit von 64-Bit Systemen — etwas, was moderne Hypervisor der Enterprise-Klasse auszeichnet. Diese Eigenschaft ist jedoch nicht zu verwechseln mit der Möglichkeit, sowohl 64-Bit als auch 32-Bit Systeme als virtuelle Maschinen abzubilden. Warum Hyper-V auf 64-Bit setzt ist intuitiv klar, doch die Leistungssteigerung bei der Virtualisierung wird nicht nur allein durch die Tatsache erreicht, dass die 64-Bit-Prozessoren mehr als 4 GB an Hauptspeicher adressieren und doppelt so viele Daten pro Takt verarbeiten können wie die traditionellen 32-Bit CPUs. Vielmehr nutzt Hyper-V die neue Intel VT bzw. AMD-V Technologie. Um diese am besten zu erklären, muss man zunächst daran zurückdenken, dass viele Betriebssysteme in Form von virtuellen Maschinen dieselbe Hardware teilen müssen und eben auch denselben Prozessor. Herkömmliche Virtualisierungslösungen umgingen das Problem durch geschickte Emulation (also Nachbildung, auch Vollvirtualisierung genannt) von Hardwarekomponenten für jede einzelne virtuelle Maschine. Da es beispielsweise nicht möglich ist, mehrere virtuelle Maschinen unkontrolliert auf eine einzige physische Netzwerkkarte zugreifen zu lassen, muss diese Netzwerkkarte vielfach virtuell zur Verfügung gestellt werden, um so geordnete (Schein-)Parallelität zu ermöglichen. Es wird deutlich, dass solche Emulationen mit einem erheblichen Rechenaufwand verbunden sind, der dann den virtuellen Maschinen nicht mehr zugutekommt. Intel und AMD als größte Prozessorhersteller haben reagiert und Technologien vorgestellt, die auf den Punkt gebracht mehr entscheidende Code-Teile direkt von der CPU ausführen lassen und damit dem Hypervisor viel Arbeit abnehmen. In der neuesten Ausführung kann sogar die beispielshafte Netzwerkkarte (oder eine andere Komponente) einem Gastsystem exklusiv bereitgestellt werden, was die entsprechende Emulation überflüssig macht. Das erklärte Ziel solcher Technologien ist also die schrittweise Verlagerung von Steuerungsfunktionen der Softwareschicht (Hypervisor) in die Hardware selbst.

Hyper-V zählt zu den so genannten Bare-Metal-Virtualisierern, da die Virtualisierungssoftware nicht mehr wie früher hierarchisch gesehen über einem vollständigen Betriebssystem installiert wird, sondern ein Mikrokernel (also ein kompakter Softwarekern) direkt auf der „nackten“ Hardware zum Einsatz kommt und dort den Hypervisor realisiert. Zur Verwaltung der Virtualisierung wird auf dieser Plattform eine Parent-Partition eingerichtet, in der wiederum das Windows Server 2008-Betriebssystem installiert wird. Neben der administrativen Seite ermöglicht die Parent-Partition gleichzeitig die Virtualisierung von älteren Betriebssystemen (wie etwa Windows NT oder Windows 2000), die ihrerseits die herkömmliche Technik der Emulation erfordern. Damit ist die Parent-Partition beispielsweise mit der Domain 0 in dem Citrix XenServer-Ansatz zu vergleichen, in dem ein spezialisiertes Linux-System die gleichen Funktionen abdeckt und durch eine eigene Festplattenpartition isoliert ist. In den parallel existierenden, praktisch nur durch die Hardwareausstattung begrenzt vielen, Child-Partitionen finden dann die jeweiligen virtuellen Maschinen bzw. die entsprechenden Gast-Betriebssysteme Platz. Bei den letzteren unterscheidet Microsoft noch zwischen den „Erleuchteten“ (Enlightened) und „Nicht-Erleuchteten“ (Unenlightened). Die „Buddhas“ unter den Betriebssystemen werden dabei so angepasst (wenn sie nicht von Haus aus die Anpassung bereits mitbringen), dass die reale Hardware vor ihnen nicht länger verborgen werden muss (zum Beispiel durch Emulation). Die angepassten Systeme sprechen nun insbesondere die CPU und den Hauptspeicher mit Hilfe von Hypercalls über den Hypervisor an, der seinerseits die jeweils benötigten Ressourcen bei diesen Komponenten reserviert und gleichzeitig die Last zwischen den Abnehmern (also Gastsystemen) verteilt, so dass eine einzelne virtuelle Maschine niemals die gesamte Hardware für sich allein beanspruchen kann (Prinzip der geordneten Parallelität). Die Zugriffe auf die restliche Hardware wie etwa Netzwerkkarten erfolgen dann über die von der Parent-Partition bereitgestellten einheitlichen und damit stabilen Treiber. Dieses Prinzip ist auch unter dem Namen Paravirtualisierung bekannt. Während die reine Paravirtualisierung prinzipiell ohne Hardwareunterstützung wie Intel VT oder AMD-V auskommt, ist es mit aktuellen Prozessoren sogar schon möglich, den Hypervisor weiter zu entlasten, indem kritische Funktionen wie Hauptspeicher- und Eingabe-/Ausgabe-Virtualisierung in die Hardware — also in die CPUs selbst — verlagert werden. Dieser Ansatz, der bei Hyper-V Verwendung findet, entspricht der derzeit besten Kombination von Techniken, um größtmögliche Leistungsausbeute zu erreichen. Hardwareunterstützte Vollvirtualisierung wäre zwar theoretisch noch effizienter, allerdings ist die heutige Prozessortechnik leider noch nicht soweit fortgeschritten.
Was bringt mir Hyper-V?
Neben der effizienten Architektur bietet Hyper-V weitere herausragende Funktionen, die in Sachen Servervirtualisierung auf der Unternehmensebene heutzutage absolut essentiell sind. Da wäre beispielsweise als erstes die Hochverfügbarkeit zu nennen. Um diese zu realisieren, ist das so genannte Failover-Clustering dafür verantwortlich, bei einem Hardwaredefekt oder einem anderen Ausfall die entsprechenden virtuellen Maschinen automatisch auf ein anderes Wirtssystem zu migrieren, das Mitglied dieses Clusters ist (daher auch der Name).

Unterbrechungen werden dabei auf ein Mindestmaß reduziert, weil die Migration mittlerweile in Echtzeit erfolgt, was nicht zuletzt der Einführung von Cluster Shared Volumes (CSV) zu verdanken ist. CSV wurden mit Windows Server 2008 R2 vorgestellt und ermöglichen einen noch schnelleren und gleichzeitig konsistenten Zugriff auf den gemeinsamen Speicher (Shared Storage) von allen Wirtssystemen eines Clusters.

Der Shared Storage ist in der modernen Virtualisierung unabdingbar, wobei seine Funktionsweise schnell erklärt ist: Ein dediziertes Speichersystem wird innerhalb des gleichen Netzwerks platziert und stellt seinen Speicher in kontrollierter Art und Weise allen anfragenden Servern über spezielle Netzwerkprotokolle zur Verfügung. In seiner einfachsten Form wird dieser gemeinsame Speicher in Form eines Network Attached Storage (NAS) umgesetzt, bei dem es sich prinzipiell um einen spezialisierten Server mit beträchtlicher Festplattenkapazität handelt. In größeren Umgebungen wird der gemeinsame Speicher noch stärker entkoppelt, indem er in einem eigenen Netzwerk oder zumindest Netzwerksegment platziert wird, was auch den Namen Storage Area Network erklärt. Das hat vor allem den Vorteil, dass der Datenverkehr von und zum Speicher die gesamte Bandbreite für sich ausnutzen kann und wenn man bedenkt, dass ein überwältigender Anteil einer virtuellen Maschine aus mindestens einer virtuellen Festplatte besteht und der dadurch entstehende Datentransfer in einem produktiven Netzwerk andere Anwendungen enorm beeinträchtigt, dann liegt das Trennungsprinzip klar auf der Hand.
Virtualisierung erfasst ja offensichtlich immer mehr und mehr Bereiche, die früher ausschließlich monolithisch aufgebaut wurden. So ist es kein Wunder, dass es bereits heute Lösungen gibt, mit denen sich auch Speicher im SAN virtualisieren lässt. Ausgeklügelte Verwaltungssysteme können dabei praktisch jeden denkbaren Datenträger — ob Diskette oder modernste Solid State Disk-Festplatte — organisieren und nach außen als logische Portionen der gesamten Speicherkapazität freigeben. Diese „Speicherhäppchen“ sind deswegen logisch, weil sie sich durchaus aus physischen Anteilen unterschiedlicher Datenträger zusammensetzen können. Das bedeutet also, dass die Verbraucher von außen mit virtuellem Speicher arbeiten und ähnlich wie die Benutzer eines Systems nicht wissen, dass es nicht unmittelbar auf physischer Basis läuft, brauchen sich die Speicherabnehmer nicht um die Verwaltung und Bereitstellung von Speichereinheiten zu kümmern.
Erst der gemeinsame Speicher ermöglicht Funktionen wie beispielsweise Live Migration. Dabei handelt es sich um die Fähigkeit von Hyper-V, virtuelle Maschinen in laufendem Zustand von einem Wirtssystem auf ein anderes innerhalb kürzester Zeit zu verschieben und zwar völlig unterbrechungsfrei.
Daraus ergibt sich enormes Potential — stellen Sie sich einfach vor, Sie hätten ein System, an dem zahlreiche Benutzer angemeldet sind und darin dauernd arbeiten. Was die Benutzer nicht wissen: Das System und die Anwendungen, die sie verwenden, laufen virtuell auf einem Hyper-V Wirtssystem. Nun beschließt der Administrator aufgrund von Wartungsarbeiten etwa, den entsprechenden Server herunterzufahren und das, obwohl die Benutzer unentwegt in den virtuellen Maschinen arbeiten. Mit Hilfe von Life Migration kann der Administrator nun ganz einfach die betroffenen virtuellen Systeme auf einen anderen Hyper-V übertragen, was unter günstigen Umständen noch nicht einmal Minuten dauert, und anschließend wie geplant den zu wartenden Server außer Betrieb nehmen. Dieses Beispiel bringt die Funktionsweise und die Nutzungsmöglichkeiten von Live Migration auf den Punkt. Vor der Einführung von Windows Server 2008 R2 gab es zwar eine ähnliche Technik — Quick Migration — doch sie funktionierte nach einem anderen Prinzip und konnte die virtuellen Maschinen nicht ohne Unterbrechung ihres Betriebes migrieren. Wie funktioniert denn nun die Live Migration im Vergleich dazu, werden Sie sicher fragen. Wie wir bereits festgestellt haben, befinden sich die virtuellen Maschinen eigentlich innerhalb des gemeinsamen Speichers, der von allen Wirtssystemen parallel über das zugrundeliegende Netzwerk angesprochen werden kann. Um ein virtuelles System schnell zu verschieben, ohne es jedoch wie bei Quick Migration zuerst anhalten und zwischenspeichern zu müssen, werden zunächst auf dem Zielsystem die entsprechenden Ressourcen reserviert wie etwa CPU(-Anteile) und Hauptspeicher(-Anteile). Nun wird der Hauptspeicher der jeweiligen virtuellen Maschine Seite für Seite solange zwischen dem Quell- und Zielsystem kopiert, bis die Speicherstände auf beiden identisch sind. In dem Moment wird die Ausführung wie bei einem Staffellauf einfach an das Zielsystem übergeben und fertig ist der Transfer. Zwar ändert sich der zu kopierende Arbeitsspeicher durch die Arbeit der angemeldeten Benutzer immer wieder, mit einem schnellen Netzwerk als Basis ist der Vorgang trotzdem kein Problem und dauert idealerweise nur Sekunden. Weitere Einsatzszenarien für Live Migration sind beispielsweise Lastverteilung und Stromersparnis: Sobald bestimmte Wirtssysteme durch die Anzahl ihrer virtuellen Maschinen überlastet oder einfach nur über eine bestimmte Periode hinweg nicht benötigt werden, können ihre VMs auf die anderen Wirtssysteme verteilt werden.
Was kann Hyper-V noch?
Microsoft wäre nicht Microsoft, wenn Hyper-V sich nicht mit bereits vorhandenen und bekannten Werkzeugen wie etwa Microsoft System Center, das im Bereich Patching, Provisionierung und Support eingesetzt wird, verwalten ließe. Damit lassen sich nun neben physischen auch virtuelle Systeme auf die gleiche Art und Weise überwachen, aktualisieren, steuern und sichern. Mit dem Microsoft System Center Virtual Machine Manager (SCVMM) können Sie heute sogar ganze virtuelle Rechenzentren planen und umsetzen. Dabei haben Sie als Administrator nur noch ein zentrales und einheitliches Werkzeug in ihren Händen, um etwa auf beliebigen Hyper-V Wirtssystemen virtuelle Maschinen einzurichten. Die Einrichtung und Bereitstellung als solche ist kinderleicht, da jeder Schritt von einem Assistenten begleitet wird, der seinerseits mit verschiedenen Vorlagen arbeiten kann. Die Bereitstellungsaufgabe können Sie sogar delegieren, indem Sie diese Funktionen ausgewählten Benutzern über ein Webportal zur Verfügung stellen — so könnte beispielsweise die Test-Abteilung jederzeit selbständig im Rahmen der administrativen Vorgaben neue virtuelle Maschinen nach Bedarf provisionieren. Bei der Konsolidierung geht es, wie wir bereits festgestellt haben, in erster Linie um schnelle und effiziente Zusammenlegung von vorhandenen Ressourcen. Ein wichtiger Bestandteil dieser Aufgabe ist die Virtualisierung bestehender Installationen, auch P2V (Physical to Virtual) genannt. Gerade in einer großen Umgebung kann dieser Vorgang viel Zeit in Anspruch nehmen. SCVMM kann Ihnen diese Arbeit nach anfänglicher Konfiguration übernehmen und vollzieht die Virtualisierung sehr viel schneller als vergleichbare Konkurrenzprodukte. Bevor es überhaupt zu der Virtualisierung kommt, kann SCVMM Konsolidierungskandidaten und ihre Anforderungen an die virtuelle Umgebung identifizieren. Nach einer erfolgreichen Virtualisierung ist die Unterbringung der fertigen virtuellen Maschine der nächste logische Schritt. SCVMM unterstützt dabei die intelligente Platzierung, dadurch dass im Hintergrund regelmäßig Leistungsdaten von Wirtssystemen abgerufen werden. Dadurch können virtuelle Maschinen nicht nur optimal untergebracht werden, vielmehr kann die Last der einzelnen Hyper-Vs im laufenden Betrieb entsprechend verteilt werden, um so die Ausfallsicherheit zu erhöhen und Ressourcen zu maximieren. Sämtliche Daten wie etwa virtuelle Festplatten, ISO-Images zur Einbindung in die virtuellen CDROM-Laufwerke der virtuellen Maschinen und vieles mehr können anschließend in der zentralen Bibliothek abgelegt werden, um sie zu sortieren und katalogisieren. Darüber hinaus arbeitet SCVMM eng mit anderen Verwaltungswerkzeugen von Microsoft zusammen wie etwa Microsoft System Center Operations Manager, Microsoft System Center Configuration Manager, Microsoft System Center Data Protection Manager oder Microsoft System Center Essentials. Sollten Ihnen die zahlreichen Funktionen von SCVMM oder anderen Konsolen nicht ausreichen oder sollten Sie bestimmte Prozesse und Aufgaben noch stärker automatisieren wollen, werden Sie die Windows PowerShell-Integration sehr schätzen.
Was sind die wichtigsten Vorteile?
- Interoperabilität: Das Microsoft VHD-Format für virtuelle Festplatten wird heute von Herstellern wie Citrix und Novell unterstützt, was den Aufbau von heterogenen Virtualisierungsumgebungen und einfache Migrationen innerhalb dieser ermöglicht.
- Umfangreiche Betriebssystemunterstützung inklusive Linux
- Live Migration und Failover-Clustering
- Netzwerk-Lastverteilung: Hyper-V realisiert auf Basis von virtuellen Switches den Windows-Netzwerklastenausgleich (NLB) zwischen virtuellen Maschinen auf verschiedenen Wirtssystemen.
- Snapshots: Zustände laufender virtueller Maschinen können jederzeit in einer Art Schnappschuss gesichert und wiederhergestellt werden.
- Skalierbarkeit durch breite Hardwareunterstützung
- Erweiterbarkeit und Automatisierung durch WMI-Schnittstellen, API und Windows PowerShell
- Integration in andere Microsoft-Produkte
- Spezielle Funktionen wie die Nutzung fortgeschrittener CPU-Architekturen im Einsatz mit Microsoft Clients (Windows 7)
- Schnelle Virtualisierung (P2V)
- Einheitliche Verwaltung (SCVMM)
- Attraktives Lizenzmodell: Sie kaufen beispielsweise eine einzige Windows Server 2008 Enterprise-Lizenz und können damit gleichzeitig ein Hyper-V Wirtssystem und bis zu vier virtuelle Maschinen mit jeweils Windows Server 2008 als Betriebssystem betreiben. So gesehen bekommen Sie vier produktive Server zum Preis von einem.
Was bietet mir die Steen Harbach AG?
Das Thema Virtualisierung haben wir uns auf die Fahnen geschrieben, da wir die Zeichen der Zeit und die Notwendigkeit der Umstellung erkannt haben. In diesem Bereich arbeiten wir auf verschiedenen Ebenen — sei es Applikations-, Desktop- oder Servervirtualisierung — mit den besten uns heute verfügbaren Technologien, zu denen Microsoft Hyper-V eindeutig gehört. Wir identifizieren Unzulänglichkeiten in Ihrer bestehenden Umgebung, planen mit Ihnen zusammen die typischen Szenarien von der Konsolidierung Ihrer IT bis hin zum kompletten dynamischen Rechenzentrum und setzen diese Projekte konsequent um. Neben den grundlegenden Aufgaben wie Planung und Installation liegt unsere Expertise auch im Bereich der Verwaltung. Wir bringen Ihnen administrative Werkzeuge nahe wie den Microsoft System Center Virtual Machine Manager und übernehmen die initiale Konfiguration Ihrer Umgebung. Unsere Erfahrung aus dem Bereich Softwareentwicklung erlaubt es uns, Ihnen auch im Bereich Automatisierung und erweiterte Steuerung (beispielsweise mit Windows PowerShell) unter die Arme zu greifen.





