Kurzanleitung zu Installation und Einrichtung #
SUSE Linux Enterprise High Availability Extension 15 SP3
Dieses Dokument führt Sie durch die Einrichtung eines sehr einfachen Clusters mit zwei Knoten. Dabei werden Bootstrap-Skripte verwendet, die im Paket ha-cluster-bootstrap
bereitgestellt werden. Bei diesem Vorgang müssen Sie unter anderem eine virtuelle IP-Adresse als Cluster-Ressource konfigurieren und SBD im gemeinsam genutzten Speicher als Knoten-Fencing-Mechanismus (Abriegelung) verwenden.
1 Einsatzszenario #
Mit den in diesem Dokument beschriebenen Verfahren erhalten Sie eine Minimaleinrichtung eines Clusters mit zwei Knoten, die folgende Eigenschaften aufweist:
Zwei Knoten:
alice
(IP:192.168.1.1
) undbob
(IP:192.168.1.2
), die über das Netzwerk miteinander verbunden sindDie virtuelle IP-Adresse (
192.168.2.1
) nach dem Floating-IP-Prinzip, über die Clients eine Verbindung mit dem Service herstellen können, und zwar unabhängig davon, auf welchem physischen Knoten er ausgeführt wirdEin gemeinsam genutztes Speichergerät für den Einsatz als SBD-Fencing-Mechanismus Dadurch lassen sich Szenarien mit Systemspaltungen vermeiden.
Failover der Ressourcen von einem Knoten zum anderen, wenn der aktive Host ausfällt (Aktiv/Passiv-Einrichtung)
Nach dem Setup des Clusters mit den Bootstrap-Skripten überwachen wir den Cluster mit dem grafischen Hawk2. Dabei handelt es sich um eines der Tools zur Clusterverwaltung, die in der SUSE® Linux Enterprise High Availability Extension enthalten sind. Die ordnungsgemäße Funktionsweise des Ressourcen-Failovers lässt sich ganz einfach testen, indem einer der Knoten in den Standby-Modus versetzt und geprüft wird, ob die virtuelle IP-Adresse zum zweiten Knoten migriert wird.
Sie können den aus zwei Knoten bestehenden Cluster zu Testzwecken oder als anfängliche Cluster-Minimalkonfiguration verwenden, die später erweitert werden kann. Bevor Sie den Cluster in einer Produktionsumgebung einsetzen, müssen Sie ihn Ihren Anforderungen entsprechend ändern.
2 Systemanforderungen #
In diesem Abschnitt erhalten Sie Informationen über die wichtigsten Systemanforderungen für das in Abschnitt 1 beschriebene Szenario. Zur Anpassung des Clusters für die Verwendung in einer Produktionsumgebung beachten Sie die vollständige Liste im Chapter 2, System requirements and recommendations.
2.1 Hardware #
- Server
Zwei Server mit der Software, die in Abschnitt 2.2, „Software-Anforderungen“ angegeben ist.
Bei den Servern kann es sich um Bare Metal-Server oder um virtuelle Rechner handeln. Sie müssen nicht unbedingt mit identischer Hardware (Arbeitsspeicher, Festplattenspeicher usw.) ausgestattet sein, die gleiche Architektur wird jedoch vorausgesetzt. Plattformübergreifende Cluster werden nicht unterstützt.
- Kommunikationskanäle
Mindestens zwei TCP/IP-Kommunikationsmedien pro Cluster-Knoten. Die Netzwerkausstattung muss die Kommunikationswege unterstützen, die Sie für die Cluster-Kommunikation verwenden möchten: Multicast oder Unicast. Die Kommunikationsmedien sollten eine Datenübertragungsrate von mindestens 100 MBit/s unterstützen. Für eine unterstützte Cluster-Einrichtung sind mindestens zwei redundante Kommunikationspfade erforderlich. Dies lässt sich durch folgende Methoden erreichen:
Netzwerkgerätekopplung (bevorzugt)
Über einen zweiten Kommunikationskanal in Corosync
- Knoten-Fencing/STONITH
Um das Szenario einer „Systemspaltung“ zu verhindern, benötigen Cluster einen Fencing-Mechanismus für Knoten. Wenn eine Systemspaltung vorliegt, werden Cluster-Knoten in zwei oder mehr Gruppen geteilt, die (aufgrund eines Hardware- bzw. Softwarefehlers oder einer unterbrochenen Netzwerkverbindung) keine Kenntnis voneinander haben. Ein Fencing-Mechanismus isoliert den fraglichen Knoten (in der Regel durch das Zurücksetzen oder Ausschalten des Knotens). Dies wird auch als STONITH („Shoot the other node in the head“, Englisch für „Schieß dem anderen Knoten in den Kopf“) bezeichnet. Als Fencing-Mechanismus für Knoten kann entweder ein physisches Gerät (ein Netzschalter) oder ein Mechanismus wie SBD (STONITH nach Festplatte) in Kombination mit einem Watchdog verwendet werden. Für SBD ist ein gemeinsam genutzter Speicher erforderlich.
2.2 Software-Anforderungen #
Alle Knoten, die Teil des Clusters sind, müssen mindestens über folgende Module und Erweiterungen verfügen:
Basesystem Module 15 SP3
Server Applications Module 15 SP3
SUSE Linux Enterprise High Availability Extension 15 SP3
2.3 Sonstige Anforderungen und Empfehlungen #
- Zeitsynchronisierung
Cluster-Knoten müssen mit einem NTP-Server außerhalb des Clusters synchronisiert werden. Ab SUSE Linux Enterprise High Availability Extension 15 ist chrony Standardimplementation von NTP. Sie finden weitere Informationen hierzu im Administrationshandbuch für SUSE Linux Enterprise Server 15 SP3.
Wenn die Knoten nicht synchronisiert werden, funktioniert der Cluster möglicherweise nicht ordnungsgemäß. Darüber hinaus wird die Analyse von Protokolldateien und Cluster-Berichten erheblich erschwert, wenn keine Synchronisierung erfolgt. Wenn Sie die Bootstrap-Skripte verwenden, werden Sie gewarnt, falls NTP noch nicht konfiguriert wurde.
- Hostname und IP-Adresse
Verwenden Sie statische IP-Adressen.
Listen Sie alle Cluster-Knoten in der Datei
/etc/hosts
mit ihrem vollständig qualifizierten Hostnamen und der Kurzform des Hostnamens auf. Es ist sehr wichtig, dass sich die Cluster-Mitglieder untereinander anhand der Namen finden können. Wenn die Namen nicht verfügbar sind, tritt ein Fehler bei der internen Cluster-Kommunikation auf.
- SSH
Alle Cluster-Knoten müssen in der Lage sein, über SSH aufeinander zuzugreifen. Werkzeuge wie
crm report
(zur Fehlerbehebung) und von Hawk2 erfordern einen passwortfreien SSH-Zugriff zwischen den Knoten, da sie andernfalls nur Daten vom aktuellen Knoten erfassen können.Wenn Sie die Bootstrap-Skripte für die Einrichtung des Clusters verwenden, werden die SSH-Schlüssel automatisch erstellt und kopiert.
3 Überblick über die Bootstrap-Skripte #
Alle Kommandos aus dem Paket ha-cluster-bootstrap führen Bootstrap-Skripte aus, für die nur wenig Zeit und kaum manuelle Eingriffe benötigt werden.
Mit
ha-cluster-init
können die grundlegenden Parameter definiert werden, die für eine Cluster-Kommunikation erforderlich sind. Sie erhalten dadurch einen aktiven Cluster mit einem Knoten.Mit
ha-cluster-join
können Sie Ihrem Cluster weitere Knoten hinzufügen.Mit
ha-cluster-remove
können Sie Knoten aus Ihrem Cluster entfernen.
Alle Bootstrap-Skripte protokollieren die zugehörigen Daten in der Datei /var/log/ha-cluster-bootstrap.log
. In dieser Datei finden Sie alle Details des Bootstrap-Prozesses. Sämtliche Optionen, die während des Bootstrap-Prozesses festgelegt wurden, können später mit dem YaST-Cluster-Modul geändert werden. Weitere Informationen finden Sie im Chapter 4, Using the YaST cluster module.
Jedem Skript ist eine man-Seite zugeordnet, auf der Sie die verschiedenen Funktionen, die Optionen des Skripts und einen Überblick über die Dateien finden, die vom Skript erstellt und geändert werden können.
Das Bootstrap-Skript ha-cluster-init
prüft und konfiguriert die folgenden Komponenten:
- NTP
Wenn NTP nicht für das Starten zur Boot-Zeit konfiguriert wurde, wird eine Nachricht angezeigt. Ab SUSE Linux Enterprise High Availability Extension 15 ist chrony Standardimplementation von NTP.
- SSH
Es erstellt SSH-Schlüssel für die passwortfreie Anmeldung zwischen Cluster-Knoten.
- Csync2
Es konfiguriert Csync2 für die Replikation der Konfigurationsdateien auf allen Knoten in einem Cluster.
- Corosync
Es konfiguriert das Cluster-Kommunikationssystem.
- SBD/Watchdog
Es prüft, ob ein Watchdog vorhanden ist, und fragt Sie, ob SBD als Fencing-Mechanismus für Knoten konfiguriert werden soll.
- Virtual Floating IP
Sie werden gefragt, ob eine virtuelle IP-Adresse für die Cluster-Verwaltung mit Hawk2 konfiguriert werden soll.
- Firewall
Es öffnet die Ports in der Firewall, die für die Cluster-Kommunikation benötigt werden.
- Clustername
Es definiert einen Namen für den Cluster. Standardmäßig lautet dieser
hacluster
. Dies ist optional und für die meisten GeoCluster sinnvoll. In der Regel gibt der Cluster-Name den Standort an, was das Auffinden einer Site in einem GeoCluster erleichtert.- QDevice/QNetd
Diese Einrichtung wird hier nicht behandelt. Wenn Sie einen QNetd-Server verwenden möchten, können Sie ihn mit dem Bootstrap-Skript einrichten, wie in Chapter 14, QDevice and QNetd beschrieben.
4 Installieren der SUSE Linux Enterprise High Availability Extension #
Die Pakete zum Konfigurieren und Verwalten eines Clusters mit der High Availability Extension sind im Hochverfügbarkeits
installationsschema (mit dem Namen sles_ha
in der Befehlszeile) enthalten. Damit dieses Schema verfügbar ist, müssen Sie SUSE Linux Enterprise High Availability Extension als Erweiterung von SUSE Linux Enterprise Server installieren.
Informationen zur Installation von Erweiterungen finden Sie im Bereitstellungshandbuchfür SUSE Linux Enterprise Server 15 SP3.
Hochverfügbarkeits
schemas #Falls das Schema noch nicht installiert wurde, gehen Sie wie folgt vor:
Installieren Sie es über die Befehlszeile mit Zypper:
root #
zypper
install -t pattern ha_slesInstallieren Sie das Schema „High Availability“ auf allen Rechnern, die Teil Ihres Clusters sein sollen.
Anmerkung: Installation der Softwarepakete bei allen ParteienFür eine automatisierte Installation von SUSE Linux Enterprise Server 15 SP3 und SUSE Linux Enterprise High Availability Extension 15 SP3 müssen Sie zum Klonen von bestehenden Knoten AutoYaST verwenden. Weitere Informationen finden Sie im Section 3.2, “Mass installation and deployment with AutoYaST”.
Registrieren Sie die Rechner beim SUSE Customer Center. Weitere Informationen finden Sie im Upgrade-Handbuch für SUSE Linux Enterprise Server 15 SP3.
5 Verwendung von SBD als Fencing-Mechanismus #
Wenn Sie über gemeinsam genutzten Speicher wie ein SAN (Storage Area Network) verfügen, können Sie diesen verwenden, um Szenarien mit Systemspaltungen zu vermeiden. Konfigurieren Sie dazu SBD als Knoten-Fencing-Mechanismus. SBD verwendet eine Watchdog-Unterstützung und den STONITH-Ressourcenagenten external/sbd
.
5.1 Anforderungen für SBD #
Sie können während der Einrichtung des ersten Knotens mit ha-cluster-init
entscheiden, ob Sie SBD verwenden möchten. Falls ja, müssen Sie den Pfad zum gemeinsam genutzten Speichergerät eingeben. ha-cluster-init
erstellt standardmäßig automatisch eine kleine Partition auf dem Gerät, die für die Verwendung durch SBD vorgesehen ist.
Wenn Sie SBD verwenden möchten, müssen folgende Anforderungen erfüllt sein:
Der Pfad zum gemeinsam genutzten Speichergerät muss auf allen Knoten im Cluster persistent und konsistent sein. Verwenden Sie feste Gerätenamen wie
/dev/disk/by-id/dm-uuid-part1-mpath-abcedf12345
.Das SBD-Gerät darf hostbasiertes RAID oder LVM2 nicht verwenden und sich nicht auf einer DRBD-Instanz* befinden.
Sie finden Details zur Einrichtung des gemeinsam genutzten Speichers im Storage Administration Guide (Administrationshandbuch zum Speicher) für SUSE Linux Enterprise Server 15 SP3.
5.2 Aktivieren des softdog-Watchdog für SBD #
In SUSE Linux Enterprise Server ist die Watchdog-Unterstützung im Kernel standardmäßig aktiviert: Die Auslieferung erfolgt mit mehreren Kernel-Modulen, die hardwarespezifische Watchdog-Treiber bereitstellen. In der High Availability Extension wird der SBD-Daemon als die Softwarekomponente verwendet, die Daten in den Watchdog „einspeist“.
Im folgenden Verfahren wird der softdog
-Watchdog verwendet.
Der softdog-Treiber geht davon aus, dass noch mindestens eine CPU ausgeführt wird. Wenn alle CPUs ausgefallen sind, kann der im softdog-Treiber enthaltene Code, der das System neu starten soll, nicht ausgeführt werden. Ein Hardware-Watchdog arbeitet hingegen auch dann, wenn alle CPUs ausgefallen sind.
Bevor Sie den Cluster in einer Produktionsumgebung verwenden, wird dringend empfohlen, das softdog
-Modul durch das am besten zu Ihrer Hardware passende Hardwaremodul zu ersetzen.
Falls für Ihre Hardware jedoch kein passender Watchdog verfügbar ist, kann das softdog
-Modul als Kernel-Watchdog-Modul verwendet werden.
Erstellen Sie mithilfe der Beschreibung im Abschnitt 5.1, „Anforderungen für SBD“, einen persistenten, gemeinsam genutzten Speicher.
Aktivieren Sie den softdog-Watchdog:
root #
echo
softdog > /etc/modules-load.d/watchdog.confroot #
systemctl
restart systemd-modules-loadTesten Sie, ob das softdog-Modul richtig geladen wurde:
root #
lsmod
| grep dog softdog 16384 1
Wir empfehlen dringend, den SBD-Fencing-Mechanismus auf ordnungsgemäße Funktion zu prüfen, um ein Szenario einer Spaltung zu vermeiden. Ein derartiger Test kann durch die Blockierung der Corosync-Cluster-Kommunikation durchgeführt werden.
6 Einrichtung des ersten Knotens #
Richten Sie den ersten Knoten mit dem Skript ha-cluster-init
ein. Dies dauert nicht lange und erfordert nur wenige manuelle Eingriffe.
alice
) mit ha-cluster-init
einrichten #Melden Sie sich als
root
an dem physischen oder virtuellen Rechner an, der als Cluster-Knoten verwendet werden soll.Starten Sie das Bootstrap-Skript, indem Sie Folgendes ausführen:
root #
ha-cluster-init
--name CLUSTERNAMEErsetzen Sie den Platzhalter CLUSTERNAME durch einen aussagekräftigen Namen, wie den geografischen Standort Ihres Clusters (z. B.
amsterdam
). Dies ist besonders hilfreich, wenn daraus später ein GeoCluster erstellt werden soll, da eine Site so leicht identifizierbar ist.Falls Sie für Ihre Cluster-Kommunikation anstelle von Multicast (Standard) Unicast benötigen, verwenden Sie hierzu die Option
-u
. Nach der Installation finden Sie in der Datei/etc/corosync/corosync.conf
den Wertudpu
. Wennha-cluster-init
einen Knoten erkennt, der in Amazon Web Services (AWS) ausgeführt wird, verwendet das Skript automatisch Unicast als Standard für die Cluster-Kommunikation.Das Skript führt eine Prüfung im Hinblick auf die NTP-Konfiguration und einen Hardware-Watchdog-Service durch. Es generiert die öffentlichen und privaten SSH-Schlüssel, die für den SSH-Zugriff und die Csync2-Synchronisierung verwendet werden, und startet die entsprechenden Services.
Konfigurieren Sie die Cluster-Kommunikationsschicht (Corosync):
Geben Sie eine Netzwerkadresse ein, an die eine Bindung erfolgen soll. Das Skript schlägt standardmäßig die Netzwerkadresse
eth0
vor. Alternativ dazu können Sie auch eine andere Netzwerkadresse wie beispielsweise die Adressebond0
eingeben.Geben Sie eine Multicast-Adresse ein. Das Skript schlägt eine Zufallsadresse vor, die Sie als Standard verwenden können. Voraussetzung ist natürlich, dass diese Multicast-Adresse von Ihrem jeweiligen Netzwerk unterstützt wird.
Geben Sie einen Multicast-Port ein. Das Skript schlägt
5405
als Standard vor.
Richten Sie SBD als Fencing-Mechanismus für Knoten ein:
Bestätigen Sie mit
y
, dass Sie SBD verwenden möchten.Geben Sie einen persistenten Pfad zu der Partition Ihres Blockgeräts ein, die Sie für SBD verwenden möchten. Weitere Informationen hierzu finden Sie in Abschnitt 5, „Verwendung von SBD als Fencing-Mechanismus“. Der Pfad muss bei allen Knoten im Cluster konsistent sein.
Konfigurieren Sie eine virtuelle IP-Adresse für die Cluster-Verwaltung mit Hawk2. (Mit dieser virtuellen IP-Ressource werden wir später testen, ob der Failover erfolgreich ist.)
Bestätigen Sie mit
y
, dass Sie eine virtuelle IP-Adresse konfigurieren möchten.Geben Sie eine nicht verwendete IP-Adresse ein, die Sie als Verwaltungs-IP für Hawk2 verwenden möchten:
192.168.2.1
Sie können auch eine Verbindung mit der virtuellen IP-Adresse herstellen, statt sich an einem einzelnen Cluster-Knoten mit Hawk2 anzumelden.
Schließlich startet das Skript den Pacemaker-Service, um den Cluster online zu schalten und Hawk2 zu aktivieren. Die URL, die für Hawk2 verwendet werden muss, wird auf dem Bildschirm angezeigt.
Sie verfügen jetzt über einen aktiven Cluster mit einem Knoten. Gehen Sie wie folgt vor, um seinen Status anzuzeigen:
Starten Sie auf einem beliebigen Rechner einen Webbrowser und aktivieren Sie JavaScript und Cookies.
Geben Sie als URL die IP-Adresse oder den Hostnamen eines Cluster-Knotens ein, auf dem der Hawk-Web-Service ausgeführt wird. Sie können alternativ auch die virtuelle IP-Adresse eingeben, die Sie in Schritt 5 unter Prozedur 2, „Ersten Knoten (
alice
) mitha-cluster-init
einrichten“ konfiguriert haben:https://HAWKSERVER:7630/
Anmerkung: Warnmeldung bezüglich des ZertifikatsWenn bei Ihrem ersten Zugriff auf die URL eine Warnmeldung hinsichtlich des Zertifikats angezeigt wird, wird ein eigensigniertes Zertifikat verwendet. Eigensignierte Zertifikate gelten standardmäßig nicht als vertrauenswürdig.
Bitten Sie den Cluster-Operator um die Details des Zertifikats, damit Sie es überprüfen können.
Falls Sie dennoch fortfahren möchten, können Sie im Browser eine Ausnahme hinzufügen und die Warnmeldung auf diese Weise umgehen.
Geben Sie im Anmeldebildschirm von Hawk2 in
und die Daten des Benutzers ein, der während des Bootstrap-Verfahrens erstellt wurde (Benutzerhacluster
, Passwortlinux
).Wichtig: Sicheres PasswortErsetzen Sie das Standardpasswort möglichst schnell durch ein sicheres Passwort:
root #
passwd
haclusterKlicken Sie auf
. Nach der Anmeldung wird auf der Hawk2-Weboberfläche standardmäßig der Status-Bildschirm angezeigt. Dort sehen Sie den aktuellen Cluster-Status auf einen Blick:Abbildung 1: Status des aus einem Knoten bestehenden Clusters in Hawk2 #
7 Hinzufügen des zweiten Knotens #
Sobald der Cluster mit einem Knoten betriebsbereit ist, können Sie mit dem Bootstrap-Skript ha-cluster-join
wie in Prozedur 4 beschrieben den zweiten Knoten hinzufügen. Das Skript benötigt lediglich Zugriff auf einen vorhandenen Cluster-Knoten. Es führt die grundlegende Einrichtung auf dem aktuellen Rechner automatisch durch. Ausführliche Informationen hierzu finden Sie auf der man-Seite ha-cluster-join
.
Die Bootstrap-Skripte kümmern sich um die Änderung der für Cluster mit zwei Knoten spezifischen Konfiguration, wie SBD, Corosync.
bob
) mit ha-cluster-join
hinzufügen #Melden Sie sich als
root
an dem physischen oder virtuellen Rechner an, der dem Cluster beitreten soll.Starten Sie das Bootstrap-Skript, indem Sie Folgendes ausführen:
root #
ha-cluster-join
Wenn NTP nicht für das Starten zur Boot-Zeit konfiguriert wurde, wird eine Nachricht angezeigt. Das Skript führt auch eine Prüfung auf ein Hardware-Watchdog-Gerät durch (was für eine mögliche SBD-Konfiguration entscheidend ist). Sie erhalten eine Warnmeldung, wenn keines vorhanden ist.
Falls Sie den Vorgang dennoch fortsetzen, werden Sie zur Eingabe der IP-Adresse eines vorhandenen Knotens aufgefordert. Geben Sie die IP-Adresse des ersten Knotens ein (
alice
,192.168.1.1
).Falls Sie noch keinen passwortfreien SSH-Zugriff zwischen beiden Rechnern konfiguriert haben, werden Sie zur Eingabe des
root
-Passworts des bestehenden Knotens aufgefordert.Nach der Anmeldung an dem angegebenen Knoten kopiert das Skript die Corosync-Konfiguration. Anschließend konfiguriert es SSH, Csync2 und schaltet den aktuellen Rechner als neuen Cluster-Knoten online. Außerdem startet es den Service, der für Hawk2 erforderlich ist.
Prüfen Sie den Cluster-Status in Hawk2. Unter Abbildung 2, „Status des aus zwei Knoten bestehenden Clusters“).
› sollten zwei Knoten mit einem grün dargestellten Status angezeigt werden (siehe8 Testen des Clusters #
Abschnitt 8.1, „Testen des Ressourcen-Failovers“ ist ein einfacher Test zur Prüfung, ob der Cluster die virtuelle IP-Adresse zu dem anderen Knoten verschiebt, wenn der Knoten, der die Ressource zurzeit ausführt, auf Standby
gesetzt wird.
Ein aussagekräftiger Test umfasst jedoch gezielte Anwendungsfälle und Szenarien. Beispielsweise sollte auch Ihr Fencing-Mechanismus getestet werden, damit Situationen einer Systemspaltung vermieden werden. Falls Sie Ihren Fencing-Mechanismus nicht ordnungsgemäß eingerichtet haben, funktioniert der Cluster nicht richtig.
Bevor Sie den Cluster in einer Produktionsumgebung verwenden, müssen Sie ihn sorgfältig entsprechend Ihrer Anwendungsfälle testen. Sie können dazu auch das Skript ha-cluster-preflight-check
verwenden.
8.1 Testen des Ressourcen-Failovers #
Ein schneller Test ist das folgende Verfahren zur Prüfung auf Ressourcen-Failover:
Öffnen Sie ein Terminal und setzen Sie ein Ping-Signal für Ihre virtuelle IP-Adresse
192.168.2.1
ab:root #
ping
192.168.2.1Melden Sie sich wie in Prozedur 3, „Anmelden an der Hawk2-Weboberfläche“ beschrieben an Ihrem Cluster an.
Prüfen Sie in Hawk2 unter
› , auf welchem Knoten die virtuelle IP-Adresse (Ressourceadmin_addr
) ausgeführt wird. Im vorliegenden Fall wird vorausgesetzt, dass die Ressource aufalice
ausgeführt wird.Versetzen Sie
alice
in den -Modus (siehe Abbildung 3, „Knotenalice
im Standby-Modus“).Abbildung 3: Knotenalice
im Standby-Modus #Klicken Sie auf
› . Die Ressourceadmin_addr
wurde zubob
migriert.
Während der Migration sollte ein ununterbrochener Fluss an Ping-Signalen an die virtuelle IP-Adresse zu beobachten sein. Dies zeigt, dass die Cluster-Einrichtung und die Floating-IP ordnungsgemäß funktionieren. Brechen Sie das ping
-Kommando mit Strg– C ab.
8.2 Testen mit dem Kommando „ha-cluster-preflight-check“ #
Das Kommando ha-cluster-preflight-check
führt standardisierte Tests für einen Cluster aus. Es löst Cluster-Fehler aus und überprüft die Konfiguration auf Fehler. Es empfiehlt sich, dieses Kommando vor Verwendung des Clusters in der Produktion auszuführen, um sicherzustellen, dass alles wie erwartet funktioniert.
Das Kommando unterstützt folgende Prüfungen:
Umgebungsprüfung
-e
/--env-check
. Dieser Test prüft Folgendes:Lassen sich Hostnamen auflösen?
Wurde der Zeitservice aktiviert und gestartet?
Wurde für den aktuellen Knoten ein Watchdog konfiguriert?
Wurde der
firewalld
-Service gestartet und sind auf Cluster bezogene Ports geöffnet?
Cluster-Statusprüfung
-c
/--cluster-check
. Prüft verschiedene Zustände und Services des Clusters. Dieser Test prüft Folgendes:Sind Cluster-Services (Pacemaker/Corosync) aktiviert und aktiv?
Ist STONITH aktiviert? Es wird auch geprüft, ob auf STONITH bezogene Ressourcen konfiguriert und gestartet wurden. Wurde der SBD-Service gestartet, falls Sie SBD konfiguriert haben?
Hat der Cluster ein Quorum? Zeigt aktuelle DC-Knoten an sowie Knoten, die online, offline und nicht bereinigt sind.
Gibt es gestartete, gestoppte oder fehlerhafte Ressourcen?
Systemspaltungsprüfung
--split-brain-iptables
. Simuliert ein Systemspaltungsszenario durch Blockieren des Corosync-Ports. Prüft, ob ein Knoten umgrenzt werden kann wie erwartet.Deaktiviert die Daemons für SBD, Corosync und Pacemaker
-kill-sbd
/-kill-corosync
/-kill-pacemakerd
. Nach einem derartigen Test finden Sie einen Bericht unter/var/lib/ha-cluster-preflight-check
. Der Bericht umfasst eine Beschreibung des Testfalls und die Protokollierung der Aktion und erklärt mögliche Ergebnisse.Prüfung auf Knotenumgrenzung
--fence-node
. Umgrenzt den spezifischen Knoten, der von der Kommandozeile aus weitergeleitet wurde.
Führen Sie beispielsweise für einen Umgebungstest das folgende Kommando aus:
root #
crm_mon -1
Stack: corosync Current DC: alice (version ...) - partition with quorum Last updated: Fri Mar 03 14:40:21 2020 Last change: Fri Mar 03 14:35:07 2020 by root via cibadmin on alice 2 nodes configured 1 resource configured Online: [ alice bob ] Active resources: stonith-sbd (stonith:external/sbd): Started aliceroot #
ha-cluster-preflight-check
-e [2020/03/20 14:40:45]INFO: Checking hostname resolvable [Pass] [2020/03/20 14:40:45]INFO: Checking time service [Fail] INFO: chronyd.service is available WARNING: chronyd.service is disabled WARNING: chronyd.service is not active [2020/03/20 14:40:45]INFO: Checking watchdog [Pass] [2020/03/20 14:40:45]INFO: Checking firewall [Fail] INFO: firewalld.service is available WARNING: firewalld.service is not active
Sie finden das Ergebnis unter /var/log/ha-cluster-preflight-check.log
.
9 Weitere Informationen #
Mehr Dokumentation zu diesem Produkt ist unter https://documentation.suse.com/sle-ha/ verfügbar. Weitere Konfigurations- und Verwaltungsaufgaben finden Sie im umfassenden Verwaltungshandbuch.
10 Rechtliche Hinweise #
Copyright © 2006– 2024 SUSE LLC und Mitwirkende. Alle Rechte vorbehalten.
Es wird die Genehmigung erteilt, dieses Dokument unter den Bedingungen der GNU Free Documentation License, Version 1.2 oder (optional) Version 1.3 zu vervielfältigen, zu verbreiten und/oder zu verändern; die unveränderlichen Abschnitte hierbei sind der Urheberrechtshinweis und die Lizenzbedingungen. Eine Kopie dieser Lizenz (Version 1.2) finden Sie im Abschnitt „GNU Free Documentation License“.
Die SUSE-Marken finden Sie unter http://www.suse.com/company/legal/. Alle anderen Marken von Drittanbietern sind Besitz ihrer jeweiligen Eigentümer. Markensymbole (®, ™ usw.) kennzeichnen Marken von SUSE und der Tochtergesellschaften. Sternchen (*) kennzeichnen Marken von Drittanbietern.
Alle Informationen in diesem Buch wurden mit größter Sorgfalt zusammengestellt. Doch auch dadurch kann hundertprozentige Richtigkeit nicht gewährleistet werden. Weder SUSE LLC noch ihre Tochtergesellschaften noch die Autoren noch die Übersetzer können für mögliche Fehler und deren Folgen haftbar gemacht werden.