7.4. Konfiguration von Ausfallsicherungs-Domains
Eine Ausfallsicherungs-Domain ist eine benannte Teilmenge von Cluster-Knoten, die dazu berechtigt ist, einen Cluster-Dienst im Falle eines Knotenausfalls weiterzuführen. Eine Ausfallsicherungs-Domain kann die folgenden Charakteristiken haben:
- Uneingeschränkt — Ermöglicht Ihnen, eine Teilmenge bevorzugter Mitglieder zu spezifizieren, doch der dieser Domain zugewiesene Cluster-Dienst kann auf jedem verfügbaren Mitglied ausgeführt werden.
- Eingeschränkt — Ermöglicht Ihnen, die Mitglieder einzuschränken, auf denen ein bestimmter Cluster-Dienst laufen darf. Falls keines der Mitglieder in einer eingeschränkten Ausfallsicherungs-Domain verfügbar ist, kann der Cluster-Dienst nicht gestartet werden (weder manuell noch durch die Cluster-Software).
- Ungeordnet — Wenn ein Cluster-Dienst einer ungeordneten Aufallsicherungs-Domain zugewiesen ist, wird das Mitglied, auf dem der Cluster-Dienst ausgeführt wird, ohne Berücksichtigung von Prioritäten aus den verfügbaren Mitgliedern der Ausfallsicherungs-Domain ausgewählt.
- Geordnet — Ermöglicht Ihnen, eine Prioritätsreihenfolge für die Mitglieder einer Ausfallsicherungs-Domain anzugeben. Geordnete Ausfallsicherungs-Domains wählen den Knoten mit der niedrigsten Priorität zuerst. Das heißt, dass der Knoten in der Ausfallsicherungs-Domain mit der Priorität "1" die höchste Priorität hat und demnach der bevorzugte Knoten in einer Ausfallsicherungs-Domain ist. Der nächste bevorzugte Knoten wäre also der Knoten mit der nächsthöheren Priorität, usw.
- Failback — Ermöglicht Ihnen festzulegen, ob ein Dienst in der Ausfallsicherungs-Domain auf den Knoten zurückwechseln soll, auf dem er vor dessen Ausfall ursprünglich ausgeführt wurde. Das Konfigurieren dieser Charakteristik ist hilfreich in Situationen, in denen ein Knoten häufig ausfällt und Teil einer geordneten Ausfallsicherungs-Domain ist. In diesem Fall würde ein Dienst, der auf dem bevorzugten Knoten in einer Ausfallsicherungs-Domain läuft, möglicherweise wiederholt zwischen dem bevorzugten Knoten und einem anderen Knoten hin- und her wechseln, was beträchtliche Leistungseinbußen zur Folge hätte.
Anmerkung
Die Failback-Charakteristik greift nur, wenn die geordnete Ausfallsicherung konfiguriert ist.
Anmerkung
Eine Änderung der Ausfallsicherungs-Domain-Konfiguration hat keine Auswirkungen auf derzeit laufende Dienste.
Anmerkung
Ausfallsicherungs-Domains werden für den Betrieb nicht benötigt.
Standardmäßig sind Ausfallsicherungs-Domains uneingeschränkt und ungeordnet.
In einem Cluster mit mehreren Mitgliedern kann Ihnen der Einsatz einer beschränkten Ausfallsicherungs-Domain die Arbeit erleichtern. Denn um einen Cluster zum Ausführen eines Cluster-Dienstes (wie z.B.
httpd
) einzurichten, müssen Sie auf allen Cluster-Mitgliedern, die diesen Cluster-Dienst ausführen sollen, eine identische Konfiguration einrichten. Anstatt den gesamten Cluster zur Ausführung dieses Cluster-Dienstes einzurichten, müssen Sie somit nur die Mitglieder der beschränkten Ausfallsicherungs-Domain, die Sie mit diesem Cluster-Dienst verknüpfen möchten, entsprechend einrichten.
Anmerkung
Um ein bevorzugtes Mitglied zu konfigurieren, können Sie eine uneingeschränkte Ausfallsicherungs-Domain einrichten, die nur aus einem Cluster-Mitglied besteht. Dadurch läuft der Cluster-Dienst zwar hauptsächlich auf diesem einen Cluster-Mitglied (dem bevorzugten Mitglied), doch erlaubt es dem Cluster-Dienst gleichzeitig, im Falle eines Ausfalls auf einen beliebigen anderen Knoten zu wechseln.
Gehen Sie folgendermaßen vor, um eine Ausfallsicherungs-Domain zu konfigurieren:
- Öffnen Sie
/etc/cluster/cluster.conf
auf einem beliebigen Knoten im Cluster. - Fügen Sie das folgende Gerüst innerhalb des
rm
Elements für jede zu verwendende Ausfallsicherungs-Domain hinzu:<failoverdomains> <failoverdomain name="" nofailback="" ordered="" restricted=""> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> </failoverdomain> </failoverdomains>
Anmerkung
Die Anzahl derfailoverdomainnode
Parameter hängt von der Anzahl der Knoten in der Ausfallsicherungs-Domain ab. Das oben gezeigte Gerüst für denfailoverdomain
Abschnitt enthält dreifailoverdomainnode
Elemente (ohne spezifizierte Knotennamen), was bedeutet, dass es drei Knoten in der Ausfallsicherungs-Domain gibt. - Geben Sie im
failoverdomain
Abschnitt die Werte für die Elemente und Parameter an. Beschreibungen der Elemente und Parameter finden Sie im failoverdomain Abschnitt des kommentierten Cluster-Schemas. Das kommentierte Cluster-Schema ist in jedem Cluster-Knoten verfügbar unter/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(z.B./usr/share/doc/cman-3.0.12/cluster_conf.html
). Ein Beispiel für einenfailoverdomains
Abschnitt finden Sie in Beispiel 7.8, »Eine Ausfallsicherungs-Domain zucluster.conf
hinzugefügt«. - Aktualisieren Sie den
config_version
Parameter, indem Sie dessen Wert erhöhen (ändern Sie ihn z.B. vonconfig_version="2"
aufconfig_version="3"
). - Speichern Sie die
/etc/cluster/cluster.conf
ab. - (Optional) Überprüfen Sie die Datei anhand des Cluster-Schemas (
cluster.rng
), indem Sie denccs_config_validate
Befehl ausführen. Zum Beispiel:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Führen Sie den
cman_tool version -r
Befehl durch, um die Konfiguration an die übrigen Cluster-Knoten weiterzugeben. - Fahren Sie mit Abschnitt 7.5, »Konfiguration von Hochverfügbarkeitsdiensten« fort.
Beispiel 7.8, »Eine Ausfallsicherungs-Domain zu
cluster.conf
hinzugefügt« zeigt ein Beispiel für eine Konfiguration mit einer geordneten, uneingeschränkten Ausfallsicherungs-Domain.
Beispiel 7.8. Eine Ausfallsicherungs-Domain zu cluster.conf
hinzugefügt
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> </rm> </cluster>
Der
failoverdomains
Abschnitt enthält einen failoverdomain
Abschnitt für jede Ausfallsicherungs-Domain im Cluster. Dieses Beispiel hat eine Ausfallsicherungs-Domain. In der failoverdomain
Zeile ist der Name (name
) als example_pri
spezifiziert. Zusätzlich wird kein Failback (failback="0"
), eine geordnete Ausfallsicherung (ordered="1"
) und die Ausfallsicherungs-Domain als uneingeschränkt (restricted="0"
) spezifiziert.