Cluster-Konfiguration in RELIANOID Community-Edition v7

Kategorien anzeigen

Cluster-Konfiguration in RELIANOID Community-Edition v7

6 min gelesen

Wichtiger Hinweis: noid-cluster-notify findet sich auch als zeninotify. Siehe: https://www.relianoid.com/resources/knowledge-base/enterprise-edition-v8-administration-guide/whats-new-in-relianoid-ee-v8/

Was ist RELIANOID Load Balancer-Cluster-Community-Edition? #

Der Hochverfügbarkeitsservice von RELIANOID Load Balancer Community Edition ist ein zustandsloser Cluster, der automatisch in der Standardversion der Community Edition enthalten ist. Dieser Dienst repliziert Konfigurationsdateien geschickt über Knoten hinweg und verwendet das VRRP-Protokoll zur Überwachung der Knotenintegrität – und das alles in einem unkomplizierten Design. Für diejenigen, die einen fortgeschritteneren, funktionsreicheren zustandsbehafteten Clusterdienst suchen, ist der Enterprise Edition ist verfügbar.

Die folgenden Schritte beschreiben den Installations- und Konfigurationsprozess für die RELIANOID Cluster, wenn hohe Verfügbarkeit für Ihren Load Balancer unabdingbar ist.

Konzepte #

Clusterknoten #

Ein Clusterknoten ist ein einzelnes Rechengerät innerhalb eines Clusters. Ein Cluster ist eine Gruppe von miteinander verbundenen Computern oder Servern, die zusammenarbeiten, um Aufgaben wie ein einziges System auszuführen. Jeder Knoten in einem Cluster verfügt typischerweise über eigene Rechenleistung, Arbeitsspeicher und Speicherplatz. Die Knoten kommunizieren über ein Netzwerk miteinander, um Ressourcen gemeinsam zu nutzen und ihre Aktivitäten zu koordinieren. Die Clusterknoten bestehen aus Instanzen von Load Balancern, die für den Betrieb innerhalb eines Clusterdienstes konfiguriert sind.

Schwebende Schnittstellen #

Eine Floating-IP -Adresse ist eine IP-Adresse, die innerhalb eines Clusters schnell von einem Knoten auf einen anderen übertragen werden kann. Dies wird häufig in Hochverfügbarkeitsumgebungen eingesetzt, in denen mehrere Server oder Knoten identische Dienste ausführen. Fällt einer aus, wird die IP-Adresse automatisch an einen anderen Knoten übertragen, sodass der Dienst unterbrechungsfrei weiterläuft.

Herzschlag #

Der Begriff „Heartbeat“ bezeichnet einen Mechanismus, mit dem Knoten innerhalb eines Clusters ihren Status und ihre Funktionsfähigkeit untereinander kommunizieren. Dieses Heartbeat-Signal zeigt an, dass ein Knoten betriebsbereit ist und ordnungsgemäß funktioniert. Das Fehlen eines Heartbeats von einem Knoten kann auf einen Fehler oder ein Problem mit diesem Knoten hinweisen.

Synchronisation #

Die Konfigurationssynchronisierung bezeichnet den Prozess, der sicherstellt, dass die Konfigurationseinstellungen auf allen Knoten im Cluster konsistent und aktuell sind. Dies ist unerlässlich für die Integrität und das ordnungsgemäße Funktionieren des Clusters, insbesondere wenn mehrere Knoten einen Dienst oder eine Anwendung bereitstellen.

Failover #

Failover bezeichnet den Prozess der automatischen Umleitung von Arbeitslasten, Diensten oder Ressourcen von einem ausgefallenen oder nicht verfügbaren Knoten auf einen fehlerfreien und verfügbaren Knoten innerhalb des Clusters.

Cluster-Setup #

Voraussetzungen: #

Installieren Sie zunächst zwei Instanzen von RELIANOID CE, und stellen Sie sicher, dass auf beiden die gleiche Version ausgeführt wird.

Überprüfen Sie anschließend, ob der NTP-Dienst auf beiden Knoten korrekt konfiguriert ist und ob diese von den Load Balancern aus erreichbar sind. Die Synchronisierung der Systemzeit ist für die ordnungsgemäße Funktion des VRRP-Protokolls unerlässlich.

Um die Synchronisierung zu automatisieren, ist es außerdem unerlässlich, die SSH-Anmeldung ohne Passwörter zwischen den Load Balancern zu konfigurieren. Richten Sie beispielsweise Fernzugriffsschlüssel mithilfe des Befehls `ssh-copy-id` ein.

root@noid-ce-01:~# ssh-keygen -t rsa # ohne Passphrase, drücken Sie einfach die Eingabetaste root@noid-ce-01:~# ssh-copy-id root@noid-ce-02

Führen Sie dann im sekundären Knoten die folgenden Schritte aus:

root@noid-ce-02:~# ssh-keygen -t rsa # ohne Passphrase, drücken Sie einfach die Eingabetaste root@noid-ce-02:~# ssh-copy-id root@noid-ce-01

Konfiguration #

Um die Cluster-Konfigurationsdatei einzurichten, kopieren Sie zuerst die Vorlage /usr/local/relianoid/app/ucarp/etc/cluster.conf.example nach /usr/local/relianoid/app/ucarp/etc/cluster.conf.

cp /usr/local/relianoid/app/ucarp/etc/cluster.conf.beispiel /usr/local/relianoid/app/ucarp/etc/cluster.conf

Bearbeiten Sie anschließend die Konfigurationsdatei unter /usr/local/relianoid/app/ucarp/etc/cluster.conf . Die wichtigsten Parameter sind nachfolgend aufgeführt:

#für den Cluster verwendete Schnittstelle, in der local_ip und remote_ip konfiguriert sind $interface="eth0"; #zu überwachende lokale IP, z. B. 192.168.0.101 $local_ip="192.168.101.242"; #zu überwachende Remote-IP, z. B. 192.168.0.102 $remote_ip="192.168.101.243"; #für die VRRP-Protokollkommunikation verwendetes Kennwort $password="secret"; #eindeutiger Wert für VRRP-Cluster im Netzwerk $cluster_id="1"; #im Cluster verwendete virtuelle IP, diese IP wird immer im Masterknoten ausgeführt $cluster_ip="192.168.101.244"; # Wenn die für den Cluster verwendete Netzwerkkarte nicht eth0 ist, ändern Sie bitte die Ausschlusskonfigurationsdatei in der folgenden Zeile
######## $exclude="--exclude if_eth0_conf";

Beachten Sie, dass nur virtuelle Schnittstellen repliziert werden . Wenn Ihre Load-Balancing-Dienste mehrere Netzwerkkarten (NICs) oder VLANs umfassen, müssen diese in der Cluster-Konfigurationsdatei ausgeschlossen werden. Wenn beispielsweise eth0 für Clusterzwecke und vlan100 ( eth0.100 ) für Load Balancing vorgesehen ist, sollte die Konfiguration wie folgt angepasst werden:

$exclude="--ausschließen if_eth0_conf --ausschließen if_eth0.100_conf";

Bitte beachten Sie, dass die RELIANOID Der CE-Cluster wird vom Root-Benutzer verwaltet und verwendet rsync ssh um die Konfiguration vom Masterknoten auf das Backup zu replizieren. Um dies zu ermöglichen, ist es wichtig, einen passwortlosen SSH-Zugriff zwischen den Knoten einzurichten.

Stellen Sie sicher, dass die angegebenen $cluster_ip ist auf einem RELIANOID virtueller Load Balancer, der der zukünftige Master sein wird. Sobald der Dienst auf diesem Knoten initiiert ist, wird die Konfigurationsdatei für $cluster_ip wird automatisch auf den Backup-Server repliziert.

Starten und Stoppen eines Clusterknotens #

Um den Clusterdienst zu aktivieren, führen Sie diese Schritte aus:

1. Dieser Schritt ist nur notwendig für RELIANOID Community Edition 7.1 oder frühere Versionen: Sie müssen die Variable festlegen $enable_cluster in der Datei /etc/init.d/relianoid-ce-cluster auf den Wert:

$enable_cluster="wahr";

2. Der Dienst relianoid-ce-cluster ist beim Systemstart standardmäßig deaktiviert. Führen Sie den folgenden Befehl aus, um relianoid-ce-cluster für die automatische Aktivierung nach einem Neustart zu aktivieren:

[] root@noid-ce-01:~# systemctl aktiviere relianoid-ce-cluster

Beachten Sie, dass jede Änderung an der Konfigurationsdatei /usr/local/relianoid/app/ucarp/etc/cluster.conf einen Neustart des Cluster-Dienstes erfordert. Starten Sie daher nach Abschluss der Konfigurationsparameter den Cluster auf beiden Knoten mit den folgenden Schritten neu:

[] root@noid-ce-01:~# /etc/init.d/relianoid-ce-cluster stoppen [] root@noid-ce-01:~# /etc/init.d/relianoid-ce-cluster starten

Beim Starten des Clusterdienstes ist zu beachten, dass die Eingabeaufforderung des Load Balancers geändert wird, um den aktuellen Status des Clusters für jeden Dienst anzuzeigen:

Master:

[Master] root@noid-ce-01:~# 

Backup:

[Sicherung] root@noid-ce-02:~# 

Konfiguration aktualisieren #

Nach der Konfiguration des Clusterdienstes werden alle Konfigurationseinstellungen, die sich auf virtuelle Dienste und virtuelle/Floating-IPs beziehen, automatisch auf die Clusterknoten repliziert.

In einem zustandslosen Cluster werden Benutzersitzungen und Verbindungen nicht synchronisiert, weshalb ein zustandsbehafteter Cluster erforderlich ist, der in unserem Enterprise Load Balancer enthalten ist.

Aktualisieren von Clusterknoten #

Upgrade von Cluster-Knoten mit einem RELIANOID Load Balancer beinhaltet die Aktualisierung jedes Knotens im Cluster mit den neuesten RELIANOID Load Balancer-Software oder -Firmware. Es ist ratsam, den Backup-Knoten zu aktualisieren, bevor Sie während des Aktualisierungsprozesses der Clusterknoten mit der Aktualisierung des Master-Knotens fortfahren.

Protokolle und Fehlerbehebung beim Clusterdienst #

1. Zwischen beiden Clusterknoten ist passwortloses SSH Voraussetzung.
2. Auf beiden Clusterknoten muss NTP konfiguriert sein.
3. Das noid-cluster-benachrichtigung Der Dienst wird ausschließlich auf dem Masterknoten ausgeführt. Bestätigen Sie, dass noid-cluster-benachrichtigung läuft, indem Sie den folgenden Befehl ausführen. Auf dem Masterknoten sollten Sie eine Ausgabe ähnlich dieser erhalten:

grep noid-cluster-notify root 01 16912 1 0:03 ? 20:00:00 /usr/bin/perl /usr/local/relianoid/bin/noid-cluster-notify.pl

Auf dem Backup-Knoten sollte beim Ausführen des Befehls keine Ausgabe im Zusammenhang mit noid-cluster-notify erfolgen.

grep noid-cluster-notify [Sicherung] root@noid-ce-02:~#

4. Die Protokolle für die Abonnieren Serviceleistungen werden an die syslog at / var / log / syslog .
5. Protokolle für die noid-cluster-benachrichtigung Replikationsdienst werden übermittelt an /var/log/noid-cluster-notify.log .
6. Der Clusterstatus ist in der Eingabeaufforderung sichtbar und wird nach jeder Befehlsausführung dynamisch aktualisiert. Darüber hinaus wird der Clusterstatus in der Konfigurationsdatei aufgezeichnet: /etc/relianoid-ce-cluster.status . Wenn diese Datei fehlt, wird der Clusterdienst angehalten.
7. Wenn der Clusterknoten hochgestuft wird auf MASTERerfolgt die Ausführung des folgenden Skripts: /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-start .
8. Wenn der Clusterknoten hochgestuft wird auf BACKUPerfolgt die Ausführung des folgenden Skripts: /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-stop .
9. Wenn der Clusterknoten die Ausführung von Ankündigungen erfordert, wird das folgende Skript ausgeführt: /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-advertisement .
10 Wenn es notwendig ist, einen Parameter im Abonnieren Ausführung können Sie Anpassungen innerhalb der Cluster ausführen () Unterprogramm im Skript /etc/init.d/relianoid-ce-cluster .
11 Der Clusterdienst nutzt VRRP Implementierung, die die Zulassung von Multicast-Paketen in den Switches erforderlich macht.

📄 Laden Sie dieses Dokument im PDF-Format herunter #

    EMAIL: *

    Bereitgestellt von BetterDocs