Virtualisierung von Betriebssystemen

VMware Architektur

Architektur von VMware

Bei der Virtualisierung existieren zwei Architekturvarianten, die zu unterscheiden sind. Zum Einen wird die Virtualisierung auf Basis eines Wirt-Betriebssystems (z.B. Windows oder Linux) vorgenommen. Da das Prägnante an dieser Architektur das Wirt-Betriebssystem ist, welches anderen Gast-Betriebssystemen eine Schnittstelle zur physischen Hardware bietet, wird sie auch als Host-Guest-Architektur bezeichnet. Zum Anderen gibt es eine Architektur ohne Wirt-Betriebssystem, die auch Standalone-Architektur genannt wird. Sie arbeitet lediglich mit einem VMware-eigenen Kernel, kommt also ohne ein Wirt-Betriebssystem aus.
VMware verwendet bei den bisherigen Produkten die Native Virtualisierung mit PreScan. In einem jüngst erschienenen TechPreview hat VMware schon jetzt eine Weiterentwicklung der aktuellen Produkte in Aussicht gestellt und zur Steigerung der Performance wird nun nicht mehr ausschließlich auf die Native Virtualisierung gesetzt. Es wird nun auch die Paravirtualisierung á la XEN benutzt.

Architektur mit Wirt-Betriebssystem (Host-Guest-Architektur)

Bei der Host-Guest-Architektur existiert ein Betriebssystem, das den Zugriff auf die physische Hardware realisiert und als Basis für die ausgeführten Anwendungen dient. Dieses Wirt-Betriebssystem kann eine aktuelle Windows Version oder ein unterstütztes Linux Derivat(SUSE, Red Hat, Ubuntu) sein. Durch die Installation von VMware werden im Wirt-Betriebssystem spezielle VM Treiber(auch VMX Treiber genannt) installiert, welche den direkten Hardwarezugriff ermöglichen. Durch das Laden der VM Treiber entsteht eine so genannte Virtualisierungsschicht.
Diese Virtualisierungsschicht stellt über den Virtual Machine Monitor (VMM) die virtuelle Hardware bereit und verwaltet die Zugriffe auf diese. Durch das Laden des VMM in einen unabhängigen Speicherbereich ist er für das Wirt-Betriebssystem nicht sichtbar. Um eine möglichst gute Performance der Virtuellen Maschinen zu erhalten, werden Prozessor und Hauptspeicheranfragen ausschließlich durch den VMM abgewickelt und nicht an das Wirt-Betriebssystem weitergereicht. Beschränkungen der Hauptspeichergröße und der Prozessornutzung sind trotzdem möglich.
Festplatten- und Netzwerkzugriffe laufen über den VMM, die Virtualisierungsschicht und das Wirt-Betriebssystem, so dass eine optimale Ressourcenkontrolle ermöglicht wird. Somit bildet sie die Basis für die Ausführung der virtuellen Maschinen, deren Aufbau in einem nachfolgenden Abschnitt näher erläutert wird.
Abb.1 Host-Guest Architektur
Die Host-Guest-Architektur wird in mehreren VMware Produkten eingesetzt. Hier sind beispielsweise der VMware Player, als kostenloser Vertreter für den Privatanwender, sowie die VMware Workstation zu nennen. Beide Produkte sind hauptsächlich für das Testen und die Entwicklung gedacht und starten dem entsprechend für jede Virtuelle Maschine ein eigenes Fenster.
Der kostenlose VMware Server nutzt ebenfalls diese Architektur, jedoch sind viele Funktionalitäten als Dienste ausgelagert, so dass keine Benutzeranmeldung notwendig ist. Weiterhin wird nicht für jede Virtuelle Maschine ein eigenes Fenster geöffnet, sondern die Virtuellen Maschinen laufen als eigenständiger Prozess im Hintergrund und werden über eine VMware Server Konsole bedient und konfiguriert.

Architektur ohne Wirt-Betriebssystem (Standalone-Architektur)

Im Gegensatz zur Host-Guest-Architektur wird bei der Standalone-Architektur nicht auf Basis eines Wirt-Betriebssystems virtualisiert. Hier setzt die Virtualisierungsschicht direkt auf der Hardware auf. Deshalb findet man in der Literatur auch den Begriff "bare metal" Architektur.
Die Virtualisierungsschicht stellt auch bei dieser Architektur die virtuelle Hardware für die Virtuellen Maschinen zur Verfügung. Sie übernimmt hierbei alle Aufgaben des ansonsten genutzten Wirt-Betriebssystems. Sie steuert die direkten Hardwarezugriffe und verwaltet die physikalischen Hardwareressourcen. Durch den Wegfall des Wirt-Betriebssystems ist diese Architektur leistungsfähiger und es werden weniger Ressourcen als Overhead benötigt. Zur Verwaltung der Virtuellen Maschinen gibt es bei dieser Architektur eine einfache Shell Konsole, die auf einem Red Hat Linux basiert. Der Kernel der Virtualisierungsschicht ist hingegen ein von VMware selbst entwickelter Kernel, der an die Anforderungen von Virtualisierung angepasst ist. Auch der VM Treiber, der bei der Host-Guest-Architektur ins Wirt-Betriebssystem integriert wurde, um die direkten Hardwarezugriffe zu ermöglichen wird hier nicht benötigt. Dieser ist schon im VMware eigenen Kernel integriert. Durch das Fehlen einer grafischen Oberfläche bei dieser Architektur ist nochmals eine Ressourceneinsparung zu erkennen.
Durch die Ressourceneinsparungen ist diese Architektur wesentlich effizienter als die Host-Guest-Architektur und ist vorrangig für die Konsolidierung von Servern geeignet. Da die Virtualisierungsschicht in einem modifizierten eigenständigen Betriebssystem steckt, ist es nicht mehr möglich einen nicht ausgelasteten Server zu benutzen. Es muss für diese Architektur ein Server neu mit dem modifizierten Betriebssystem installiert werden.
Abb.2 Standalone Architektur
Weiterhin ist es, durch die fehlende grafische Oberfläche auf einer Standalone-Architektur, nicht möglich sich direkt die aktuelle Anzeige eines Servers anzusehen.Das ist nur über einen anderen Computer mithilfe einer web-basierten "Remote Console" möglich. Da diese Architektur für den Einsatz in Unternehmensnetzwerken vorgesehen ist, ist dies eher ein Vorteil. Die Fernwartung wird so um einiges erleichtert. Selbst neue Virtuelle Maschinen können einfach über die "Remote Console" installiert werden.
VMware bietet diese Architektur nur in einem ihrer Produkte an, dem ESX Server. Der ESX Server bietet in der aktuellen Version ein automatisches Load balancing. Es wird die Hochverfügbarkeit von Servern garantiert, was für einen ungestörten Ablauf innerhalb von Unternehmen notwendig ist.
Weiterhin gibt die Möglichkeit mit Hilfe der so genannten VMotion Technologie Virtuelle Maschinen während des Betriebs von einem ESX Server auf einen anderen "umziehen" zu lassen. Die Realisierung sieht so aus, dass nicht die ganze Virtuelle Maschine kopiert wird, sondern das Image der Virtuellen Maschine auf einem gemeinsamen Festplattenspeicher abgelegt ist, z.B. einem SAN oder NAS, und nur der von der Virtuellen Maschine benutzte Hauptspeicher kopiert wird.
Die VMotion Technologie ermöglicht es Wartungsarbeiten auf Servern durchzuführen, ohne dass es zu einer Dienstunterbrechung kommt und somit der Nutzer in seiner Arbeit nicht beeinträchtigt wird.

Architektur mit Hypervisor

Seit neustem bietet VMware in einer TechPreview noch ein Produkt an, dass eine weitere Virtualisierungsarchitektur nutzt. Die neue Architektur arbeitet nicht wie die bisherigen Architekturen mit Nativer Virtualisierung, sondern mit so genannter Paravirtualisierung. Diese Art der Virtualisierung ist effizienter, da keine Hardware visualisiert werden muss. Stattdessen existiert eine definierte Schnittstelle für den Zugriff und die Ressourcenverwaltung der gemeinsamen physikalischen Hardware. Diese definierte Schnittstelle wird hier Hypervisor genannt und in der Praxis über ein spezielles Softwarepaket in das Wirtssystem eingebettet. Bisher existiert nur ein solches Paket, um Linux Versionen anzupassen. Da bei dieser Virtualisierungstechnik die Softwareschnittstelle nicht der standardmäßigen Hardwareschnittstelle entspricht, wie dies bei anderen Virtualisierungstechniken der Fall ist, werden speziell angepasste Gast-Betriebssysteme benötigt. VMware bietet derzeit zwei angepasste Linux Derivate an. So ist es dann möglich die Vorteile der Paravirtualisierung zu nutzen. Der Hypervisor unterstützt weiterhin auch die bisherige Native Virtualisierung, so dass ebenfalls alle bisherigen Virtuellen Maschinen auf dem Hypervisor lauffähig sind.
Abb.3 Architektur mit Hypervisor
Neben dem Hypervisor sind noch andere Komponenten dem Wirtssystem über das Softwarepaket hinzugefügt worden. Zum Einen die Virtual Services, die zum Bereitstellen von virtuellen Festplatten, Netzwerkadaptern und dem Ressourcenmanagement dienen. Zum Anderen die Managementkomponente, welche zur Überwachung und Verwaltung der Virtuellen Maschinen durch den Benutzer dient.
Bisher bietet VMware diese Architektur nur zum Testen der Technologie kostenlos in Englischer Sprache an. Allerdings soll die Paravirtualisierung demnächst in allen VMware Produkte möglich sein, um noch performantere Systeme zu ermöglichen.