Gutes Werkzeug ist der halbe Erfolg – sogar wenn es eher um das Gegenteil von etwas Handfestem geht, nämlich um virtuelle Maschinen. An solchen Virtualisierungstools mangelt es unter Linux nicht, aber lange nicht jedes taugt auch für jeden Zweck.
Der Begriff ist noch IT-Smalltalk-tauglich, auf der Hitliste aktueller Buzzwords aber schon auf die hinteren Ränge abgefallen: Virtualisierung. Nach dem Hype der letzten Jahre durchlebt die Technik eher eine Phase der Ernüchterung, die den Abstieg vom Gipfel des Überschwangs in die mühevolle Ebene der täglichen Praxis begleitet. Dort zählen andere Werte: Nicht die Funktion an sich, die man beim Proof of Concept noch bestaunte, sondern Dinge wie Performance, Stabilität, Effizienz und Administrierbarkeit.
Eine entscheidende Rolle spielen dabei die richtigen Tools. Niemand, nicht einmal ein Linux-Vorturner, möchte zu Kommandozeilen-Akrobatik gezwungen sein. Stattdessen wünscht sich der Admin Handwerkszeug, das einfach und sicher zu gebrauchen ist, für viele Arbeiten taugt, wenig Krafteinsatz erfordert und keine Nacharbeit nötig macht.
Ein Virtualisierungstool, das diese Ansprüche bedienen will, muss allerhand beherrschen:
- Das beginnt beim Provisioning und Deployment der
virtuellen Maschinen, um möglichst schnell die gewünschte
Anzahl virtueller Instanzen zu erzeugen, ohne dass händisch
viel nachzukonfigurieren wäre. Das gelingt gut mit
vorbereiteten Templates oder dem Klonen einer Masterinstallation.
Außerdem sollte das Tool neben lokalen auch
Installationsmedien im Netz unterstützen. - Damit verbunden ist die Migration physischer zu
virtuellen Maschinen und gegebenenfalls auch umgekehrt. Das Ideal
wäre hier eine Online-Konvertierung via Netzwerk, die
möglichst wenig personelle Unterstützung erfordert.
Ebenso wichtig ist die Bewegungsfreiheit virtueller Maschinen im
laufenden Betrieb. Diese Live-Migration ist beispielsweise die
Grundlage von Load-Balancing-Lösungen mit VMs, von virtuellen
Clustern oder der Möglichkeit, physische Maschinen für
geplante Wartungsarbeiten freizustellen, ohne dass dies den Betrieb
eines Gastes unterbricht. - Die Administration ist das wohl umfangreichste Gebiet,
auf dem sich der Anwender Hilfe erhofft. Das beginnt bei der
Kapazitätsplanung für die virtuellen Instanzen, reicht
über die Bereitstellung entsprechender Storage- und
Netzwerkressourcen bis zu zahlreichen Einstellungen etwa für
die Abbildung virtueller auf reale Hardware, Benutzer, Rechte und
so weiter. - Um Workload-Management muss sich das
Virtualisierungstool spätestens dann kümmern, wenn
mehrere virtuelle Maschinen oder physische Hosts im Spiel sind, die
sich eine Aufgabe teilen oder im Fehlerfall gegenseitig ersetzen
sollen. - Damit im Zusammenhang steht das Monitoring besonders des
Hosts, das der Admin von einem All-in-one-Tool ebenfalls erwarten
muss. Den Status der einzelnen VMs und die Auslastung der
wichtigsten Ressourcen sollte es mindestens anzeigen.
VMware
Dass alles prinzipiell unter einen Hut passt, beweist beispielsweise der Marktführer VMware [1]. Allerdings läuft die Steuerzentrale Virtual Center, die Gäste des ESX- und auch des GSX-Servers verwaltet, zurzeit nur unter Windows. Ein Linux-Port scheint in naher Zukunft nicht auf der Agenda zu stehen.
Für eine reine Linux-Lösung muss sich der Anwender deshalb mit dem kostenfreien VMware Server behelfen. Diese Einsteigerlösung, kürzlich erst in einer neuen Betaversion 2.9 erschienen, hat aber auch schon einiges zu bieten. Die größte optische Umstellung im Vergleich mit den alten 1.x-Versionen bringt dabei das neue Webinterface Virtual Infrastructure Web Access – die alte Standalone-Serverkonsole ist nicht mehr verwendbar. Es benötigt ein eigenes Browser-Plugin und kann dann alle Aufgaben von überall her im Browser erledigen (siehe Abbildung 1).
Provisioning und Deployment der VMs unterstützt eine Vielzahl von Templates für 17 Windows-Versionen, 17 Linux-Distributionen (auch 64-Bit-Varianten), hauptsächlich von Suse und Red Hat, aber auch Ubuntu, Netware und Solaris 10. Zwar lassen sich beim VMware Server VMs nicht wie beim großen Bruder ESX-Server zwischen physischen Hosts migrieren, schon gar nicht zur Laufzeit, aber zumindest können sie in einem via NFS gesharten Speicherbereich (Datastore) liegen und so verschiedenen Servern zur Verfügung stehen.
Auch das Load Balancing bleibt den kommerziellen Versionen vorbehalten, dafür unterstützt aber auch der kostenlose Server Administration und Monitoring sehr gut und von zentraler Stelle.
Virtual Iron
Einen Weg dicht auf den Fersen von VMware hat die Firma Virtual Iron eingeschlagen [2]. Ihr Produkt Virtual Iron 4 erlaubt zumindest in der teuersten Extended Enterprise Edition nicht nur das Klonen virtueller Instanzen oder die Live-Migration, sondern auch die dynamische Kapazitätsanpassung der virtuellen Maschinen im laufenden Betrieb. Außerdem enthält es HA-Features wie beispielsweise ein Failover virtueller Rechner auf einen Reserve-Host (N+1-Cluster).
Wie bei VMware ist es auch möglich, für anstehende Wartungsarbeiten physische Hosts ohne Unterbrechung ihrer Gäste freizuräumen. Mit an Bord sind zudem ein ausgefeiltes Monitoring und Logging der virtuellen Instanzen und ein Policy-gesteuertes Kapazitätsmanagement. Letzteres ermöglicht es, virtuelle Maschinen automatisch zu verlagern, wenn der Host bestimmte Grenzwerte für seine Auslastung über eine vom Anwender festgelegte Zeitspanne hinweg überschreitet.
Auf der Storage-Seite unterstützt Virtual Iron ISCSI, SAN (Fibre Channel) und NAS. Für das schnelle Provisioning und die Analyse der benötigten Kapazitäten kooperiert der Hersteller mit dem Marktführer für diese Technologien, Platespin, der auch VMware zuarbeitet. Der Abstand zu VMware ist hier nicht mehr groß, beim Preis aber deutlich: Virtual Iron gibt es ab 500 Dollar pro Socket, die Preise für VMwares ESX-Server beginnen ungefähr beim Dreifachen.
Xen Source
Früher kam auch der Xen Source Server als Linux-Lösung dem VMware-Konzept recht nahe. Nach der Übernahme von Xen Source durch Citrix heißt das Produkt nun Citrix Xen Server, besteht im Kern aber nach wie vor aus einem Linux-System – aber die Kommandobrücke, Xen Center genannt, ist zu einer reinen Windows-Applikation mutiert (Abbildung 2) und daher für diesen Vergleich nicht mehr interessant. Bemerkenswert ist immerhin, dass mit Xenmotion jetzt ein Feature für die Live-Migration verfügbar ist, das VMwares VMotion nicht nur im Namen ähnelt.

Abbildung 2: Das Xen Center, die Steuerzentrale von Citrix Xen Server, läuft nur noch unter Windows.
Suse Enterprise Server
Auch die Distributoren bemühen sich nach Kräften, ihren Kunden die Virtualisierung zu erleichtern. Sowohl Novells [3] als auch Red Hats [4] Enterprise-Distributionen integrieren ein entsprechendes Tool. Bei Suse ist es in Yast eingebaut, nennt sich Virtual Machine Manager (Virt-Manager) und hilft dabei, eine Xen-Instanz in wenigen einfachen Schritten aufzusetzen. Neben Linux (Novell, Red Hat), Solaris 8 bis 10 und Netware 6 funktioniert das auch mit diversen Windows-Versionen – vorausgesetzt die CPU bringt die nötige Virtualisierungsunterstützung mit.
Dann braucht der Assistent nur noch wenige Angaben zu virtueller Hardware und Installationsquelle, bevor er den Job im Alleingang erledigt (Abbildung 3). Der erwähnte Manager übernimmt danach die Verwaltung der virtuellen Instanzen (Abbildung 4). Sie lassen sich von hier aus anhalten und starten, in eine Pause schicken oder entfernen. Daneben gibt es Graphen für CPU- sowie Speicherbedarf.
Aber selbst einfache Konfigurationsarbeiten sind nur sehr bedingt möglich. So erlaubt der Virt-Manager bei Novell zwar scheinbar das Hinzufügen einer weiteren virtuellen Festplatte, die Disk erweist sich allerdings als virtueller als dem Admin lieb sein kann: Xen übernimmt die Konfigurationsänderung nicht und nach dem nächsten Start des Managers ist sie wieder spurlos verschwunden. Ein Bug, den sich keine Distribution leisten sollte, die sich mit dem Etikett “Enterprise” schmückt.
Die Grenzen sind also schnell erreicht: Eine Snapshot-Funktion wäre nett, vielleicht auch das Klonen einer Maschine, der Anwender könnte sich eine grafische Editierhilfe für die Netzwerkkonfiguration wünschen und so weiter – das alles gibt es noch nicht. Insgesamt kann sich das Funktionsangebot mit dem Virtual-Infrastructure-Client von VMware oder Virtual Iron in keiner Weise vergleichen.

Abbildung 3: Nachdem die virtuelle Hardware konfiguriert wurde, läuft hier die Installation einer neuen Maschine einfach von CD.

Abbildung 4: Der Virt-Manager bringt ein schlichtes Monitoring für die Inanspruchnahme von CPU- und Memory-Ressourcen durch die Gäste mit.
Red Hat
Auch Red Hat schreibt Virtualisierung groß. Die aktuelle Enterprise-Distribution RHEL 5.1 verwendet allerdings das gleiche Werkzeug, den Virt-Manager, für die Konfiguration wie Suse, sodass dessen Beschränkungen im Wesentlichen auch hier gelten. Unterschiede finden sich nur in wenigen Details, beispielsweise leistet sich die Red-Hat-Version den Platten-Bug nicht.
Allerdings bietet Red Hat mit der Steigerung des Enterprise-Servers, genannt Advanced Platform, für rund 1500 Dollar eine Software, mit der sich unter anderem virtuelle Maschinen zu Clustern verbinden und über die Grenzen eines physischen Host hinaus migrieren lassen. Die Konfigurationswerkzeuge für diesen extra kostenpflichtigen Teil sind mit dem Clusterverwaltungstool Conga derzeit denen von Novell überlegen.
Wohin die Reise in nächster Zukunft gehen soll, das lässt ein Blick auf Fedora 8 ahnen. Dort ist bereits das neue Xen 3.1 integriert und der Virt-Manager unterstützt dort neben Xen auch Qemu. Außerdem will Red Hat sich verstärkt um die Sicherheit der Administrationstools bemühen, ein wichtiger Aspekt, der jedoch bislang nicht im Fokus der Bemühungen stand.
Ganeti
Ein weiteres Werkzeug für das Management virtueller Xen-Cluster stammt aus dem Hause Google und ist unter der GPL verfügbar: Ganeti [5]. Die Installation gestaltet sich etwas aufwändiger, weil das Tool ein halbes Dutzend Python-Module voraussetzt, die beispielsweise Novell-Linux nicht paketiert mitliefert, sodass sie und ihre Abhängigkeiten von Hand aufzuspielen sind. Danach lassen sich nicht nur virtuelle Instanzen einrichten, konfigurieren, starten und stoppen, der Admin kann sie auch mit einem Failover-Kommando auf andere physische Nodes verlagern.
Das alles passiert auf der Kommandozeile, ohne den Komfort eines GUI. Dafür lassen sich die Ganeti-Kommandos einfach in Skripte einbauen, was den Weg zur Integration in andere Open-Source-Tools öffnet. Gut vorstellbar wäre etwa ein Nagios-Plugin, das via Ganeti virtuelle Maschinen zwischen Hosts verschiebt, sobald das Monitoring eine bestimmte Ressourcenauslastung misst – die Light-Version eines Policy-gesteuerten Kapazitätsmanagements im Eigenbau.
Andere Anbieter
Natürlich ist diese Übersicht nicht vollständig. Von den großen Anbietern wäre beispielsweise mindestens noch SWsoft zu nennen, das sich Anfang 2008 in Parallels umbenennen will und wie VMware gleich mit einer ganzen Produktpalette unter dem Dach einer ausgewachsenen Vision antritt: Das Unternehmen zielt auf eine virtuelle Infrastruktur, die Desktop und Server einschließt. Demnächst sind Virtuozzo 4 und ergänzend zu dieser Container-Lösung ein neues Produkt für die Servervirtualisierung auf Basis eines Hypervisors zu erwarten.
Abseits der auf Virtualisierung spezialisierten Anbieter gibt es universelle Systemmanagement-Werkzeuge, die auch virtuelle Maschinen betreuen können. OpenQRM [7] etwa ist ein mächtiger Vertreter dieser Spezies, der Images für virtuelle wie physische Maschinen unter einer Oberfläche verwaltet (Abbildung 5). Dem steht stark spezialisierte Software gegenüber, etwa Solid Ice von Qumranet [8], das sich ganz der Desktop-Virtualisierung mit Hilfe des Kernel-Hypervisors KVM widmet.
Am anderen Ende der Skala gibt es mehrere kleine Kommandozeilen-Werkzeuge wie etwa die Xen-Tools [9], eine Skriptsammlung, die primär unter Debian nützlich ist und dort virtuelle Instanzen erzeugt. Inzwischen gibt es auch Erweiterungen wie Rinse [10] für Distributionen, die auf RPM setzen.

Abbildung 5: OpenQRM – im Beispiel verwaltet es eine Xen-Instanz – kann reale und virtuelle Rechner unterschiedslos mit einem Werkzeug managen.
Fazit
Virtualisierung im Linux-Umfeld kämpft mit den Mühen der Ebene. Es mangelt nicht an Tools, doch die großen, gut integrierten und grafisch bedienbaren Werkzeuge stellen im Moment die kommerziellen Anbieter. Sie fokussieren auf eine komplett virtuelle Infrastruktur, die zudem weitgehend automatisiert ist. Ihnen begegnet der Admin vor allem in komplexen Umgebungen, mit mehreren physischen Hosts und vielen virtuellen Instanzen. Ein einzelner Host ist zur Not auch nur mit der Kommandozeile beherrschbar.
Überraschend wenig überzeugen kann das derzeitige Angebot der beiden großen Distributoren Novell und Red Hat, deren Werkzeuge der Konkurrenz nicht standhalten. Zahlreiche kleinere Hilfen für den Terminaleinsatz wird vor allem begrüßen, wer sich seine eigene Lösung stricken möchte.
|
Infos |
|---|
|
[1] VMware: [http://www.VMware.com/de/] [2] Virtual Iron: [http://www.virtualiron.com] [3] Novell: [http://www.novell.com] [4] Red Hat: [http://www.redhat.com] [5] Ganeti: [http://code.google.com/p/ganeti/] [6] SWsoft: [http://www.swsoft.com] [7] OpenQRM: [http://www.openqrm.com] [8] Solid Ice; [http://web1.qumranet.com] [9] Xen-Tools: [http://xen-tools.org] [10] Rinse: [http://www.xen-tools.org/software/rinse] |







