welche Player im Virtuali- sierungsmarkt aktiv sind;
was die grundlegenden technischen Merkmale ihrer Lösungen sind;
wie Virtualisierungstechnik in Betriebssystemen Einzug hält;
warum zunehmend Administrations-Tools für virtuelle Umgebungen wichtig werden.
Bis vor kurzem ging es bei der Virtualisierung von x86-Betriebssystemen fast ausschließlich um VMware. Die Vormachtstellung der von EMC im Jahr 2004 übernommenen Softwareschmiede gerät aber mittlerweile gleich von mehreren Seiten unter Druck. So entwickelt die Linux-Gemeinde mit Xen eine Open-Source-Virtualisierungslösung, die in direkte Konkurrenz zu VMware tritt. Novell hat Xen bereits in die aktuelle Distribution Suse Linux Enterprise Server 10 (SLES) aufgenommen, Red Hat wird Gleiches in Kürze beim Red Hat Enterprise Linux 5 (RHEL) tun. Das von Xen-Entwicklern der ersten Stunde gegründete Startup-Unternehmen Xensource hat die kommerzielle Vermarktung von Xen begonnen.
Eine weitere bereits verfügbare Open-Source-Lösung für die Betriebssystem-Virtualisierung unter Linux ist "OpenVZ". Diese Software ermöglicht es, auf einem Host-System mehrere Betriebssystem-Instanzen gleichzeitig zu starten, die alle den Kernel des Host-Servers nutzen. SWsoft vermarktet diese Lösung kommerziell unter dem Namen "Virtuozzo". Das Produkt ist auch für Windows erhältlich.
Der grundlegende Unterschied in den drei technischen Grundkonzepten der Virtualisierung besteht darin, auf welchem Wege die virtuellen Maschinen mit ihren Gast-Betriebssystemen auf der Hardware aufsetzen.Microsoft arbeitet ebenfalls mit Hochdruck gleich an mehreren Virtualisierungslösungen. Zum einen soll der Virtual Server 2005 den Rückstand gegenüber VMware möglichst schnell aufholen. Zum anderen wird Longhorn, der Nachfolger von Windows Server 2003, einen Hypervisor für die Virtualisierung von Betriebssystemen enthalten.
Momentan muss sich VMware um seine Vormachtstellung noch keine allzu großen Sorgen machen, insbesondere wenn es um die Server-Virtualisierung in produktiven Umgebungen geht. Der Branchenprimus bietet bislang die breiteste Unterstützung an Wirts- und Gast-Betriebssystemen und hat mit VMware Infrastructure 3 eine umfassende Management-Lösung für virtualisierte Umgebungen entwickelt. Diese deckt auch Bereiche wie automatisches Workload-Ma- nagement, Hochverfügbarkeit und Backup von virtuellen Maschinen ab.
Mittelfristig ist aber zu erwarten, dass sich insbesondere Xen zu einer ernsthaften Konkurrenz für VMware entwickeln wird. Bei der von Xen genutzten Technik handelt es sich um so genannte Para-Virtualisierung. Dabei wird ein zusätzliches Betriebssystem virtuell neu gestartet. Hierfür wird jedoch keine Hardware emuliert, sondern die virtuelle Maschine greift über eine Softwareschnittstelle, den Hypervisor oder Virtual Machine Monitor (VMM), auf die gemeinsam genutzten Ressourcen des Host-Systems wie CPU, Arbeitsspeicher, Festplatten oder Netzwerkkarten zu. Der Hypervisor sorgt gleichzeitig dafür, dass die verschiedenen Betriebssysteme vollständig voneinander isoliert bleiben. Die Softwareschnittstelle ähnelt der darunter liegenden physischen Hardware, ist aber nicht mit ihr identisch.
Dieser Ansatz wird als Para- Virtualisierung bezeichnet, weil das Gast-Betriebssystem spe- ziell angepasst werden muss, um auf dem Wirtssystem als virtuelles OS laufen zu können. Der Lohn für diese Mühe ist eine deutlich bessere Performance als bei Virtualisierungslösungen, die einen Teil der oder sogar die gesamte Server-Hardware emulieren. Xen verfügt über einen sehr schlank gehaltenen Hypervisor, der die Zugriffe der virtuellen Maschinen auf die Hardware des Host-Systems steuert und eine sehr gute Performance bietet.
VMware verwendet für das Flaggschiff-Produkt "ESX Server" einen etwas anderen Ansatz. Der ESX-Server basiert auf einem speziellen Microkernel, der im Zusammenspiel mit einem integrierten Hypervisor und einem privilegierten Linux-System die Virtualisierungsfunktionen für die virtuellen Maschinen ausführt. Dadurch bietet der ESX-Server eine deutlich bessere Performance als "VMware Server" (vormals GSX) oder Microsofts "Virtual Server", bei denen das Virtualisierungs-Wirtssystem auf einem Standard-Server zum Beispiel unter Windows oder Linux installiert wird. Diese Lösungen verwenden eine Softwareemulation, die dem Betriebssystem die Hardware eines Servers vorgaukelt, was einiges an Rechenaufwand mit sich bringt und entsprechend Performance kostet.
Dieses Virtualisierungskonzept wird unter anderem von SWsoft in dem kommerziellen Produkt "Virtuozzo" eingesetzt. SWsoft hat das Open-Source-Projekt "OpenVZ" ins Leben gerufen und die Basistechnik von Virtuozzo darin einfließen lassen. Sie virtualisiert Server, indem auf demselben OS-Kernel mehrere Instanzen gebildet werden, ohne dass hierfür ein neues Betriebssystem gestartet wird. Dabei verhält sich jede Instanz wie ein eigenständiger Server mit eigenem Namen, eigener IP-Adresse und eigenen Diensten. Es ähnelt den Solaris-Containern oder den Jails von FreeBSD.
Generell bietet die Virtualisierung auf OS-Ebene den Vorteil, dass unabhängig von der Anzahl der virtuellen Server nur eine Betriebssystem-Lizenz für den Host-Server erforderlich ist. Allerdings lassen sich die Betriebssysteme nicht so strikt voneinander isolieren wie bei vollständig virtualisierten Servern. Und die Instanzen müssen zwangsläufig dasselbe OS verwenden wie der Host. Immerhin ist es möglich, unterschiedliche Linux-Distributionen als Instanzen auf demselben Wirtssystem zu betreiben.
Sowohl Intel als auch AMD haben in die neueste Prozessorgeneration Virtualisierungsfunktionen integriert. Die unter dem Code- namen "Vanderpool" entwickelten Intel-CPUs tragen das Kürzel VT. Das als "Pacifica" bekannte Pendant von AMD ist an einem angehängten V zu erkennen.
Die neuen CPUs bieten den großen Vorteil, dass sich Gast- Betriebssysteme ohne spezielle Anpassungen virtualisieren lassen. Allerdings ist die Performance etwas niedriger als mit Betriebssystemen, die für die Para-Virtualisierung modifiziert wurden. Insbesondere Xen, das bisher eine Anpassung des Gast-OS zwingend voraussetzte, dürfte von der neuen Prozessorgeneration profitieren. Denn damit lassen sich nun auf einem Xen-Host die Gast-Betriebssysteme ohne vorherige Modifikation virtualisieren. Ein wichtiger Punkt ist für viele Unternehmen zudem, dass sie jetzt auch ältere OS-Versionen, für die es gar keine aktuellen Treiber mehr gibt, als virtuelle Maschinen auf neue, leistungsfähigere Hardware migrieren können.
Bei den derzeit von AMD und Intel erhältlichen Prozessoren handelt es sich um die erste Generation, die vor allem CPU-Virtualisierungsfunktionen unterstützt. Dabei führt die CPU verschiedene Instruktionen der Gastsysteme direkt in Hardware aus, ohne dass hierfür der Hypervisor in Aktion treten muss. Für 2007 haben beide Hersteller die zweite Generation angekündigt, die zusätzliche Funktionen insbesondere für die Virtualisierung von I/O-Operationen bieten wird. Dies dürfte zu einer deutlich höheren Performance der virtuellen Maschinen führen.
Die Frage, welche Virtualisierungstechnik Eingang in den Linux-Kernel findet und auf welche Weise die Integration technisch realisiert werden soll, war in den vergangenen Monaten heftig umstritten. Bereits vor über einem Jahr galt als so gut wie ausgemacht, dass Xen in den Linux-Kernel integriert wird. Dies ist jedoch bis heute nicht geschehen, weil unterschiedliche Interessen darum ringen, auf welche Art und Weise OS-Virtualisierungsfunktionen mit Linux verheiratet werden sollen.
"Xen wird auf eine flexible Weise in Linux integriert, die es auch anderen Hypervisoren ermöglicht, diese Schnittstelle zu nutzen." Daniel Riek, Red HatEine ganze Reihe von Kernel-Entwicklern würde statt einer Integration des Xen-Hypervisors in den Linux-Kernel lieber eine offene API bereitstellen, über die Virtualisierungslösungen unterschiedlicher Anbieter gleichberechtigt unter Linux laufen können. Zu den Befürwortern dieser Herangehensweise zählt auch Kernel-Chefentwickler Andrew Morton, der im Frühjahr erklärt hatte, dass er den Vorschlag von VMware durchaus für sinnvoll halte, ein Virtual Machine Interface (VMI) als standardisierte Schnittstelle in den Linux-Kernel zu integrieren.
Die von VMware entwickelte VMI-Lösung konnte sich jedoch bislang nicht durchsetzen. Einige Linux-Entwickler plädieren nach wie vor für eine direkte Integration des Xen-Hypervisors in den Linux-Kernel. In dieser Gruppe finden sich auch Entwickler von Red Hat und Novell-Suse. Beide Linux-Schwergewichte haben sich klar für Xen ausgesprochen und bauen die Hypervisor-Lösung in ihre Distribution ein.
Daniel Riek, Product Manager Enterprise Linux bei Red Hat, geht davon aus, dass die Linux-Gemeinde eine Standard-Hypervisor-Schnittstelle entwickeln wird. "Wahrscheinlich wird Xen als die derzeit führende Hypervisor-Lösung als erste Eingang in den Kernel finden. Xen wird aber auf eine flexible Weise implementiert werden, die es auch anderen Hypervisoren zum Beispiel von VMware oder Microsoft ermöglicht, diese Schnittstelle zu nutzen."
Auf Anfrage der computerwoche merkte "KY" Srinivasan, Distinguished Engineer Novell, zu den Kernel-Auseinandersetzungen um Xen und VMware an: "Beide Technologien wollen dasselbe Problem lösen. Die Philosophie von VMware ist jedoch eine völlig andere als die von Xen: VMware versucht, eine möglichst hohe Abstraktionsebene aufrechtzuerhalten, während der Xen-Hypervisor direkt auf der Ebene oberhalb der Hardware operiert. Letzteres hat den Vorteil, dass wegen der sehr hardwarenahen Abstraktionsebene nur minimale Anpassungen an den Kernel erforderlich sind."
Trotz der unterschiedlichen Positionen ist es doch noch gelungen, einen Kompromiss zu erzielen und gemeinsam eine offene Hypervisor-Schnittstelle zu entwickeln. Im vergangenen Sommer haben sich die Entwickler von Xen und VMware unter Mithilfe von Rusty Russell von IBM darauf verständigt, eine Standardschnittstelle zu entwickeln und in den Linux-Kernel zu integrieren, die auf den Namen "Paravirt_Ops" hört. Dieses API soll es unterschiedlichen Hypervisor-Technologien ermöglichen, mit dem Linux-Kernel zusammenzuarbeiten.
"Microsoft nimmt im Wettlauf um den Virtualisierungsmarkt gerade die Startposition ein, während das Rennen schon eine ganze Weile läuft." Kurt Daniel, SWsoftVMware bleibt so mit seinen Virtualisierungslösungen auf Linux-Wirtssystemen im Geschäft. Wolfram Weber, Manager Field System Engineers bei VMware, erklärt: "Der neue Hypervisor von VMware wird mit der Linux-Schnittstelle für die Para-Virtualisierung kompatibel sein. Wir haben bereits einen Prototypen fertig gestellt, der als Download frei verfügbar ist."
Die im Zusammenhang mit SWsoft und OpenVZ bereits angesprochene Container-Technik ist ebenfalls auf dem Weg, in Linux integriert zu werden. So enthält die Kernel-Version 2.6.19-rc1 die IPC-Virtualisierung von OpenVZ, die Utsname-Virtualisierung von Serge Hallyn (IBM) sowie einige PID-Namespace-Elemente von Eric Biederman. Laut Kir Kolyshkin, Leiter des OpenVZ-Projekts, arbeiten die Mitglieder des Entwicklungsteams mit Hochdruck daran, diese Technik in den Kernel zu integrieren.