Open Source im professionellen Einsatz

Von vernetzten Workstations zu kompakten Beowulf-Clustern

Verkehrsplanung

Mit wachsender Verbreitung von Cluster-Systemen steigt auch der Anspruch an die Werkzeuge für ihre Verwaltung. Projekte wie das Scaleable Cluster Environment (SCE) helfen dabei, Aufbau und Management der Rechner-Verbünde zu vereinfachen.

Anfang der 90er Jahre suchten Wissenschaftler an den Hochschulen und Forschungseinrichtungen nach neuen Möglichkeiten, ihren großen Rechenbedarf zu decken. Damals erlebte die verteilte Datenverarbeitung ihre Blüte. Viele Anwender hatten eine leistungsfähige Workstation am Arbeitsplatz. Die Rechner waren über ein lokales Netz miteinander verknüpft und bildeten so eine leistungsfähige Ressource.

Da Wissenschaftler ihre Workstation aber nicht 24 Stunden nutzen, sondern über das gesamte Jahr verteilt nur etwa zu zehn Prozent, lag eine große Rechenkapazität brach. Als die Anwender das erkannten, schlug die Stunde der Cluster of Workstations (COW) - inzwischen Network of Workstations (NOW).

Entwickler an den Instituten schufen die notwendigen Software-Werkzeuge, um den Rechnerpool als ein einziges Parallelrechner-System oder als eine große Zahl einzelner Rechner zu sehen. Dazu musste der Anwender natürlich von der Vorstellung einer eigenen, privaten Workstation Abschied nehmen und sie allen Kollegen zugänglich machen - ein schwieriges psychologisches Problem.

PVM und PVI, die ersten Postboten für Cluster

Schon 1991 lieferten Jack Dongarra und Vaidy Sundaram mit PVM (Parallel Virtual Machine) die erste Implementierung eines Message-Passing-Systems. Per Unterprogrammaufruf konnte der Benutzer Daten an einen anderen oder alle Rechner im lokalen Netz schicken oder von dort abrufen. Das Softwarepaket erlaubte es, durch ein Netzwerk verbundene heterogene Unix- und Windows-/NT-Workstations als einen großen, lose gekoppelten Parallelrechner - eine virtuelle Maschine - zu nutzen.

Etwas später entwickelten die Anwender MPI (Message Passing Interface), einen Standard zum Verteilen von Nachrichten, inzwischen liegt er in der Version 2 vor. Zusätzlich zu den MPI-Bibliotheken der Rechnerhersteller existieren auch offene, frei verfügbare Versionen wie zum Beispiel MPICH.[1]

Daneben entwickelten Unternehmen wie Platform Computing aus Kanada mit LSF (Load Sharing Facility)[2] und das damalige Softwarehaus Genias aus Neutraubling mit Codine schon 1993 Programmsysteme für die Verteilung der Lasten auf die einzelnen oder alle Workstations im Cluster. Inzwischen ist Codine unter dem Namen Grid Engine bei Sun Microsystems gelandet (Grid Engine wird im Schwerpunkt-Artikel "Bitte hinten anstellen" näher behandelt).

Abbildung 1: Die Grundstruktur von SCE ist einfach und lässt sich gut erweitern.

Abbildung 1: Die Grundstruktur von SCE ist einfach und lässt sich gut erweitern.

Das Rudel der Beo-Wölfe

Die NOW-Cluster bestanden aus vorhandenen, über das LAN vernetzten Workstations. Mit den Beowulf-Clustern[4] entstand eine neue Klasse von Systemen, bei denen die Workstations intern vernetzt waren. Dadurch beschleunigte sich die interne Kommunikation. Im Sommer 1994 bauten Thomas Sterling und Don Becker aus Massenkomponenten den ersten Beowulf-Cluster - COTS (Commodity off the Shelf). Sie vernetzten 16 Intel 80486 (100 MHz, 16 MByte RAM) mit einem dualen 10-MBit/s- Ethernet zu einem Rechner.

Beowulf-Cluster sind Cluster of Workstations und bestehen aus Knoten, die nur zum Cluster gehören. Die Knoten können einen oder mehrere Prozessoren enthalten, die sich einen gemeinsamen Speicher teilen. Die Knoten sind über ein internes Netzwerk verbunden und können daher schneller kommunizieren. Als Software werden offene und Hardware-unabhängige Bausteine verwendet, Linux, GNU-Compiler, Werkzeuge und Bibliotheken wie PVM und MPI. Auf diesem Prinzip beruhen heute viele Cluster mit unterschiedlichen Prozessorarchitekturen. Inzwischen entwickelt und unterstützt das Unternehmen Scyld Computing Corporation Hochleistungslösungen, die auf offenen Systemen wie dem Beowulf-Cluster beruhen.

Bald zeigte sich eine Schwäche: Die Kommunikationsleistung mit Ethernet ist für Programme mit regem Datenaustausch zwischen den Prozessoren zu schwach. Schnelle interne Netze, System Area Networks (SAN), sind wichtig. Sie kennen die Netztopologie und kommen mit geringerem Protokollaufwand aus. Hier bieten Unternehmen standardisierte oder eigene Lösungen an.

Abbildung 2: Die Prozesssteuerung mit KSIX erspart redundante Daemons auf den Knoten des Clusters.

Abbildung 2: Die Prozesssteuerung mit KSIX erspart redundante Daemons auf den Knoten des Clusters.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook