Grundlagen

Cluster

Als Cluster bezeichnen wir im Folgenden einen Verbund von vernetzten Rechnern, die nach außen hin als ein einziger Rechner erscheinen. Die in einem Cluster befindlichen Computer werden auch Knoten (Nodes) genannt. Eine alternative Bezeichnung für die Summe dieser Knoten lautet Serverfarm. Eine derartige Zusammenschaltung von Rechnern verfolgt in der Regel eines der folgenden drei Ziele: Hochverfügbarkeit (HA), High Performance Computing (HPC) oder Load Balancing (LB), wobei die Grenzen zwischen den beiden letztgenannten Varianten eher fließend sind.
Wichtige Begrifflichkeiten im Zusammenhang mit Clustern sind "shared-nothing" und "shared-all". In einer shared-nothing-Architektur ist jeder Knoten autonom, das heißt er verfügt über alle für den Betrieb nötigen Hardware-Komponenten und ein eigenes Betriebssystem. Das betrifft besonders Storage und Arbeitsspeicher; beides wird nicht mit anderen Nodes geteilt. Diese Ausprägung findet sich besonders oft im Bereich der HPC-Cluster. Von Vorteil ist hier die hohe Skalierbarkeit. Damit ist gemeint, dass sich die Leistungsfähigkeit der gesamten Umgebung durch das Hinzufügen neuer Nodes quasi beliebig nach oben steigern lässt.

Anders stellt sich dies bei einem shared-all-Cluster dar. Diese Architektur ist besonders oft in Storage-Netzwerken (SAN) anzutreffen und garantiert durch einen konkurrierenden Zugriff auf Shared Storage, dass alle Nodes auf den gesamten Datenbestand zugreifen können. In diesem Zusammenhang kommen dann auch Cluster-Dateisysteme ins Spiel: Da beim gleichzeitigen Zugriff von mehreren Quellen auf einen gemeinsamen Datenbestand Inkonsistenzen auftreten können. Um dies zu verhindern, müssen die Metadaten wie etwa Verzeichnisse, Attribute und Speicherplatzzuweisungen koordiniert abgelegt werden. Zu diesem Zweck kommt im Regelfall innerhalb eines Fibre Channel- oder iSCSI-Netzwerks ein Metadaten-Server zum Einsatz.

Hochverfügbarkeitscluster
Das Ziel von Hochverfügbarkeitsclustern (HA-Cluster) ist es, für eine erhöhte Ausfallsicherheit zur sorgen. Tritt auf einem Cluster-Knoten ein Fehler auf oder fällt er gar komplett aus, werden die dort laufenden Dienste auf einen anderen Knoten migriert. Die meisten HA-Cluster besitzen zwei Knoten. Dabei handelt es sich meist um eine Aktiv/Passiv-Konstruktion, das heißt, der Ersatz-Knoten befindet sich lediglich im Standby, solange der erste Knoten ohne Probleme funktioniert. Eine derartige Übernahme von Diensten wird auch als Failover bezeichnet – im Fehlerfall wird die Anwendung auf einem anderen Rechner im Cluster neu gestartet. Takeover hingegen bedeutet, dass die Dienste auf zwei oder mehreren Servern gleichzeitig aktiv sind. In diesem Fall spricht man von einem Aktiv/Aktiv-Cluster, in dem die Nodes stets simultan aktiv sind.

Dienste müssen speziell für ihre Verwendung auf einem Cluster programmiert sein. Dies wird mit dem Begriff "cluster aware" beschrieben. Für den Betrieb eines HA-Clusters ist es extrem wichtig, dass sowohl die Hardware als auch die Software des Rechnerverbunds frei von Single-Point-of-Failures sind. Über eine spezielle Heartbeat-Verbindung informieren sich ein Knoten über den Zustand des / der anderen Nodes. Nicht zuletzt sollte der Cluster im Katastrophenfall weiter funktionieren. Dies ist durch eine räumliche Trennung zu erreichen. Im Extremfall werden die Cluster-Knoten dabei mehrere Kilometer voneinander entfernt in verschiedenen Rechenzentren platziert. Hierbei ist zu wiederrum zu beachten, dass für eine Failover/Takeover schnelle WAN-Leitungen benötigt werden, was neben den Mehrfach-Kosten für die einzelnen Knoten die für einen Cluster nötigen Investitionen weiter in die Höhe treibt.

HPC- und Load Balancing-Cluster
Eine weitere Cluster-Form sind High Performance Computing-Cluster, die oft auch als Superrechner bezeichnet werden. Ziel einer derartigen Konstruktion ist es, extrem anspruchsvolle Rechenaufgaben in einzelne Bestandteile zu zerlegen, auf die Knoten zu verteilen und dort gleichzeitig ausführen zu lassen. Zu diesem Zweck ist ein extrem schnelles Netzwerk vonnöten, so dass hier oft InfiniBand zum Einsatz kommt. Die meisten der auf einem HPC-Cluster basierenden Supercomputer werden derzeit unter Linux betrieben. Derart leistungsfähige, geclusterte Infrastrukturen kommen bei großen Suchmaschinen- und Cloud-Anbietern wie Google oder Amazon zum Einsatz. Bei Google etwa bestehen die einzelnen Knoten aus handelsüblichen PCs, die mit Hilfe des Google File Systems (GFS) für einen hohen Datendurchsatz sorgen.

Load Balancing-Cluster haben ähnlich wie HPC-Cluster die Lastverteilung auf mehrere Maschinen zum Ziel. Auch hier sind mögliche Einsatzgebiete Umgebungen mit sehr hohen Anforderungen an Computerleistung. Oft kommen derartige Cluster bei Webservern zum Einsatz, wenn es darum geht, Anfragen anderer Rechner aus dem Internet simultan mit hohem Tempo zu verarbeiten – ein einzelner Host kann nur eine limitierte Menge an HTTP-Anfragen auf einmal beantworten und stellt somit einen Flaschenhals dar. Mögliche Prozeduren bei LB-Clustern sind das Vorschalten eines Systems, etwa eines Load Balancers oder Frontend Servers, der die Anfragen aufteilt, oder die Nutzung von DNS mit dem Round-Robin-Verfahren.
21.11.2014/ln

Nachrichten

Service Pack 1 für SUSE Linux Enterprise 15 [25.06.2019]

SUSE hat Service Pack 1 von "SUSE Linux Enterprise 15" veröffentlicht. Der Anbieter bewirbt die Aktualisierung als multimodales Betriebssystemmodell – Container etwa sollen sich ebenso effizient einzusetzen lassen wie Datenbanken sowie ERP auf traditionellen Systemen. Konkret bietet SP1 außerdem volle Unterstützung für die Secure-Encrypted-Virtualization-Technologie von AMD. [mehr]

Ruhige Nächte mit MariaDB [12.06.2019]

Die MariaDB Corporation hat für Ende Juni "MariaDB Enterprise Server 10.4" angekündigt. Das Release trägt den Namen "Ruhige Nächte" (Restful Nights) und soll in puncto Stabilität und Anpassbarkeit neue Standards für Datenbanken in großen Produktivumgebungen setzen. Für mehr Sicherheit wird es zudem neue Backup-, Audit- und Cluster-Funktionen geben. [mehr]

Fliegengewicht [7.06.2019]

Tipps & Tools

Linux mit WebFAI neu aufsetzen [23.06.2019]

Um Linux auf mehreren Computern von Tuxedo neu auszurollen, liefert der Hersteller eine WebFAI auf einem USB-Stick. Der folgende Tipp zeigt Ihnen was Sie bei der Installation mit WebFAI beachten müssen. Dabei erklären wir auch, wie Sie das benötigte UEFI im Fll von BIOS-Problemen aktivieren. [mehr]

Katze oder Hund? [22.06.2019]

Für Tierliebhaber unter den Admins gibt es jetzt die optimale Lösung zur gleichzeitigen Schonung von Maushand und Nerven. Die Handballenauflage [1] in Form von Hund oder Katze sorgt für ein entspanntes Handgelenk bei der Arbeit am Rechner. Bei wiederkehrenden PC-Problemen lassen sich die Kunststoff-Viecher zudem bedenkenlos kneten, um den Stressabbau zu fördern. [mehr]

Buchbesprechung

Anzeigen