2.6. Überlegungen zur Konfiguration von Hochverfügbarkeitsdiensten
Sie können Ihren Cluster auf Ihre Anforderungen zur Hochverfügbarkeit anpassen, indem Sie Hochverfügbarkeitsdienste konfigurieren. Die Schlüsselkomponente zur Verwaltung von Hochverfügbarkeitsdiensten im Red Hat Hochverfügbarkeits-Add-On,
rgmanager
, implementiert Ausfallsicherung für Standardapplikationen. Im Red Hat Hochverfügbarkeits-Add-On wird eine Applikation mit anderen Cluster-Ressourcen konfiguriert, um einen Hochverfügbarkeitsdienst zu bilden, der zur Ausfallsicherung von einem Cluster-Knoten auf einen anderen wechseln kann, ohne signifikante Unterbrechung für Cluster-Clients. Das Wechseln eines Hochverfügbarkeitsdienstes auf einen anderen Knoten kann z.B. erfolgen, wenn ein Cluster-Knoten ausfällt oder ein Cluster-Systemadministrator den Dienst von einem Cluster-Knoten auf einen anderen verlegt (z.B. für eine geplante Betriebsunterbrechung eines Cluster-Knotens).
Um einen Hochverfügbarkeitsdienst zu erstellen, müssen Sie diesen in der Cluster-Konfigurationsdatei konfigurieren. Ein Hochverfügbarkeitsdienst besteht aus Cluster-Ressourcen. Cluster-Ressourcen bilden Blöcke, die Sie in der Cluster-Konfigurationsdatei erstellen und verwalten können — beispielsweise eine IP-Adresse, ein Skript zur Initialisierung einer Applikation oder eine gemeinsam genutzte Red Hat GFS2-Partition.
Ein Hochverfügbarkeitsdienst darf zur Gewährleistung der Datenintegrität zu jeder Zeit nur auf einem einzigen Cluster-Knoten laufen. Sie können eine Ausfallsicherungspriorität in einer Ausfallsicherungs-Domain angeben. Die Angabe einer solchen Ausfallsicherungspriorität besteht aus der Zuweisung eines Prioritätslevels für jeden Knoten in einer Ausfallsicherungs-Domain. Das Prioritätslevel bestimmt die Reihenfolge der Ausfallsicherung — dabei wird ermittelt, auf welchen Knoten ein Hochverfügbarkeitsdienst im Falle eines Ausfalls wechseln soll. Falls Sie keine Ausfallsicherungspriorität angeben, kann ein Hochverfügbarkeitsdienst im Falle eines Ausfalls auf jeden beliebigen Knoten innerhalb seiner Ausfallsicherungs-Domain wechseln. Auch können Sie angeben, ob ein Hochverfügbarkeitsdienst so eingeschränkt werden soll, dass er nur auf Knoten seiner zugewiesenen Ausfallsicherungs-Domains läuft. (Ist ein Hochverfügbarkeitsdienst mit einer uneingeschränkten Ausfallsicherungs-Domain verknüpft, kann er für den Fall, dass kein Mitglied der Ausfallsicherungs-Domain zur Verfügung steht, auf jedem beliebigen Cluster-Knoten starten.)
Abbildung 2.1, »Beispiel: Webserver-Cluster-Dienst « zeigt ein Beispiel eines Hochverfügbarkeitsdienstes, nämlich einen Webserver mit der Bezeichnung "content-webserver". Er läuft auf Cluster-Knoten B und befindet sich in einer Ausfallsicherungs-Domain, die aus den Knoten A, B und D besteht. Zusätzlich ist die Ausfallsicherungs-Domain mit einer Ausfallsicherungspriorität konfiguriert, um im Falle eines Ausfalls auf den Knoten D zu wechseln, bevor auf Knoten A gewechselt wird und um die Ausfallsicherung nur auf Knoten aus dieser Ausfallsicherungs-Domain zu beschränken. Der Hochverfügbarkeitsdienst umfasst die folgenden Cluster-Ressourcen:
- IP-Adressen-Ressource — IP-Adresse 10.10.10.201.
- Eine Applikations-Ressource mit dem Namen "httpd-content" — Ein Initialisierungsskript
/etc/init.d/httpd
für eine Webserver-Applikation (nämlichhttpd
). - Eine Dateisystem-Ressource — Red Hat GFS2, genannt "gfs2-content-webserver".
Abbildung 2.1. Beispiel: Webserver-Cluster-Dienst
Clients greifen auf den Cluster-Dienst via IP-Adresse 10.10.10.201 zu, was eine Interaktion mit der Webserver-Applikation, httpd-content, ermöglicht. Die Applikation "httpd-content" verwendet das "gfs2-content-webserver"-Dateisystem. Falls der Knoten B ausfallen sollte, würde der Hochverfügbarkeitsdienst "content-webserver" auf Knoten D wechseln. Falls Knoten D nicht verfügbar sein sollte oder auch ausgefallen ist, würde der Dienst auf Knoten A wechseln. Die Ausfallsicherung würde ohne nennenswerte Unterbrechung für Cluster-Clients erfolgen. In einem HTTP-Dienst beispielsweise könnten hierdurch lediglich gewisse Zustandsinformationen verloren gehen (z.B. Sitzungsdaten). Der Hochverfügbarkeitsdienst wäre von einem anderen Cluster-Knoten aus unter derselben IP-Adresse erreichbar wie vor der Ausfallsicherung.
Anmerkung
Weitere Informationen über Hochverfügbarkeitsdienste und Ausfallsicherungs-Domains finden Sie im Handbuch Überblick über das Hochverfügbarkeits-Add-On. Informationen über die Konfiguration von Ausfallsicherungs-Domains finden Sie in Kapitel 3, Konfiguration des Red Hat Hochverfügbarkeits-Add-Ons mit Conga (unter Verwendung von Conga) oder Kapitel 7, Manuelle Konfiguration von Red Hat Hochverfügbarkeit (unter Verwendung der Befehlszeilen-Tools).
Ein Hochverfügbarkeitsdienst besteht aus einer Gruppe von Cluster-Ressourcen, die als eine zusammenhängende Einheit konfiguriert wurden und zusammen einen spezialisierten Dienst für Clients bereitstellen. Ein Hochverfügbarkeitsdienst wird als Ressourcenbaum in der Cluster-Konfigurationsdatei
/etc/cluster/cluster.conf
dargestellt (in jedem Cluster-Knoten). In der Cluster-Konfigurationsdatei ist jeder Ressourcenbaum eine XML-Darstellung, die jede Ressource spezifiziert, deren Parameter, sowie ihre Relationen zu anderen Ressourcen im Ressourcenbaum (Eltern-, Kind-, Geschwisterrelationen).
Anmerkung
Da ein Hochverfügbarkeitsdienst aus Ressourcen besteht, die in einem hierarchischen Baum angeordnet sind, wird ein solcher Dienst manchmal auch als Ressourcenbaum oder Ressourcengruppe bezeichnet. Beide Ausdrücke sind Synonyme für Hochverfügbarkeitsdienst.
An der Wurzel eines jeden Ressourcenbaums befindet sich eine besondere Art von Ressource — eine Dienstressource. Andere Arten von Ressourcen bilden den Rest eines Dienstes und bestimmen so dessen Charakteristiken. Zum Erstellen eines Hochverfügbarkeitsdienstes gehört das Erstellen einer Dienstressource, das Erstellen untergeordneter Cluster-Ressourcen, sowie deren Anordnung in eine zusammenhängende Einheit gemäß den hierarchischen Einschränkungen des Dienstes.
Zwei grundlegende Überlegungen sollten bei der Konfiguration eines Hochverfügbarkeitsdienstes berücksichtigt werden:
- Die Ressourcenarten, die zum Erstellen eines Dienstes nötig sind
- Eltern-, Kind- und Geschwisterrelationen zwischen den Ressourcen
Die Arten der Ressourcen und deren Hierarchie hängen von der Art des Dienstes ab, den Sie konfigurieren.
Die Arten von Cluster-Ressourcen sind in Anhang B, Parameter der Hochverfügbarkeitsressourcen aufgelistet. Informationen über Eltern-, Kind- und Geschwisterrelationen unter den Ressourcen finden Sie in Anhang C, Verhalten der Hochverfügbarkeitsressourcen.