Neuigkeiten
Neu: Webanwendung Firewall (WAF) in Serverspace
Serverspace Black Friday
WB
William Bell
September 17 2020
Aktualisiert am 22. Mai 2024

Cluster

Ein Cluster ist eine Gruppe von Computern, die über Hochgeschwindigkeitskommunikationskanäle verbunden sind. Tatsächlich handelt es sich bei einer solchen Gruppe um eine einheitliche Hardwareressource mit einer bestimmten Funktionalität:

  • Bereitstellung von Rechenleistung;
  • Lastverteilung;
  • Automatische Skalierung;
  • Hohe Verfügbarkeit.

Computing-Cluster

Dabei wird die hohe Leistungsfähigkeit von Cluster-Prozessoren bei der Arbeit mit Fließkomma-Zahlenwerten als ausschlaggebende Merkmale angesehen. Darüber hinaus ist die geringe Latenz des kombinierenden Netzwerks ausschlaggebend. I/O-Operationen sind für die Bestimmung des Merkmals von geringerer Bedeutung, da die schnelle Ausführungsgeschwindigkeit dieser Prozesse eher für Datenbanken charakteristisch ist.

Rechencluster sind in der Lage, Berechnungen in viele parallele Zweige aufzuteilen und Daten in alle Richtungen gleichzeitig zu analysieren. Der Datenaustausch in einer solchen Struktur ist durch ein Verbindungsnetzwerk zwischen den Niederlassungen möglich.

Lastausgleichscluster

Diese Art von Clustern wird auch als Verteilungscluster bezeichnet. Das Funktionsprinzip besteht in der Arbeit von Eingabeknoten, die Anforderungen von Rechenknoten auswählen. In diesem Fall kann es mehr als einen Knoten als Eingabepunkte für Anfragen geben.

Anfragen kommen an einem oder mehreren Knoten an, die als Eingabepunkte fungieren. Die Knoten verteilen die Anfragen dann an die Rechenknoten, die sie direkt verarbeiten.

Hochverfügbarkeitscluster

Cluster dieser Art werden erstellt, um eine hohe Verfügbarkeit von Diensten bereitzustellen. Ein solcher Cluster enthält eine redundante Anzahl von Knoten (mindestens zwei), die als Sicherungskette fungieren. Wenn ein oder mehrere Server ausfallen, kann der Cluster den Dienst weiterhin bereitstellen.

Cluster dieser Art werden nach drei Hauptarchetypen aufgebaut:

  • Modulare Redundanz. Wird in Fällen aktiviert, in denen Systemausfallzeiten nicht akzeptabel sind: Bei Auslösung verarbeitet jeder Knoten eine einzelne Anforderung oder einzelne Fragmente davon. Die Ergebnisse der Arbeit einzelner Knoten sind identisch mit den Ergebnissen anderer Knoten oder ändern die Art der nachfolgenden Arbeit nicht. Daher sollte es keinen Unterschied machen, welcher Knoten ausgewählt wird.
  • Aktive Reserve. Jeder Knoten im Cluster bearbeitet Anfragen, aber wenn einer oder eine ganze Gruppe von Knoten ausfällt, wird die Last auf die Worker-Knoten umverteilt.
  • Passive Reserve. Einige der Knoten befinden sich in einem „Schlafzustand“, führen keine Anforderungen aus und warten auf einen Vorfall, wenn aktive Knoten einen Fehler erhalten, und beginnen erst dann mit der Verarbeitung der Anforderungen.

Datenspeichercluster

Diese Cluster sind auf die Bereitstellung zuverlässiger und skalierbarer Datenspeicherung spezialisiert. Sie werden häufig zum Erstellen verteilter Dateisysteme und Seed-Datenbanken verwendet.
Beispiele sind das Hadoop Distributed File System (HDFS) und das Slustermap-System von Cassandra.
Hauptmerkmale: hohe Datenverfügbarkeit, Gewährleistung der Datenintegrität, Lastausgleich für den Datenzugriff.

Container-Cluster

Containerzentrierte Cluster, wie z Kubernetes, haben aufgrund ihrer Fähigkeit, Containeranwendungen in einer Vielzahl von Umgebungen einfach bereitzustellen, zu skalieren und zu verwalten, eine breite Akzeptanz gefunden.

Architektur und Clustertypen

  • Symmetric Multi-Processing (SMP): Wird verwendet, um mehrere Prozessoren zu einem einzigen System mit gemeinsamem Speicher zu verbinden. Dies verbessert die Leistung und beschleunigt die Rechenleistung, da mehrere Prozessoren parallel an Aufgaben arbeiten können.
  • Massively Parallel Processing (MPP): Ein System, bei dem mehrere Prozessoren separate Aufgaben parallel ohne gemeinsamen Speicher ausführen, wodurch Systeme auf eine sehr große Anzahl von Knoten skaliert werden können.
  • Grid Computing: Kombination der Ressourcen mehrerer Cluster, die sich möglicherweise an unterschiedlichen geografischen Standorten befinden, zu einer einzigen Einheit, um groß angelegte Probleme zu lösen.

Clusterüberwachung und -verwaltung

Für die Clusterverwaltung sind spezielle Tools erforderlich, um die Leistung zu überwachen, Probleme zu diagnostizieren und die Ressourcenverwaltung zu automatisieren.
Beispiele für Werkzeuge: Kubernetes für Container-Orchestrierung, Apache Mesos, Prometheus zur Überwachung.

Clustersicherheit

Clustersicherheit ist besonders in Produktionsumgebungen von entscheidender Bedeutung.
Zu den gängigen Maßnahmen gehören Benutzerauthentifizierung und -autorisierung, Verschlüsselung von Daten während der Übertragung und auf Festplatten sowie die Kontrolle des Ressourcenzugriffs.

Automatische Wiederherstellung und Fehlertoleranz

Moderne Cluster verfügen über automatische Wiederherstellungsmechanismen. Beispielsweise Kubernetes kann ausgefallene Komponenten von Containerdiensten automatisch neu starten.
Im Falle der Fehlertoleranz können Cluster spezielle Protokolle wie Paxos oder Raft verwenden, um einen Konsens herzustellen und den Systemzustand aufrechtzuerhalten, selbst wenn ein oder mehrere Knoten ausfallen.

Wir verwenden Cookies, um Ihr Erlebnis auf der Website zu verbessern Serverspace besser. Indem Sie weiterhin auf unserer Website surfen, stimmen Sie unseren zu
Cookies und Datenschutzerklärung.