Red Hat Cluster Suite: Konfiguration und Management eines Cluster | ||
---|---|---|
Zurück | Einleitung | Nach vorne |
Ein Cluster hat folgende Eigenschaften:
No-single-point-of-failure Hardware Konfiguration
Ein Cluster kann ein Dual-Controller RAID-Array, mehrere Netzwerk und serielle Kommunikationskanäle und redundante ununterbrochene Stromversorgung (USV oder UPS) enthalten, um sicherzustellen, dass kein einzelner Ausfall eine Unterbrechung in der Verfügbarkeit von Applikationen oder Datenverlust zur Folge hat.
Es kann eine kostengünstige Alternative eingerichtet werden, die eine geringere Verfügbarkeit im Vergleich zu einem No-single-point-of-failure Cluster bereitstellt. Sie können, zum Beispiel, einen Cluster mit einem Single-Controller RAID-Array und lediglich einem Ethernet-Kanal einrichten.
![]() | Anmerkung |
---|---|
Einige bestimmte kostengünstige Alternativen, wie Software RAID und Multi-Initiator Parallel SCSI, sind entweder nicht kompatibel oder unvernünftig für die Benutzung auf einem gemeinsamen Cluster Speicher. Sehen Sie Abschnitt 1.1 für mehr Information. |
Konfigurationsumgebung eines Service
Ein Cluster erlaubt Ihnen das einfache Konfigurieren von Services, um Daten und Applikationen hochverfügbar zu machen. Um einen Service zu Erstellen, spezifizieren Sie die Ressourcen, die im Service benutzt werden und die Eigenschaften für den Service, einschließlich Servicename, Start- und Stop-Skript der Applikation, Diskpartitionen, Mount-Punkte, und das Cluster-System, auf dem der Administrator es vorzieht den Service laufen zu lassen. Nachdem der Administrator einen Service hinzugefügt hat, trägt der Cluster die Information in die Cluster Datenbank auf dem gemeinsamen Speicher ein, auf die alle Cluster Systeme zugreifen können.
Der Cluster stellt eine einfach zu benutzende Umgebung für Datenbank-Applikationen bereit. Der Datenbank-Service, zum Beispiel, liefert hochverfügbare Daten für Datenbank-Applikationen. Die auf einem Cluster-System laufende Applikation ermöglicht einen Netzwerk-Zugriff für Datenbank-Client-Systeme, wie Web-Server. Sollte der Service wegen Ausfalls auf ein anderes Cluster System umgelagert werden (Failover), kann die Applikation dennoch auf die gemeinsamen Daten der Datenbank-Applikation zugreifen. Einem Datenbank-Service, der über ein Netzwerk verfügbar ist, wird normalerweise ein IP Adresse zugewiesen, die bei Ausfall, zusammen mit dem Service umgelagert wird. Dies ermöglicht einen transparenten Zugriff für Clients.
Die Konfigurationsumgebung des Cluster Service ist leicht auf andere Applikationen erweiterbar.
Failover-Domains
Indem Sie einen Service einer eingeschränkten Failover-Domain zuweisen, können Sie die Member einschränken, die diesen Service im Failover-Fall übernehmen können. (Ein Service, der einer eingeschränkten Failover-Domain zugewiesen ist, kann nicht auf einem Cluster-Member gestartet werden, dass nicht in dieser Failover-Domain enthalten ist.) Sie können die Member in einer Failover-Domain nach Präferenzen ordnen, um sicherzustellen, dass ein bestimmter Member diesen Service ausführt (solange dieses Member aktiv ist). Wenn ein Service einer uneingeschränkten Failover-Domain zugewiesen ist, kann der Service auf einem beliebigen verfügbaren Cluster-Member gestartet werden (sollte keines der Member in der Failover-Domain verfügbar sein).
Sicherstellung der Datenintegrität
Ein Service kann zu jeder Zeit auf nur jeweils einem Cluster System laufen, um Datenintegrität zu gewährleisten. Durch die Verwendung von Stromschaltern wird es jedem Cluster System ermöglicht, das andere Cluster System herunterzufahren, bevor es die Services des ausgefallenen Systems als Teil des Failover Prozesses neustartet. Dies verhindert einen gleichzeitigen Zugriff beider Systeme auf die gleichen Daten, welches die Korruption der Daten zur Folge haben kann. Auch wenn nicht benötigt, um Datenintegrität in jedem Ausfall zu gewährleisten, sind Stromschalter erforderlich. Watchdog Timer sind eine Alternative zu Stromschaltern, um eine einwandfreie Funktion des Failover sicherzustellen.
Benutzerschnittstelle zur Cluster Administration
Das Interface zur Cluster-Administration hilft bei Management von Tasks, wie dem Erzeugen, Starten und Beenden von Services; dem Umlagern von Services von einem auf einen anderen Member; dem Bearbeiten der Cluster-Konfiguration (um Services und Ressourcem hinzuzufügen oder zu entfernen); und das Überwachen von Cluster-Member und Services.
Ethernet-Channel-Bonding
Um die Betriebsbereitschaft von anderen Membern zu überwachen, überwacht jedes Member den Remote-Stromschalter, falls vorhanden, und stellt Heartbeat-Pings über Netzwerkkanäle aus. Durch Ethernet-Channel-Bonding, werden mehreren Ethernet-Schnittstellen dazu konfiguriert sich als eine zu verhalten, was einen einzelnen Punkt des Ausfalls vermeidet, was in typischen Ethernet-Verbindungen zwischen Systemen der Fall ist.
Gemeinsamer Speicher für Quorum-Information
Shared State Information enthält ob der Member aktiv ist. Service State information enthält ob und auf welchem Member der Service läuft. Jedes Member prüft, dass der Status der anderen Member auf dem neuesten Stand ist.
In einem Zwei-Member Cluster, schreibt jeder Member, in periodischen Abständen, Zeitstempel und Cluster-Status-Information auf die zwei gemeinsamen Cluster-Partitionen auf dem gemeinsamen Speicher. Sollte es einem System nicht möglich sein während dem Hochfahren zu beiden Quorum-Partitionen zu schreiben, wird dieses System nicht in den Cluster aufgenommen. Dies geschieht, um einen fehlerfreien Betrieb des Cluster sicherzustellen. Sollte ein Cluster System seinen Zeitstempel nicht aktualisieren, und sollten Heartbeats, die zu diesem System gesendet werden, fehlschlagen, dann wird das Cluster System auch aus dem Cluster herausgenommen.
Abbildung 2 zeigt, wie Systeme in einer Cluster Konfiguration kommunizieren. Beachten Sie bitte, dass der Terminal Server, welcher den Zugriff auf die Systemkonsolen über serielle Schnittstellen erlaubt, für den Betrieb eines Cluster nicht notwendig ist.
Service Failover Kapazität
Sollte ein Software oder Hardware-Ausfall auftreten, wird der Cluster die nötigen Schritte ausführen, um die Verfügbarkeit von Applikationen und Datenintegrität zu Gewährleisten. Sollte ein Cluster System, zum Beispiel, komplett ausfallen, wird ein anderes Cluster System (in der assoziierten Failover-Domain, falls verwendet, oder im Cluster) alle Services des ausgefallenen Systems übernehmen und neustarten. Die Services, die bereits auf dem Backup System laufen, werden dabei nicht beeinflusst.
Nach dem Hochfahren des ausgefallenen Systems, sollte es auf die Quorum Partitionen schreiben können, wird dieses wieder in den Cluster aufgenommen und kann erneut Services ausführen. Je nach Konfigurierung der Services, kann der Cluster diese gleichmäßig auf den beiden Cluster Systemen verteilen.
Funktionen zur manuellen Umlagerung eines Service
Ausser automatischer Failover Kapazität, stellt ein Cluster Ihnen auch die Möglichkeit bereit, Services auf einem Cluster System sauber zu beenden und auf dem anderen System neuzustarten. Dies erlaubt es Ihnen eine geplante Wartung eines Systems durchzuführen, wobei Verfügbarkeit von Applikationen und Datenintegrität gegeben sind.
Event Logging
Um sicherzustellen, dass Probleme gefunden und behoben werden, bevor diese die Verfügbarkeit von Applikationen beeinträchtigen, laufen Hilfsprogramme, so genannte Cluster Daemons, und schreiben Informationen in eine Log-Datei. Dies geschieht unter Verwendung des herkömmlichen Linux syslog Subsystems. Sie können den Schwerheitsgrad der Log-Informationen ihren Bedürfnissen anpassen.
Überwachung von Applikationen
Die Infrastruktur der Cluster-Services kann, optional, den Status und den fehlerfreien Ablauf einer Applikation überwachen. Sollte in der Applikation ein Fehler auftreten, so kann der Cluster in dieser Weise die Applikation automatisch neustarten. In Erwiderung des Fehlers in der Applikation, wird versucht, die Applikation auf dem Cluster Member neuzustarten, auf dem diese anfänglich gelaufen ist. Sollte dies Fehlschlagen, wird die Applikation auf dem anderen Cluster Member neugestartet. Sie können angeben, welche Members einen Service ausführen können, indem Sie diesem Service eine Failover-Domain zuweisen.
Zurück | Zum Anfang | Nach vorne |
Einleitung | Nach oben | Wie man dieses Handbuch benutzt |