Open Source im professionellen Einsatz

Installation

Der Punkt Installation ist beim Betrieb eines Clusters eine nicht zu unterschätzende Aufgabe, denn während das Aufspielen der Systemsoftware auf einen einzigen Rechner noch gut manuell erledigt werden kann, würde dieser Vorgang bei mehreren Hundert Knoten Monate dauern. Außerdem ist sehr wichtig, dass die Software auf allen Rechenknoten exakt denselben Stand hat.

Eine wirklich einfache Variante, um dieses Problem zu lösen, ist der Einsatz von Netboot-Servern, bei denen die gesamte Systemsoftware direkt aus dem Netz bootet. Dies kann ein PXE-Server leisten, Alternativen sind zum Beispiel Open Bootrom oder EFI. Für sehr große Installationen ist diese Betriebsart besonders vorteilhaft, weil die Knoten auf Festplatten verzichten können. Damit ist eine potenzielle Fehlerquelle beseitigt und Strom spart es außerdem. Aber auch bei kleineren Installationen lassen sich mit einem solchen Setup die Wartungskosten minimieren und Rechner, die tagsüber als normale Arbeitsrechner dienen, nachts in einen Cluster verwandeln.

Sollte die Systemsoftware der Knoten nicht auf eine Ramdisk passen oder sprechen andere technische Gründe gegen ein Setup ohne Festplatten, muss der Admin Linux verteilt installieren. Ein technischer Grund kann beispielsweise sein, dass eine Anwendung, die auf dem Cluster später laufen soll, einen großen lokalen Festplattenspeicher voraussetzt. Eine solche lokale Installation bewältigen netzwerkfähige Installer wie FAI (Fully Automic Installation, [1]) sehr gut. FAI wurde entwickelt, um automatische Debian-Installationen vornehmen zu können, ist aber auch in der Lage, andere (auf Debian basierende) Distributionen verteilt zu installieren.

Auf RPM aufsetzende Distributionen bringen meist ihren eigenen netzwerkfähigen Installer mit. So lassen sich auf Red Hat basierende Distribution mit Kickstart und Suse-Distributionen mit Yast installieren. Bei all diesen Varianten kann übrigens der Installationsserver schnell zum Engpass werden, wenn die Knotenzahl hoch ist.

Eine weitere und sehr elegante Variante der lokalen Installation eines Clusters ist die Installation mit Hilfe einer Image-Software. Sie installiert nicht per Installer auf jeden Knoten einzeln, sondern repliziert eine bestehende Installation von einem auf alle anderen Knoten. Dieses Vorgehen hat eine ganze Reihe von Vorteilen:

  • Die Software muss nicht unbedingt mit der Paketverwaltung der
    jeweiligen Distribution installiert sein, was dem Administrator das
    Packen entsprechender Pakete erspart.
  • Es lässt sich neben dem Hauptcluster ein kleiner
    Testcluster betreiben, dessen Installation man nach ausgiebigen
    Tests einfach repliziert.
  • Die Systeme sind wirklich hundertprozentig gleich.

Eine einfache Image-Software ist zum Beispiel Partimage [2]. Es beherrscht das Sichern und Wiederherstellen von Partitionen unterschiedlichen Typs. Eine erheblich ausgereiftere Variante ist der Systemimager [3], der neben dem reinen Installieren auch die erzeugte Installation zu konfigurieren vermag. Zudem kann Systemimager seine Daten aus einem lokalen Bit-Torrent-Netzwerk beziehen, was den Engpass einer Server-gestützten Installation beseitigt.

Administration

Ist der Cluster installiert, stellt sich die Frage nach der Verwaltung. SSH ist hier das am meisten verwendete Werkzeug, um Teile des Clusters remote zu verwalten. Terminalprogramme wie VNC spielen keine Rolle, weil sie schlecht zu skripten sind. Ein einziger Server ist damit zwar sehr gut und komfortabel grafisch zu verwalten, um bei 100 Knoten simultan die gleiche Änderung vorzunehmen, bedarf es aber der Automatisierung. Nicht selten greifen Admins hier auf Projekte wie Parallel SSH zurück [4].

Ein weiterer wichtiger Punkt bei der Administration ist die komplette Hardware-Überwachung, um einen bevorstehenden Ausfall zu erkennen. Lüfter und Temperatur lassen sich per LM-Sensors [5] auslesen. Mit ein wenig Skripting ist es sogar möglich, eine Heatmap des Clusters zu erstellen und so Wärmenester ausfindig zu machen.

Die Smartmontools [6] erledigen ähnliche Aufgaben für Festplatten, wobei darauf zu achten ist, dass die Festplatten innerhalb der spezifizierten Temperaturgrenzen arbeiten. Auch eine zu geringe Betriebstemperatur kann zum vorzeitigen Ableben führen.

Um einen Überblick über die auf dem Cluster laufenden Programme zu erhalten, taugt ein herkömmliches Top nicht. Hier hilft verteile Monitoringsoftware weiter. Ganglia [7] ist so ein verteiltes Monitoringsystem für Hochleistungsrechner (Abbildung 3).

Abbildung 3: Ganglia liefert schnell einen Überblick über das Geschehen auf dem Cluster.

Abbildung 3: Ganglia liefert schnell einen Überblick über das Geschehen auf dem Cluster.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

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