Eigentlich ist es die Domäne der Mainframe-Computer, Prozessoren, Speicher und Peripherie dynamisch auf mehrere Prozesse oder Systeme zu verteilen. Aber auch die ungleich preisgünstigeren IBM-Server der Open-Power-Reihe virtualisieren die Ressourcen des Servers – sogar unter Linux, wie dieser Test zeigt.
Das gezielte Verteilen virtueller Maschinen auf wenige Prozessoren oder Teile des Hauptspeichers für bestimmte Dienste ist eigentlich ein Feature von Mainframes. IBM spendiert nun auch der Open-Power-Serie der E-Server diverse Virtualisierungsfunktionen, die sich nicht nur mit proprietärer Software, sondern mit ganz normalen Linux-Systemen nutzen lassen. Das Testsystem bestand aus drei Komponenten: dem E-Server Open Power 720, einem Desktop-PC und einem Modem. Letzteres dient im Service-Fall als Dial-in-Zugang für IBM-Techniker. Für den Aufbau des Open-Power-Servers sind zwei Personen nötig, denn er wiegt stattliche 60 Kilo.
Mangelware Handbuch
Das vermeintliche Handbuch für die erste Inbetriebnahme entpuppte sich als ein mehrsprachiger Garantie- und Lizenzvertrag mit über hundert Seiten Umfang – wie man den Server aufbaut, steht allerdings nirgends. Ein unscheinbarer Zettel verweist auf die IBM-Homepage [1], dort könne man sich das Handbuch herunterladen. Für die Linux-Installation hat IBM zwar ein separates Handbuch unter [2] verfasst, das es aber wieder nur online gibt. Wenigstens eine Kurzanleitung hätte der Tester bei einem Kaufpreis von 15000 Euro schon in gedruckter Form erwartet.
Der Desktop-PC dient ausschließlich als Hardware Management Console (HMC), erst darüber lassen sich die Virtualisierungsfunktionen wie die Zuteilung der physischen und virtuellen Ressourcen konfigurieren. Jeder HMC verwaltet bis zu 32 Open-Power- oder Power-5-Server, sodass der Desktop-Rechner nur beim ersten Open-Power-Server angeschafft werden muss. Die Kommunikation des HMC mit dem Server läuft über einen dedizierten Ethernet-Anschluss, der ohne Handbuch nur anhand der Beschriftung von den neun übrigen RJ45-Buchsen auf der Rückseite des Open-Power-Servers zu unterscheiden ist.
Aus einem mach viele
Auf der Hardware Management Console läuft ein abgeschottetes Linux-System. Es gibt nur ein XDM-Login, nach erfolgreicher Anmeldung startet unmittelbar die Java-basierte HMC-Applikation. Sind der HMC-Rechner und der Open-Power-Server korrekt miteinander verkabelt, zeigt die Java-Software die aktuelle Konfiguration des Rechners an.
Die Regel, dass ein Linux-System tatsächlich einem physikalischen Rechner entspricht, gilt für den Open-Power-Server nicht. Die Hardware lässt sich wie von Großrechnern bekannt in mehrere virtuelle Systeme aufteilen.
Unter der Haube des IBM E-Servers Open Power 720 (Abbildung 1) arbeitet ein CPU-Modul, das mit einem Power-5-Dual-Core-Prozessor (64 Bit, 1,65 GHz) bestückt ist. Zudem stecken 4 GByte RAM sowie L1-, L2- und L3-Cache mit auf der CPU-Platine (Abbildung 3). Der Open Power 720 kann mit maximal zwei CPU-Modulen bestückt werden.
Die Dual-Core-CPU präsentiert sich dem System als zwei getrennte Prozessoren in einem SMP-Verbund. Beide CPU-Cores beherrschen ihrerseits Symmetric Multi Threading (SMT), das ähnlich wie Hyper-Threading von Intel arbeitet und den CPU-Core gegenüber dem System als zwei logische Prozessoren ausweist. So kommt der Open Power 720 auf insgesamt vier logische Prozessoren, die die Hardware Management Console verwaltet. Ähnlich funktioniert die Zuteilung des Serverspeichers.
Innerhalb des HMC lassen sich die vier logischen CPUs in Zehntelschritten verteilen, die maximale Anzahl gleichzeitig aktiver logischer Partitionen (Logical Partition, LPAR) ist damit auf 40 beschränkt. Jede logische Partition kann entweder ein eigenes Linux-System enthalten oder mit anderen LPARs zu einem virtuellen Mehrprozessorsystem kombiniert werden, womit maximal 40 Prozessoren zur Verfügung stehen.
Die zentrale Instanz der Virtualisierung ist der so genannte Hypervisor. Dabei handelt es sich um eine spezielle Hard- und Software, die im Open-Power-Server für die Verteilung der Ressourcen zuständig ist und mit der die Hardware Management Console des Desktop-PC kommuniziert. Eine Open-Source-Variante des Softwareteils namens R-Hypervisor (Research Hypervisor) hat IBM auf [3] unter GPL gestellt.
Virtuelle Treiber
Lassen sich Arbeitsspeicher und Prozessor-Ressourcen feingranular verteilen, funktioniert die Zuweisung der übrigen Open-Server-Hardware vergleichsweise grob: Jeder PCI-Slot mit der dort angeschlossenen Erweiterungskarte kann lediglich einer virtuellen Partition zugeordnet werden. Im Testsystem von IBM waren drei Dual-Port-Netzwerkkarten sowie zwei SCSI-Controller mit je vier Festplatten eingebaut. Durch die Virtualisierung auf Basis der PCI-Slots kann es also maximal zwei logische Partitionen mit Festplatten beziehungsweise SCSI-Controllern geben.
Dieses Problem löst die aufpreispflichtige zweite Virtualisierungsstufe mit Hilfe der Virtual-I/O-Treiber. In diesem Fall läuft in einer logischen Partition eine spezielle AIX-Version, die als Virtual-I/O-Server (VIO-Server) arbeitet. Wer die Kosten für AIX beim VIO-Server sparen möchte, bestückt stattdessen eine logischen Partition mit einem Linux-System, dessen PowerPC-Kernel größtenteils die nötigen Treiber für einen VIO-Server enthält. Die noch fehlenden Teile sollen in Kürze in den offiziellen Kernel aufgenommen werden.
Die Virtual-I/O-Treiber aus den anderen logischen Partitionen benutzen dann den VIO-Server statt der echten Hardware. Derzeit gibt es für Linux zwei virtuelle Treiber: Einmal den virtuellen SCSI-Festplattentreiber »ibmvscsi« und den virtuelle Ethernet-Treiber »ibmveth«.
Linux real und virtuell
Auf dem vorliegenden System ordneten die Tester dem Virtual-I/O-Server eine logische Partition mit mittlerer CPU- und RAM-Ausstattung, einen SCSI-Controller und eine Dual-Port-Ethernet-Karte zu. Anschließend installierten sie Debian GNU/Linux, alternativ hätten Gentoo Linux und die offiziell unterstützten Linux-Systeme Suse Linux Enterprise Server und Red Hat Advanced Server zur Auswahl gestanden.
Die Festplatten des SCSI-Controllers exportiert der VIO-Server dann an andere logische Partitionen, wobei der Virtual-SCSI-Treiber ganze Festplatten, Festplatten-Partitionen oder auch nur einzelne Dateien als virtuelles Laufwerk exportieren kann. Der Virtual-I/O-Client, in Form einer herkömmlichen Linux-Installation auf einer anderen logischen Partition mit dem entsprechenden VIO-Treiber, vermag nicht zu unterscheiden, ob es sich um eine physikalische Festplatte oder nur um eine Datei handelt.
Der Einsatz von Dateien als virtuelle Festplatten vereinfacht auch die Einrichtung einer neuen logischen Partition: Im besten Fall kopiert der Administrator lediglich die Imagedatei einer vorhandenen logischen Partition.
Ähnlich wie bei den virtuellen Festplatten verhält es sich mit den Netzwerkadaptern: Über die Hardware Management Console lassen sich den logischen Partitionen virtuelle Netzwerkkarten zuweisen, die der Virtual-Ethernet-Treiber »ibmveth« wie eine Ethernet-Bridge behandelt. Würde etwa ein Webhoster Root-Server auf Basis des IBM E-Server Open Power 720 anbieten wollen, könnte er neben dem Virtual-I/O-Server 39 virtuelle Webpräsenzen darauf unterbringen. Der VIO-Server fasst die 39 virtuellen Ethernet-Devices zusammen und leitet den Datenverkehr über die Netzwerkkarte nach außen.
Der Vorteil einer solchen virtuellen Serverfarm ist, dass sie sich sehr leicht aufsetzen und neu initialisieren lässt. So könnte der Administrator eine Musterinstallation des Rootserver-Systems vornehmen. Für neue virtuelle Server braucht er dann nur die Imagedatei auf dem VIO-Server zu kopieren.
|
IBM E-Server Open Power |
|---|
|
Beschreibung: Mehrprozessor-Server auf Power-5-Basis mit Virtualisierungsfunktionen und logischen Rechner-Partitionen Systemdaten: Power-5-Prozessor mit 64 Bit, 1,65 GHz und Dual-Core (Doppel-CPU mit SMT, vier logische Prozessoren), 4 GByte RAM (max. 64 GByte), zwei Ultra-320-SCSI-Controller mit acht 73-GByte-Festplatten, Streamer, drei Gigabit-Ethernet-Karten mit je zwei Ports, IBM-Desktop-PC als Hardware Management Console Preis: ca. 15000 Euro |
CPU-Tausch im laufenden Betrieb
Die Linux-Kernel von Suses und Red Hats Enterprise-Distributionen unterstützen neben PCI-Hotplugging auch Hotplug für den Prozessor. Damit ist keinesfalls der physikalische Austausch eines Prozessor-Chips im laufenden Betrieb gemeint, sondern viel mehr die Neuverteilung von CPU-Ressourcen, wie sie zum Beispiel per Hardware Management Console bei IBMs E-Server möglich ist. So lassen sich zum Beispiel CPU-Anteile einer gerade wenig ausgelasteten logischen Partition entfernen und anderen, stark belasteten Partitionen zuordnen.

Abbildung 1: IBMs E-Server gibt es als Tower- und Rack-Variante, für die Konfiguration ist ein herkömmlicher IBM-Desktop-PC mit der speziellen Software fürs Hardware-Management erforderlich.

Abbildung 2: Der Open-Power-Server 720 von innen: Oben ist Platz für ein zweites Netzteil, in der Mitte sitzen die CPU-Module und unten die PCI-Slots.
Die Systemressourcen sind nicht nur statisch teilbar, sondern auch über ein dynamisches Load Balancing. Dazu erhält jede logische Partition per Hardware Management Console eine Priorität. So zieht eine Partition mit hoher Priorität bei Überlast automatisch Ressourcen von weniger wichtigen Partitionen ab.
Unterstützte Distributionen
Offiziell gewährt IBM nur für Suse Linux Enterprise Server und Red Hat Advanced Server Support. Debian GNU/Linux für PowerPC wird immerhin geduldet und von IBM mit einem Server der Open-Power-Reihe für die Debian-Community unterstützt. Das Gerät dient als Paket-Building-Server und steht an der Uni Augsburg. Als vierte Distribution mit PowerPC-Unterstützung muss Gentoo allerdings ganz ohne Support durch IBM auskommen.
Die Linux-Installation auf den regulären logischen Partitionen unterscheidet sich kaum von der auf normalen PowerPC-Rechnern. Obwohl die Open-Power-Server eine 64-Bit-Architektur haben, laufen die User-Space-Applikationen stets im 32-Bit-Modus. Der Kernel hingegen muss 64 Bit unterstützen. Wer einen neuen Kernel übersetzen will, muss also unbedingt einen Crosscompiler für 64 Bit verwenden. Bei Suse und Red Hat ist der Crosscompiler bereits installiert, für Debian gibt es unter [4] entsprechende Pakete zum Download.
Während die Versorgung mit Open-Source-Software für PowerPC bei keiner der vier Distributionen ein Problem darstellt, ist bei kommerziellen Programmen Vorsicht geboten: Der Open-Power-Server besitzt keinen x86-Emulator und ist dementsprechend nicht zu Intel-Prozessoren kompatibel. Einige große Hersteller wie zum Beispiel Oracle haben jedoch PowerPC-Versionen ihrer Produkte angekündigt.

Abbildung 3: Der Open-Power-Server 720 kann zwei CPU-Module aufnehmen, auf denen jeweils der Dual-Core-Prozessor, sämtliche Caches (L1 bis L3) und mindestens 4 GByte RAM untergebracht sind. Jedes CPU-Modul emuliert mit seinen zwei Prozessorkernen und SMT vier logische Prozessoren.
Fazit
Mit den Virtualisierungsfunktionen für Prozessor, Speicher, PCI-Geräte, Netzwerk und Festplatten bietet IBMs E-Server Open Power 720 Funktionen, die bisher Großrechnern vorbehalten waren. Mit rund 15000 Euro für Server, Hardware Management Console und Modem ist das System nicht billig, aber preiswert – schließlich ersetzt der Power-5-Server bis zu 40 einzelne Computer.
Die Vorteile der Open-Power-Architektur liegen in der flexiblen Verteilung der Ressourcen, insbesondere über das dynamische Load Balancing für die einzelnen logischen Partitionen und Prozessoranteile: Bei herkömmlichen Rechnern ist es ohne Hardware-Modifikationen und damit Downtime nicht möglich, dem überlasteten Datenbankserver leistungsfähigere oder mehr Prozessoren zur Verfügung zu stellen.
Zwei weitere Pluspunkte sind der im Vergleich zu einzelnen Servern geringe Platzbedarf und die mit 380 Watt Spitzenleistung sehr moderate Leistungsaufnahme. Aus der geringen elektrischen Leistung resultiert auch eine niedrige Abwärme, sodass die Kühlung sehr viel einfacher ausfallen kann – gerade in Rechenzentren ein nicht zu unterschätzender Punkt.
Das einzige Manko ist die fehlende Dokumentation. Auch wenn aus der Sicht des Herstellers die Garantiebedingungen und Lizenzverträge wichtig sein mögen, der Kunde erwartet ein gedrucktes Handbuch mit einer verständlichen Installationsanleitung. (mdö)
|
Infos |
|---|
|
[1] IBM Open Power: [http://www-1.ibm.com/servers/eserver/openpower/] [2] Linux-Installationsanleitung für Open Power: [http://www-128.ibm.com/developerworks/linux/library/l-pow-opsetup/] [3] GPL-Quellen des R-Hypervisors: [http://www.research.ibm.com/hypervisor/] [4] Debian-Pakete für PowerPC 64: [http://debian.gonicus.de/powerpc-extras] |







