Konfigurieren der Hochverfügbarkeit für NetScaler CPX

Ein System mit unternehmens- und geschäftskritischen Anwendungen muss kontinuierlich verfügbar sein, ohne dass einzelne Ausfallpunkte auftreten. Systeme mit hoher Verfügbarkeit gewährleisten die kontinuierliche Verfügbarkeit von Anwendungen ohne Unterbrechung der für den Benutzer bereitgestellten Dienste. NetScaler CPX unterstützt die Hochverfügbarkeitsbereitstellung von zwei NetScaler-Instanzen, wodurch die Dienste vor ungeplanten Ausfallzeiten geschützt und die Geschäftskontinuität im Falle eines Ausfalls sichergestellt wird. Sobald Sie die Hochverfügbarkeit konfiguriert haben, können Sie auch die NetScaler CPX-Software aktualisieren, ohne die Dienste für die Benutzer zu unterbrechen.

Hinweis: Wenn das interne Benutzerkonto deaktiviert ist, wird die Hochverfügbarkeit für NetScaler CPX-Funktion nicht unterstützt.

Topologie 1: Bereitstellen von NetScaler CPX-Instanzen auf einem einzelnen Docker-Host mit Bridge-Netzwerkmodus

In dieser Topologie werden zwei NetScaler CPX-Knoten auf demselben Docker-Host mit Bridge-Netzwerkmodus erstellt. Beide Knoten befinden sich im selben Brückennetzwerk und die Knoten sind direkt zueinander erreichbar.

Das folgende Diagramm erklärt diese Topologie.

Topologie 1

In diesem Beispiel werden zwei NetScaler CPX-Instanzen, CPX-1 (NSIP: 172.17.0.3) und CPX-2 (NSIP: 172.17.0.4), auf demselben Docker-Host erstellt. Für die Unterstützung der Hochverfügbarkeit müssen Sie Hochverfügbarkeitsknoten auf beiden NetScaler CPX-Instanzen mithilfe des NSIP des anderen Knotens konfigurieren.

Führen Sie die folgenden Schritte aus, um die Hochverfügbarkeitsunterstützung auf NetScaler CPX-Instanzen auf einem einzelnen Docker-Host im Bridge-Modus zu konfigurieren.

  1. Greifen Sie auf den Docker-Host zu und melden Sie sich an der SSH-Eingabeaufforderung der NetScaler CPX-Instanz an. Weitere Informationen finden Sie unter Konfigurieren einer NetScaler CPX-Instanz mithilfe der Befehlszeilenschnittstelle.

  2. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-1-Instanz.

    cli_script.sh ‘add ha node 1 172.17.0.4 [-inc enabled]’
    
  3. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-2-Instanz.

    cli_script.sh ‘add ha node 1 172.17.0.3 [-inc enabled]’
    

Hinweis: Wenn ein NetScaler CPX-Knoten im Bridge-Netzwerkmodus neu gestartet wird, kann sich die einem NetScaler CPX zugewiesene IP-Adresse je nach Docker-Version auf dem Host ändern. Wenn sich das NSIP eines der Knoten nach dem Neustart eines NetScaler CPX ändert, funktioniert die vorhandene Hochverfügbarkeitskonfiguration nicht, obwohl die Konfiguration gespeichert ist. In diesem Fall müssen Sie die Hochverfügbarkeit auf NetScaler CPX-Knoten erneut konfigurieren.

Topologie 2: Bereitstellen von NetScaler CPXs auf verschiedenen Docker-Hosts im Bridge-Netzwerkmodus

In dieser Topologie werden zwei NetScaler CPX-Instanzen im Bridge-Modus auf zwei verschiedenen Docker-Hosts bereitgestellt, die voneinander erreichbar sind. In dieser Bereitstellung muss NetScaler CPX die IP-Adresse des Hosts kennen. Die HOST-Umgebungsvariable kann zum Zeitpunkt der Bereitstellung des NetScaler CPX verwendet werden, um NetScaler CPX auf die IP-Adresse des Hosts aufmerksam zu machen.

Sie müssen die Portzuordnung für NetScaler CPX-Knoten festlegen. Sie können die Option -p des Docker-Befehls run verwenden, während Sie den NetScaler CPX-Knoten erstellen, um die Portzuordnung für die erforderlichen Ports zu aktivieren.

Sie müssen die folgenden Ports zuordnen:

  • UDP 3003
  • TCP 3008
  • TCP-8873

Das folgende Diagramm erklärt die Topologie der Bereitstellung von zwei NetScaler CPX-Instanzen im Bridge-Modus auf zwei verschiedenen Docker-Hosts.

Topologie 2

In diesem Diagramm stellt die gerade blaue Linie den Fluss des CPX-HA-Datenverkehrs zwischen zwei Hosts dar.

Hinweis: Auf einem Docker-Host kann nur ein NetScaler CPX ein Hochverfügbarkeitspaar bilden. Jeder andere NetScaler CPX auf demselben Host kann kein Hochverfügbarkeitspaar mit einem anderen NetScaler CPX auf einem anderen Host bilden.

Führen Sie die folgenden Schritte aus, um NetScaler-Instanzen im Bridge-Modus auf verschiedenen Docker-Hosts bereitzustellen und die Hochverfügbarkeitsunterstützung mithilfe der Beispieltopologie zu konfigurieren.

In diesem Beispiel ist die host1-IP-Adresse als 10.10.10.10/24 und die host2-IP-Adresse als konfiguriert 10.10.10.20/24.

  1. Stellen Sie NetScaler CPX mit der erforderlichen Port-Zuordnung auf host1 mit dem folgenden Befehl bereit.

    Docker run -dt --privileged=true -e EULA=yes --ulimit core=-1 -p 8873:8873 -p 3003:3003/udp -p 3008:3008 -e Host=10.10.10.10 cpx:latest
    
  2. Stellen Sie NetScaler CPX auf host2 mit demselben Befehl mit der IP-Adresse von Host 2 bereit.

    docker run -dt --privileged=true -e EULA=yes --ulimit core=-1 -p 8873:8873 -p 3003:3003/udp -p 3008:3008 -e HOST=10.10.10.20 cpx:latest
    
  3. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-1-Instanz.

    cli_script.sh  ‘add ha node 1 10.10.10.20 -inc enabled’
    
  4. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-2-Instanz.

    cli_script.sh ‘add ha node 1 10.10.10.10 -inc enabled’
    

Hinweis: In dieser Bereitstellung müssen Sie die Host-IP-Adresse des Hochverfügbarkeitsknotens anstelle der NSIP-Adresse des Hochverfügbarkeitsknotens verwenden.

Topologie 3: Bereitstellen von NetScaler CPXs auf verschiedenen Docker-Hosts im Host-Netzwerkmodus ohne dediziertes Interface

In dieser Topologie werden zwei NetScaler CPX-Instanzen auf zwei verschiedenen Docker-Hosts im Hostmodus ohne dedizierte Schnittstelle bereitgestellt. Die Hosts müssen füreinander erreichbar sein. In dieser Bereitstellung muss NetScaler CPX die IP-Adresse des Hosts kennen. Sie können die Umgebungsvariable HOST während der Bereitstellung von NetScaler CPX verwenden, um sie auf die IP-Adresse des Hosts aufmerksam zu machen.

Sie müssen die Portzuordnung für den NetScaler CPX-Knoten festlegen. Sie können die Option -p des Docker-Befehls run verwenden, während Sie den NetScaler CPX-Knoten erstellen, um die Portzuordnung für die erforderlichen Ports zu aktivieren.

Das folgende Diagramm erklärt die Topologie.

Topologie 3

In diesem Diagramm stellt die gerade blaue Linie den Fluss des CPX-HA-Datenverkehrs zwischen zwei Hosts dar.

Hinweis: Auf einem Docker-Host können Sie nur einen NetScaler CPX im Host-Modus bereitstellen.

Führen Sie die folgenden Schritte aus, um die NetScaler CPX-Instanzen bereitzustellen und die Hochverfügbarkeitsunterstützung mithilfe der Beispieltopologie zu konfigurieren.

  1. Stellen Sie NetScaler CPX mit der erforderlichen Port-Zuordnung und auf host1 mit dem folgenden Befehl bereit.

    docker run -dt --privileged=true -e EULA=yes --ulimit core=-1 --net=host -e NS_NETMODE=HOST -e HOST=10.10.10.10 cpx:latest
    
  2. Stellen Sie NetScaler CPX auf host2 mit der IP-Adresse von host2 mit dem folgenden Befehl bereit.

    docker run -dt --privileged=true -e EULA=yes --ulimit core=-1
    --net=host -e NS_NETMODE=HOST -e HOST=10.10.10.20 cpx:latest
    
  3. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-1-Instanz.

    cli_script.sh  ‘add ha node 1 10.10.10.20 -inc enabled
    
  4. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-2-Instanz.

    cli_script.sh ‘add ha node 1 10.10.10.10 -inc enabled’
    

Topologie 4: Bereitstellung von CPXs auf verschiedenen Docker-Hosts mit Host-Netzwerkmodus und dedizierten Schnittstellen

In dieser Topologie werden zwei NetScaler CPX-Instanzen im Host-Netzwerkmodus auf verschiedenen Docker-Hosts bereitgestellt. Die Hosts müssen über mehr als eine Schnittstelle verfügen. Sie können die dedizierte Schnittstelle für NetScaler CPX angeben, indem Sie die Umgebungsvariable CPX_NW_DEV verwenden.

Weitere Informationen zum Zuweisen dedizierter Netzwerkschnittstellen für NetScaler CPX mithilfe der Umgebungsvariablen CPX_NW_DEV finden Sie unter Bereitstellen der NetScaler CPX-Instanz mit dem Docker-Run-Befehl.

NetScaler CPXs, die auf verschiedenen Docker-Hosts bereitgestellt werden, müssen in diesem Datennetzwerk mit der dedizierten Schnittstelle füreinander erreichbar sein.

Diese Konfiguration ermöglicht es Hochverfügbarkeitsknoten, Heartbeat-Nachrichten auszutauschen und Konfigurationsdateien zu synchronisieren, indem sie direkt über die Ports 3003, 3008 und 8873 kommunizieren. Es sind keine NAT-Regeln auf dem Host erforderlich. Das Standard-NSIP von NetScaler CPX, das im Hostmodus erstellt wurde, ist auf beiden Knoten identisch. Daher müssen Sie auch die NS_IP- undNS_GATEWAY-Informationen** angeben.

In diesem Beispiel werden zwei NetScaler CPXs im Host-Modus auf zwei verschiedenen Hosts erstellt. NetScaler CPX-Instanzen besitzen die eth1-Schnittstellen auf beiden Hosts, und eth1-Schnittstellen sind mit demselben Netzwerk verbunden.

Das folgende Diagramm erklärt die Topologie. In diesem Diagramm stellt der blaue Pfeil den Fluss des CPX-HA-Datenverkehrs in dem an die eth1-Schnittstelle angeschlossenen Netzwerk dar.

Topologie 4

Hinweis: Auf einem Docker-Host können Sie nur einen NetScaler CPX im Host-Modus bereitstellen.

Führen Sie die folgenden Schritte aus, um die NetScaler CPX-Instanzen bereitzustellen und die Hochverfügbarkeitsunterstützung mithilfe der Beispieltopologie zu konfigurieren.

  1. Stellen Sie NetScaler CPX im Hostmodus auf host1 mit dem folgenden Befehl bereit.

    docker run -dt --privileged=true --net=host -e NS_NETMODE="HOST" -e CPX_NW_DEV=eth1 -e NS_IP='12.12.12.2' -e NS_GATEWAY='12.12.12.9' -e EULA=yes --ulimit core=-1 cpx:latest
    
  2. Stellen Sie NetScaler CPX mit dem folgenden Befehl im Hostmodus auf host2 bereit.

    docker run -dt --privileged=true --net=host -e NS_NETMODE="HOST" -e CPX_NW_DEV=eth1 -e NS_IP='12.12.12.3' -e NS_GATEWAY='12.12.12.10' -e EULA=yes --ulimit core=-1 cpx:latest
    

    Hinweis: Sie müssen statische Routen für beide NetScaler CPX-Knoten konfigurieren, um den anderen NetScaler CPX-Knoten zu erreichen, um Heartbeat-Nachrichten auszutauschen und Konfigurationsdateien zu synchronisieren.

  3. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-1-Instanz.

    cli_script.sh  ‘add ha node 1 12.12.12.3 [-inc enabled]’
    
  4. Konfigurieren Sie mit dem folgenden Befehl einen Knoten mit hoher Verfügbarkeit auf der CPX-2-Instanz.

    cli_script.sh ‘add high availability node 1 12.12.12.2 [-inc enabled]’