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

Heimarbeit bietet Vorteile [26.02.2021]

Laut einer aktuellen Umfrage ist Home Office auf dem Vormarsch. 46 Prozent der Befragten gaben an, dass sie bei einem Jobwechsel nur eine Stelle annehmen würden, die Heimarbeit oder flexible Arbeitsoptionen bietet. Mehr als die Hälfte wünschten sich ein gesetzlich verankertes Recht auf Home Office und Remote-Arbeit. 71 Prozent waren überzeugt, dass flexible Arbeitsmodelle auch nach der Pandemie häufiger vorkommen würden. [mehr]

Kompakt und widerstandsfähig [26.02.2021]

Mit dem "iMX8M" im kompakten 2,5-Zoll-Format bringt Kontron ein neues Motherboard auf den Markt. Die Neuvorstellung eigne sich für Embedded-Anwendungen und den Einsatz in rauen Umgebungen und verfügt über Zwei- beziehungsweise Vierkern-NXP-CPUs auf Basis der Arm-Cortex-A53-Architektur mit bis zu 1,5 GHz. [mehr]

Tipps & Tools

Hybrid-PDF erstellen [27.02.2021]

Das PDF-Format bietet viele Vorteile: beispielsweise lassen sich Dokumente auf verschiedenen Geräten genauso darstellen, wie sie gespeichert wurden. Zudem belegen PDFs kaum Speicherplatz auf dem PC, da Bilder komprimiert werden. Allerdings ist es nicht möglich, die fertigen Dateien zu editieren. Unser Tipp zeigt, wie Sie unter LibreOffice ein Hybrid-PDF exportieren, das die nachträgliche Bearbeitung erlaubt. [mehr]

Im Test: Sapien PowerShell Studio 2020 [25.02.2021]

Skripte umweht traditionell der Nimbus, dass nur Programmierer richtig mit ihnen umgehen können. Doch für den Einsatz der PowerShell auf Windows-Systemen bieten Editoren eine Arbeitsumgebung, die diese Hürden absenkt. PowerShell Studio 2020 ist eine Entwicklungsplattform mit Skript-Editor und -Debugger sowie GUI-Designer. Wir haben die Software getestet und waren positiv von den vielen Einstellmöglichkeiten überrascht, die allerdings etwas Einarbeitungszeit benötigen. [mehr]

Buchbesprechung

Computernetze und Internet of Things

von Patrick-Benjamin Bök, Andreas Noack, Marcel Müller

Anzeigen