F5 NGINX PLUS

Hohe Verfügbarkeit

NGINX Plus lässt sich in einem Aktiv-Passiv- oder Aktiv-Aktiv-Hochverfügbarkeits-Cluster (HA) konfigurieren, um die Anwendungsverfügbarkeit zu gewährleisten. In einem Aktiv-Passiv-HA-Cluster, der weiter unten beschrieben wird, gibt es zwei NGINX Plus-Server: einen primären Server, der den Datenverkehr aktiv verarbeitet, und einen Backup-Server, der den Zustand des primären Servers überwacht und bei einem Ausfall des aktuellen primären Servers automatisch dessen Aufgaben übernimmt. In einem aktiv-aktiv HA-Cluster wickeln beide Server den Datenverkehr ab. Aktiv-aktiv-aktiv und andere N+1-Konfigurationen werden ebenfalls unterstützt.

Ein Aktiv-Passiv-NGINX-Plus-HA-Cluster nutzt VRRP, um eine virtuelle Floating-IP-Adresse zu verwalten und sicherzustellen, dass die IP-Adresse immer verfügbar ist und es zu keiner Unterbrechung des Datenverkehrs kommt
Ein Aktiv-Passiv-NGINX-Plus-HA-Cluster nutzt VRRP, um eine virtuelle Floating-IP-Adresse zu verwalten und sicherzustellen, dass die IP-Adresse immer verfügbar ist und es zu keiner Unterbrechung des Datenverkehrs kommt

Zusätzlich zum automatischen Failover für die Hochverfügbarkeit in einem Cluster unterstützt NGINX Plus die Konfigurationssynchronisation, sodass die auf einem NGINX Plus-Server in einem Cluster erstellte Konfiguration auf die anderen Server übertragen wird. Statusteilung wird ebenfalls unterstützt, sodass Funktionen, die auf Zustandsinformationen zugreifen – wie Sticky-Learn-Sitzungspersistenz, Ratenbegrenzung und Key-Value-Stores – in einer Cluster-Umgebung ordnungsgemäß funktionieren.

Hochverfügbarkeitsarchitektur bei Webanwendungen

Die Funktionen für den modernen Lastenausgleich und die Überwachung des Anwendungszustands von NGINX Plus bieten Ausfallsicherheit und Skalierbarkeit für Ihre vorgelagerten Anwendungsserver. Die Konfiguration von NGINX Plus in einem HA-Cluster bietet weitere Ausfallsicherheit für Anwendungen und eliminiert einzelne Fehlerpunkte im Anwendungsstapel. Wenn ein NGINX Plus-Server nicht mehr in der Lage ist, den Datenverkehr zu verarbeiten, übernimmt ein anderer Server.

Sie können die Konfiguration auch so erweitern, dass mehrere aktiv-passiv NGINX Plus-Instanzen unterstützt werden, um so ein höheres Maß an Redundanz zu erreichen. Das kann auch hilfreich sein, wenn Sie mehr Durchsatz benötigen, als ein einzelnes Aktiv-Passiv-Paar bieten kann.

So funktioniert die HA-Lösung

Die NGINX Plus Aktiv-Passiv-HA-Lösung basiert auf keepalived, das seinerseits eine Implementierung des Virtual Router Redundancy Protocol (VRRP) verwendet. Nachdem Sie das Paket nginx-ha-keepalived installiert und keepalived konfiguriert haben, wird es als separater Prozess auf jedem NGINX Plus-Server im Cluster ausgeführt und verwaltet eine gemeinsam genutzte virtuelle IP-Adresse. Die virtuelle IP-Adresse ist die IP-Adresse, die nachgelagerten Clients bekannt gegeben wird, zum Beispiel über einen DNS-Eintrag für Ihren Dienst oder Ihre Anwendung.

Basierend auf der Ursprungskonfiguration bestimmt keepalived einen Primärserver und weist ihm die virtuelle IP-Adresse zu. Der Primärserver sendet in regelmäßigen Abständen VRRP-Ankündigungsnachrichten an den Backup-Server, um zu bestätigen, dass sein Zustand in Ordnung ist und überprüft hat, dass sowohl keepalived als auch NGINX Plus ausgeführt werden. Wenn der Backup-Server drei aufeinander folgende Ankündigungen nicht erhält, wird er zum neuen Primärserver und übernimmt die virtuelle IP-Adresse.

Installation und Konfiguration der HA-Lösung

Die Aktivierung von NGINX Plus HA ist sehr einfach. Sie ist im Paket nginx-ha-keepalived implementiert, das Sie aus dem NGINX Plus-Repository installieren. Für Debian- und Ubuntu-Systeme lautet der Befehl beispielsweise:

$ apt-get install nginx-ha-keepalived

Installieren Sie das Paket auf jedem NGINX Plus-Server im HA-Cluster und führen Sie dann das mitgelieferte Skript nginx-ha-setup aus, um die HA-Software zu konfigurieren und auszuführen. Eine vollständige Anleitung finden Sie im NGINX Plus Administratorleitfaden.

HA-Failover findet statt, wenn der primäre NGINX Plus-Server aufgrund eines katastrophalen Zustands, wie z. B. Hardware-Ausfall, Betriebssystemabschaltung oder Terminierung der NGINX Plus-Software, nicht mehr funktioniert. Interne Zustandsprüfungen können bei Bedarf erweitert werden, um weitere Ausfallsituationen zu erkennen.

Synchronisieren der Konfiguration über einen HA-Cluster

Sie können die Konfiguration zwischen den NGINX Plus-Servern in einem Cluster synchronisieren, sodass die Server nicht mehr einzeln verwaltet werden müssen. Dafür müssen Sie nur einfache Änderungen an einem bestimmten „Primärserver“ vornehmen und diese Änderungen dann auf die anderen Server im Cluster übertragen.

Diese Funktion wurde in NGINX Plus R12 eingeführt und ist im nginx-sync-Paket implementiert, das über das NGINX Plus-Repository zur Verfügung steht. Der Befehl für Debian- und Ubuntu-Systeme lautet:

$ apt-get install nginx-sync

Weitere Informationen finden Sie im NGINX Plus Administratorleitfaden.

Statusteilung über ein HA-Cluster

Die NGINX Plus-Server in einem Cluster können Statusinformationen gemeinsam nutzen, wie im Modul „Zone Synchronisation“ (eingeführt in NGIN Plus R15) implementiert. Dadurch können Funktionen, die den Status beibehalten, in einer Cluster-Umgebung ordnungsgemäß ausgeführt werden. Die folgenden NGINX Plus-Funktionen sind clusterfähig:

  • Sticky-Learn-Sitzungspersistenz
  • Ratenbegrenzung
  • Schlüsselwertspeicherung

Weitere Informationen finden Sie im NGINX Plus Administratorleitfaden und in den Referenzdokumenten für das zone_sync-Modul.

HA für NGINX Plus in Cloud-Umgebungen

Die keepalived-basierte HA-Lösung funktioniert nur in lokalen Implementierungen von NGINX Plus. Aber es stehen auch HA-Lösungen für Cloud-Umgebungen bereit:

Weitere Leseempfehlungen

Nächste Schritte