Direkt zum Inhalt

Rechnernetze: Linux-Cluster macht Schule

Das Prinzip des Steinsuppen-Computers – jeder gibt ein bisschen dazu, bis aus Nichts etwas Schmackhaftes wird - funktioniert auch für den Computerraum der Schule.


Der Computerraum der Schillerschule in Hannover bietet zu Beginn des Schuljahres 2001/2002 ein durchaus typisches Bild: eine bunte Vielfalt an PCs, die meisten schon etwas älter, mit unterschiedlichster Software versehen und häufig defekt. Helfer haben die Geräte in mühevoller Kleinarbeit zu einem Netzwerk verbunden, doch selbst ein kleiner Defekt eines einzelnen Rechners erfordert langwierige Reparaturversuche. Die Schüler sind nicht recht glücklich, denn moderne Software, die sie von zu Hause gewohnt sind, läuft auf den mit Rechenleistung und Speicherplatz bescheiden ausgestatteten Geräten nicht. Die Lehrer sind ebenfalls nicht glücklich, denn sie können sich nie darauf verlassen, dass für den Unterricht genügend Computerarbeitsplätze zur Verfügung stehen.

Das Ziel ist leicht formuliert, aber sehr anspruchsvoll: Gesucht sind Computer, die stabil laufen und wenig Wartung benötigen. Obendrein sollten alle Geräte die gleiche Benutzeroberfläche haben; das alles mit den finanziellen Möglichkeiten einer Schule. Die Überraschung ist: Durch eine Eigenentwicklung abseits des Standards konnten wir binnen eines Jahres genau dieses Ziel realisieren.

Wir wollten aktuelle Programme auf allen Geräten gleichermaßen zur Verfügung stellen – auch auf denen, die dafür eigentlich zu schwach sind. Das funktioniert mit einer Technik, die in Firmen häufig praktiziert wird: Die Computer an den Arbeitsplätzen dienen vornehmlich als Terminals, das heißt als Ein- und Ausgabegeräte, während ein leistungsstarker zentraler Server die eigentliche Rechenarbeit erledigt. Einen alten PC in ein Terminal umzuwandeln ist nicht schwer. Hardware vom Typ 486 und darunter reicht bereits aus, und die ist reichlich und günstig verfügbar. Aber die Kosten eines Servers, der ausreichend viele Terminals bedienen kann, würden diesen Vorteil wieder zunichte machen.

Groß und schnell wie Vogel Strauß

Um dieses Problem zu lösen, wollten wir einen Cluster aufbauen: Mehrere, aus Standard-Komponenten aufgebaute Geräte sollten so zusammen arbeiten, als wären sie eine große Einheit. Damit bieten sich alle Vorteile einer zentralisierten Architektur ohne den größten Nachteil, nämlich den der hohen Server-Kosten. Rechen-Cluster wie der unter dem Namen Beowulf populär gewordene Steinsuppen-Computer (Spektrum der Wissenschaft 3/2002, S. 88) sind darauf ausgelegt, hohe Rechenleistungen zu erbringen, indem sie eine komplexe Aufgabe in verschiedene Teile zerlegen und diese parallel auf verschiedenen Rechnern des Clusters, den so genannten Knoten, ausführen. Diese Technik ist in der Forschung weit verbreitet, für unsere Zwecke aber ungeeignet: Die Standardaufgaben, die ein Schulcomputer zu bewältigen hat – Textbearbeitung und Recherche im Internet –, sind eben nicht komplex, aber zahlreich. Es bringt nichts ein oder ist sogar schädlich, diese kleinen Probleme in noch kleinere Teile zu zerlegen.

Daher habe ich eine eigene Software speziell für den Betrieb eines Terminal­servers entwicklet. Sie heißt Ostrich (Strauß), in Anlehnung an den Vogel, der wie der Cluster sehr groß ist, trotzdem aber schnell läuft. Dem Benutzer erscheint das fertige System so, als sitze er an einem Computer mit einem lokalen Betriebssystem, und zwar immer vor demselben, gleich welches Terminal er nutzt. Insbesondere steht ihm überall dasselbe, Linux-typisch baumartig strukturierte Dateisystem zur Verfügung; darin sind alle Benutzerprogramme und -daten gespeichert. Jeder Knoten des Clusters greift dabei auf das gleiche Dateisystem zu ("shared root"), sodass neue Programme nur einmal aufgespielt werden müssen und dann von allen Terminals aus verwendbar sind. In vielerlei Hinsicht kann man den Cluster wie ein Einzelplatzsystem konfigurieren; der Wartungsaufwand für die Anwendersoftware bleibt also unabhängig von der Netzwerkgröße fast konstant. Auch in der Bedienung unterscheidet sich das System nicht unbedingt von einer Standardinstallation: Alle Programme lassen sich genau so benutzen, als würden sie auf dem Terminal selbst ausgeführt. Benutzer müssen keineswegs wissen, dass sie auf einer Cluster-Architektur arbeiten, um diese nutzen zu können.

Aber das Dateisystem der Benutzer ist nur virtuell und im Prinzip über mehrere Knoten verteilt. Konventionelle Cluster-Installationen haben oft ein Speichersystem, das Programme und Daten jedesmal bei Bedarf von dem Knoten abruft, auf dem sie lagern. Das ist zwar für den Administrator recht einfach zu warten, erzeugt aber sehr viel Datenverkehr; mit unserer Zehn-Megabit-Verkabelung kann man ein solches System nicht realisieren.

Glücklicherweise kann man Dateien in zwei Kategorien einteilen: in kleine wie E-Mails oder Briefe, die häufig geändert werden, und in dauerhaftere, aber sehr umfangreiche, wie etwa Systemdateien. Das Ostrich-System macht sich diese Unterschiede zunutze. So liegt von den Systemdateien auf jedem Knoten eine Kopie, sodass deren Abruf das Netz nicht belastet. Benutzerdateien hingegen werden auf einem zentralen Speicherserver abgelegt, von dem jeder Knoten sie bei Bedarf lädt. So ist sichergestellt, dass alle Terminals die gleiche Version eines Dokuments abrufen. Außer der Verminderung des Datenverkehrs bringt dieses Verfahren noch einen Gewinn an Sicherheit: Eine unbedachte Wartungsoperation bringt nicht gleich den Cluster zum Erliegen, denn über ein Web-Interface muss jede Änderung in den Systemdateien bestätigt werden, bevor sie aktiv wird.

Wenn der Benutzer ein Programm aufruft, wird dieses automatisch auf dem am wenigsten ausgelasteten Knoten gestartet. Es gibt in diesem Cluster keinen "Chef-Computer", der den anderen die Arbeit zuweist und dessen Ausfall den ganzen Cluster lahm legen würde. Das System besteht aus gleichberechtigten Knoten und ist voll funktionsfähig, solange noch mindestens einer von ihnen arbeitet. Damit bietet der Cluster zugleich hohe Leistung und hohe Verfügbarkeit. Eine weitere Besonderheit des Ostrich ergibt sich aus diesem Design: Der Cluster arbeitet nicht schlechter, wenn er größer wird.

Seit mehr als einem Jahr wird Ostrich an der Schillerschule Hannover eingesetzt. Bislang hat es keine Totalausfälle gegeben. Und wenn die Hardware eines der alten Terminals versagt, kann der Benutzer zum nächsten Gerät gehen.

Aus: Spektrum der Wissenschaft 5 / 2003, Seite 106
© Spektrum der Wissenschaft Verlagsgesellschaft mbH

Schreiben Sie uns!

Beitrag schreiben

Wir freuen uns über Ihre Beiträge zu unseren Artikeln und wünschen Ihnen viel Spaß beim Gedankenaustausch auf unseren Seiten! Bitte beachten Sie dabei unsere Kommentarrichtlinien.

Tragen Sie bitte nur Relevantes zum Thema des jeweiligen Artikels vor, und wahren Sie einen respektvollen Umgangston. Die Redaktion behält sich vor, Zuschriften nicht zu veröffentlichen und Ihre Kommentare redaktionell zu bearbeiten. Die Zuschriften können daher leider nicht immer sofort veröffentlicht werden. Bitte geben Sie einen Namen an und Ihren Zuschriften stets eine aussagekräftige Überschrift, damit bei Onlinediskussionen andere Teilnehmende sich leichter auf Ihre Beiträge beziehen können. Ausgewählte Zuschriften können ohne separate Rücksprache auch in unseren gedruckten und digitalen Magazinen veröffentlicht werden. Vielen Dank!

Bitte erlauben Sie Javascript, um die volle Funktionalität von Spektrum.de zu erhalten.