Servervirtualisierung leicht gemacht mit eisXen: Von Null auf Xen in 10 Minuten
In aller Regel geht der Arbeit mit Xen ein relativ schwieriger Lernprozess voraus. Zum einen ist Xen selbst ein sehr stark auf den Hypervisor-Kern reduziertes System, bei dem komfortable, intuitiv benutzbare Tools weitgehend fehlen. Zum anderen verfügen noch nicht alle Betriebssysteme (Linux, *BSD, Solaris) über eine durchgängige Unterstützung für Installation und Konfiguration, von Einheitlichkeit ganz zu schweigen. Der Umstand, dass der Aufbau und Betrieb von Virtualisierungslösungen obendrein sehr umfassende Kenntnisse nicht nur in Betriebssystemen, sondern auch von Netzwerken, Speichertechnologien und Sicherheitslösungen verlangt, erleichtert den Umgang damit nicht.
Leichte Installation
Bei eisXen [1] handelt es sich um eine schlanke Linux-Distribution, welche das Aufsetzen eines Xen-Servers sowie das Installieren und Betreiben virtueller Maschinen einfach und schnell gestaltet. Im Gegensatz zu den „großen“ Linux-Distributionen kann der ambitionierte Administrator damit innerhalb von 10 Minuten zu einem kompletten Xen-Server mit zum Beispiel zwei laufenden virtuellen Maschinen (in der Xen-Terminologie „unprivilegierte Domains“, kurz „domU“) gelangen.
Management virtueller Maschinen
eisXen ist von der bekannten eisfair-Distribution [2] abgeleitet und hat deren wichtigste Eigenschaft geerbt. Sie ermöglicht, leistungsfähige Linux-Server aufzusetzen und zu betreiben, ohne Linux-Kenntnisse zu besitzen. Wie eisfair verfügt auch eisXen über eine äußerst simple Installationsroutine sowie über einen integrierten Paketmanager, über den man auf Tastendruck alle gewünschten Softwarepakete installiert (mit automatischem Download aus dem Internet). Besonders wichtig dabei ist, dass die Konfiguration aller Dienste – sei es E-Mail, Webserver oder eine Datenbank – über völlig einheitliche Mechanismen erfolgt.
eisXen Facts |
Hardwareanforderungen: Pentium-Rechner (ab Pentium II oder ab AMD Athlon/Duron), ab 256 MB RAM, ab 10 GB Festplatte (IDE, SCSI, S-ATA). |
Xen-Features: Automatische Installation der Domain 0, Template-basierte Einrichtung von Gastsystemen (domU), Unterstützung aller Linux-Derivate als Gast, Multiprozessor-Unterstützung, Support für Intel-VT- und AMD-V-Prozessoren für den Betrieb zum Beispiel von Microsoft Windows als virtuelle Maschine. eisfair-Paketmanager für einheitliche Installation und Konfiguration aller Softwarepakete und Dienste. |
Einfachheit ist nur die eine Seite. Für Server-Virtualisierung ganz entscheidend sind außerdem Sicherheit und Stabilität des Gesamtsystems. Im Gegensatz zu vielen „großen“ Linux-Distributionen installiert eisXen/eisfair immer nur unbedingt benötigte beziehungsweise nur angeforderte Dienste. So ist im Wirtsystem („Domain 0“) außer dem Xen-Daemon sowie dem SSH-Dienst nur ein rudimentäres Linux vorzufinden. Das erhöht die Sicherheit und erleichtert zudem die Pflege und Wartung des Systems.
Xen-Test mit eisXen
Für einen ersten Xen-Test mit eisXen benötigen Sie einen einfachen Rechner oder alternativ eine VMware-Maschine.
Die Heft-CD dieser T3N Ausgabe ist bereits eine eisXen-Installations-CD. Sie können diese direkt zum Aufsetzen eines XEN-Servers benutzen. Legen Sie dazu unmittelbar nach dem Einschalten die CD in das CD/DVD-Laufwerk des Zielrechners (Achtung: eisXen nimmt stets die gesamte Festplatte in Beschlag und entfernt eventuell vorhandene Daten!). Die Anweisungen des textbasierten Installationsassistenten sollten beachtet werden. Für die Installation der Domain 0 sind dabei einige Schritte zu erledigen: optional einen SCSI- oder S-ATA-Treiber für die Festplatte laden, eine Festplatte auswählen, die Partitionierung übernehmen oder neu erstellen. Nach der automatisch durchlaufenden Installation sind noch die wichtigsten Systempasswörter zu vergeben und ein Neustart durchzuführen.
Es empfiehlt sich, nach der Installation die Netzwerkkonfiguration vorzunehmen. Wie die gesamte Konfiguration erfolgt auch die Einrichtung der Netzwerkkarte über ein einfach zu bedienendes ASCII-Menüsystem. Die Anmeldung erfolgt mit dem Namen „eis“ und im automatisch startenden Menü wird „1 System administration > Base configuration > Edit base configuration“ gewählt. Je nach Netzwerkanforderungen müssen hier die entsprechenden Werte eingetragen werden. Wichtig ist insbesondere die korrekte Angabe des Netzwerkkartentreibers im Parameter ETH_DRV_1. Falls eisXen in einer VMware-Umgebung installiert wird, wird als Treiber „pcnet32“ gewählt. Das folgende Listing zeigt in Auszügen eine Beispielkonfiguration:
HOSTNAME='xen' ETH_DRV_N='1' ETH_DRV_1='3c59x' IP_ETH_N='1' IP_ETH_1_IPADDR='192.168.10.3' IP_ETH_1_NETWORK='192.168.10.0' IP_ETH_1_NETMASK='255.255.255.0' IP_DEFAULT_GATEWAY='192.168.10.10' DOMAIN_NAME='eisxen.org' DNS_SERVER='192.168.10.20'
Listing 1
Mit der Taste F10 wird die Konfiguration abgespeichert und der Xen-Server ist startklar. Über den automatisch installierten SSH-Dienst ist er auch aus der Ferne erreich- und steuerbar.
Virtuelle Maschinen aus Vorlagen installieren
Nun geht es an das eigentlich Spannende: Das Einrichten von virtuellen Maschinen, den Xen-Gast-Domains. eisXen macht es dem Administrator einfach, denn es bringt ein vorkonfiguriertes eisfair-System als Muster („Template“) mit. Über den Menüpunkt „Service administration > Xen daemon > Create new XEN domain image from template“ kann der Vorgang gestartet werden. Es steht ein einziges Template zur Verfügung, das ausgewählt wird. Nun werden ein eindeutiger Name für den neuen Gast eingegeben und der Einfachheit halber die vorgeschlagenen Werte für Festplattengröße (512 MB) und Arbeitsspeicher (32 MB) bestätigt. Das Gleiche geschieht mit der Einstellung für den automatischen Start der Gast-Domain beim Booten des Rechners. Anschließend wird das Gast-System inklusive des eigenen Swap-Bereichs generiert. Am Ende sind nur noch die Passwörter für die verschiedenen Systembenutzer (root, eis, halt, reboot) zu vergeben.
Menüsteuerung für Xen-Gäste
Nun kann das erstellte System als virtuelle Maschine über den Menüpunkt „Start XEN domain“ gestartet werden. Dabei wird der Benutzer direkt mit der Konsole der domU verbunden. Um zur Konsole des Servers zurückzukehren, wird die Tastenkombination STRG+ALT+9 gedrückt (in einer VMware-Session STRG+ALTGR+9). Die weiteren Funktionen zur Steuerung der Gäste (Auflisten laufender Systeme, Starten, Stoppen usw.) sind im selben Hauptmenü untergebracht. Die Kommandos erfordern jeweils die Eingabe der ID des betreffenden Gastes.
Der neu erstellte Gast enthält noch keine Anwendungssoftware. Über das integrierte eisfair-Installationssystem können nun Pakete online geladen und eingerichtet werden, wie zum Beispiel ein Apache-Webserver oder eine MySQL-Datenbank. Hierzu muss der Gast zunächst eine Netzwerkanbindung erhalten. Das funktioniert mit folgenden Schritten:
- Am Gastsystem als Benutzer eis anmelden.
- Im Menüpunkt „System administration > Base configuration > Edit base configuration“ aufrufen.
- Die IP-Konfiguration eintragen. Eine Netzwerkkarte muss diesmal nicht definiert werden, da bereits die Domain 0 Zugriff auf die Netzwerkkarte hat und der Gast über eine automatisch erstellte Xen-interne Bridge am virtuellen Netzwerk angeschlossen wird.
- Mit F10 speichern, eisXen verlassen und Domain-Reboot durchführen.
Installationsassistent für Anwendungen
Der Gast ist nun bereit für die Installation von Anwendungssoftware über den Menüpunkt „Package administration > Install new package“. Dabei wird vom Server download.eisfair.org ein Menü der verfügbaren Pakete geladen und angezeigt. Für die Installation etwa des Apache-Webservers gibt man „2“ ein und bestätigt die Rückfrage. eisfair lädt die Software, löst dabei etwaige Abhängigkeiten auf und installiert das Paket automatisch. In dieser Weise werden alle benötigten Programme installiert und über das einheitliche Konfigurationssystem an die eigenen Bedürfnisse angepasst.
Da man unter Xen mehrere Gast-Systeme parallel laufen lassen kann, empfiehlt es sich gegebenenfalls, größere Applikationen auf einzelne Gäste aufzuteilen, zum Beispiel für einen Intranet-Server: domU-1 wird Apache-Webserver, mit PHP und MySQL-Datenbank, domU-2 wird SAMBA-Server und domU-3 ist als sichere Internet-Gateway für Router und Firewall zuständig. In Domain 0 ist aus gutem Grunde keine Installation von Paketen zugelassen – das System muss im Sinne der Modularität, Sicherheit und Wartbarkeit frei bleiben von Anwendungssoftware. Die gehört in den domUs untergebracht.
Multiplattform-System
Unter eisXen können auch andere Linux-Systeme als domU eingerichtet werden. Der einfachste Weg geht über eine Physical-to-Virtual-Konvertierung (P2V-Konvertierung) eines vorhandenen Systems, zum Beispiel SUSE oder Debian, in ein eisXen-Template. Das Vorgehen ist auf der eisXen-Website sowie im „Xen 3“-Buch [3] beschrieben. Auf der Internetseite sind auch fertig vorkonfigurierte Gast-Images zum Download vorhanden, die in der Domain 0 abgelegt werden können und für die dann lediglich noch eine Konfigurationsdatei unter „/etc/xen/xm<GASTNAME>“ zu erstellen ist.