ADC

Konfigurieren von Layer-3-Clustering

Den L3-Cluster verstehen

Die Notwendigkeit, die Bereitstellung von Hochverfügbarkeit auszuweiten und die Skalierbarkeit des Client-Traffics in verschiedenen Netzwerken zu erhöhen, führte zur Einrichtung des L3-Clusters. Mit dem L3-Cluster können Sie Citrix ADC-Appliances in einzelnen Subnetzen gruppieren (L2-Cluster).

Der L3-Cluster wird auch als „Cluster im INC-Modus (Independent Network Configuration)“ bezeichnet. Bei der L3-Cluster-Bereitstellung werden die Clusterknoten im selben Netzwerk zu einer Knotengruppe gruppiert. Der L3-Cluster verwendet GRE-Tunneling, um die Pakete über Netzwerke zu steuern. Die Heartbeat-Nachrichten über die L3-Cluster werden weitergeleitet.

Architektur

Die L3-Cluster-Architektur umfasst die folgenden Komponenten:

  • Nodegroup — Die Clusterknoten aus jedem Netzwerk (n1, n2) und (n3, n4) werden, wie in der folgenden Abbildung dargestellt, zu einer Knotengruppe gruppiert. Diese Knotengruppen sind an den Layer-3-Switch auf beiden Seiten des Netzwerks angeschlossen.
    • Der Cluster kommuniziert mit dem Client über die physischen Verbindungen zwischen dem Clusterknoten und dem clientseitigen Verbindungsgerät. Die logische Gruppierung dieser physischen Verbindungen wird als Client-Datenebene bezeichnet.
    • Der Cluster kommuniziert mit dem Server über die physischen Verbindungen zwischen dem Clusterknoten und dem serverseitigen Verbindungsgerät. Die logische Gruppierung dieser physikalischen Verbindungen wird als Serverdatenebenebezeichnet.
  • Backplane Switch — Clusterknoten innerhalb desselben Netzwerks kommunizieren über die Cluster-Backplane miteinander. Die Backplane besteht aus einer Reihe von Schnittstellen, bei denen eine Schnittstelle jedes Knotens mit einem gemeinsamen Switch verbunden ist, der als Cluster-Backplane-Switch bezeichnet wird.
  • Tunnel — Standardmäßig werden die Pakete zwischen Knoten in einem L3-Cluster über einen unverschlüsselten GRE-Tunnel ausgetauscht, der die NSIP-Adressen der Quell- und Zielknoten für das Routing verwendet. Der Steuerungsmechanismus ändert sich für Knoten, die zu dem anderen Netzwerk gehören. Die Pakete werden durch einen GRE-Tunnel zum Knoten im anderen Subnetz geleitet, anstatt den MAC neu zu schreiben.

    Hinweis:

    Für eine neue Bereitstellung empfehlen wir, den UDP-Tunnel zu verwenden, um die Pakete über Netzwerke zu steuern. Die Verwendung eines UDP-Tunnels bietet folgende Vorteile:

    • Die Steuerung zwischen den Paket-Engines basiert auf 4-Tupel, was für eine bessere Verteilung sorgt.
    • Sie können die Verzerrung der CPU-Auslastung vermeiden.

    In der folgenden Tabelle erfahren Sie, wie Pakete in verschiedenen Tunnelmodi gesteuert werden.

    Tunnelmodus Das gleiche Netzwerk Anderes Netzwerk
    Ohne Die Backplane wird verwendet, um die Pakete zu steuern. Der GRE-Tunnel wird verwendet, um den Verkehr zu steuern.
    GRE Der GRE-Tunnel wird verwendet, um die Pakete zu steuern. Der GRE-Tunnel wird verwendet, um die Pakete zu steuern.
    UDP Der UDP-Tunnel wird verwendet, um die Pakete zu steuern. Der UDP-Tunnel wird verwendet, um die Pakete zu steuern.

Cluster-Architektur

Beispiel

Stellen Sie sich ein Beispiel für eine L3-Cluster-Bereitstellung vor, die aus den folgenden Komponenten besteht:

  • Drei Citrix ADC-Appliances (n1, n2 und n3) sind in Nodegroup1 gruppiert.
  • In ähnlicher Weise sind die Knoten n4 und n5 in Nodegroup2 gruppiert. Im dritten Netzwerk gibt es zwei Knotengruppen. Nodegroup3 umfasst n6 und n7 und Nodegroup4 umfasst n8 und n9.
  • Die Citrix ADC Appliances, die zu demselben Netzwerk gehören, werden zu einer Knotengruppe kombiniert.

Cluster-Bereitstellung

Punkte, die vor der Konfiguration des L3-Clusters zu beachten sind

Beachten Sie die folgenden Punkte, bevor Sie den L3-Cluster auf einer Citrix ADC Appliance konfigurieren:

  • Die Backplane ist bei der Konfiguration von L3-Subnetzen nicht erforderlich. Wenn die Rückwandplatine nicht angegeben ist, geht der Knoten nicht in den Ausfallzustand der Backplane über.

    Hinweis:

    Wenn Sie mehr als einen Knoten im selben L2-Netzwerk haben, muss die Backplane-Schnittstelle definiert werden. Wenn die Backplane-Schnittstelle nicht erwähnt wird, gehen die Knoten in den Status Backplane-Fail über.

  • L2-Funktionen und Striped SNIPs werden im L3-Cluster nicht unterstützt.

  • Die externe Verkehrsverteilung im L3-Cluster unterstützt nur Equal Cost Multiple Path (ECMP).
  • Die ICMP-Fehler und die Fragmentierung werden nicht verarbeitet, wenn das Steering in einer L3-Cluster-Bereitstellung deaktiviert ist:
  • Die Netzwerkentitäten (route, route6, pbr, und pbr6) müssen an die Konfigurationsknotengruppe gebunden sein.
  • VLAN-, RNAT- und IP-Tunnel können nicht an eine Konfigurationsknotengruppe gebunden werden.
  • Die Konfigurationsknotengruppe muss immer die Eigenschaft STRICT “YES” haben.
  • Die Clusterknoten dürfen nicht mit dem Befehl “add cluster node” zu einer Konfigurationsknotengruppe hinzugefügt werden.
  • Der Befehl add cluster instance -INC enabled löscht die Netzwerkentitäten (route, route6, PBR, pb6, RNAT, IP-Tunnel, ip6tunnel).
  • Der Befehl clear config extended+ löscht die Entitäten (route, route6, PBR, pb6, RNAT, IP-Tunnel, ip6tunnel) in einem L3-Cluster nicht.

Konfigurieren des L3-Clusters

In einer L3-Clusterkonfiguration hat der Clusterbefehl verschiedene zu konfigurierende Attribute, die auf Knoten und Knotengruppen basieren. Die L3-Clusterkonfiguration umfasst neben IPv4-Profilen auch ein IPv6-Profil.

Das Konfigurieren eines L3-Clusters auf einer Citrix ADC Appliance besteht aus den folgenden Aufgaben:

  • Erstellen einer Clusterinstanz
  • Erstellen einer Knotengruppe im L3-Cluster
  • Fügen Sie dem Cluster eine Citrix ADC Appliance hinzu und gruppieren Sie mit Knotengruppe
  • Fügen Sie dem Knoten die Cluster-IP-Adresse hinzu
  • Aktivieren Sie die Cluster-Instanz
  • Speichern Sie die Konfiguration
  • Fügen Sie einen Knoten zu einer vorhandenen Knotengruppe hinzu
  • Erstellen einer Knotengruppe im L3-Cluster
  • Gruppieren Sie neue Knoten zur neu erstellten Knotengruppe
  • Fügen Sie den Knoten dem Cluster hinzu

Folgendes mithilfe der CLI konfigurieren

  • Um eine Cluster-Instance zu erstellen

    add cluster instance <clid> -inc <ENABLED|DISABLED> -processLocal <ENABLED|DISABLED>

    Hinweis:

    Der Parameter „inc“ muss für einen L3-Cluster AKTIVIERT sein.

  • Um eine Knotengruppe im L3-Cluster zu erstellen

    add cluster nodegroup <name>

  • Um dem Cluster eine Citrix ADC Appliance hinzuzufügen und sie der Knotengruppe zuzuordnen

    add cluster node <nodeid> <nodeip> -backplane <interface_name> nodegroup <ng> –tunnelmode UDP

  • Um die Cluster-IP-Adresse auf diesem Knoten hinzuzufügen

    add ns ip <IPAddress> <netmask> -type clip

  • Aktivieren Sie die Cluster-Instanz

    enable cluster instance <clId>

  • Speichern Sie die Konfiguration

    save ns config

  • Warmer Neustart der Appliance

    reboot -warm

  • Um einen neuen Knoten zu einer vorhandenen Knotengruppe hinzuzufügen

    add cluster node <nodeid> <nodeip> -nodegroup <ng> –tunnelmode UDP

  • Um eine neue Knotengruppe im L3-Cluster zu erstellen

    add cluster nodegroup <ng>

  • Um neue Knoten der neu erstellten Knotengruppe zuzuordnen

    add cluster node <nodeid> <nodeip> -nodegroup <ng> –tunnelmode UDP

  • Um den Knoten mit dem Cluster zu verbinden

    join cluster –clip <ip_addr> -password <password>

Example: The following is an example configuration for nodegroup1 and nodegroup2.

    > add cluster instance 1 –inc ENABLED –processLocal ENABLED

       Done

    > add cluster nodegroup ng1

       Done

    > add cluster node 0 1.1.1.1 –state ACTIVE -backplane 0/1/1 –nodegroup ng1 –tunnelmode UDP

       Done

    > add ns ip 1.1.1.100 255.255.255.255 –type clip

       Done

    > enable cluster instance 1

       Done

    > save ns config

       Done

    > add cluster node 1 1.1.1.2 –state ACTIVE –nodegroup ng1 –tunnelmode UDP

       Done

    > add cluster nodegroup ng2

       Done

    > add cluster node 4 2.2.2.1 –state ACTIVE –nodegroup ng2 –tunnelmode UDP

       Done

    > add cluster node 5 2.2.2.2 –state ACTIVE –nodegroup ng2 –tunnelmode UDP

       Done

    > join cluster -clip 1.1.1.100 -password nsroot
<!--NeedCopy-->

Werbecluster-IP-Adresse eines L3-Clusters

Konfigurieren Sie die Cluster-IP-Adresse, die dem Upstream-Router bekannt gegeben wird, um die Clusterkonfiguration von jedem Subnetz aus zugänglich zu machen.Die Cluster-IP-Adresse wird von den auf einem Knoten konfigurierten dynamischen Routing-Protokollen als Kernel-Route angekündigt.

Die Ankündigung der Cluster-IP-Adresse besteht aus den folgenden Aufgaben:

  • Aktivieren Sie die Host-Route-Option der Cluster-IP-Adresse.Die Host-Route-Option überträgt die Cluster-IP-Adresse an eine ZeBOS-Routingtabelle, um die Kernelroute über dynamische Routing-Protokolle umzuverteilen.
  • Konfiguration eines dynamischen Routing-Protokolls auf einem Knoten.Ein dynamisches Routingprotokoll gibt die Cluster-IP-Adresse an den Upstream-Router an. Weitere Informationen zum Konfigurieren eines dynamischen Routingprotokolls finden Sie unterKonfigurieren dynamischer Routen.

So aktivieren Sie die Host-Routenoption der Cluster-IP-Adresse mit der CLI

Geben Sie in der Befehlszeile Folgendes ein:

  • add nsip <IPAddress> <netmask> -hostRoute ENABLED
  • show nsip <IPAddress>
    > add ns ip 10.102.29.60 255.255.255.255 -hostRoute ENABLED

    > Done
<!--NeedCopy-->

Spotted, partially striped configurations on L3 cluster

Die spotted und partially Striped Konfigurationen auf dem L3-Cluster unterscheiden sich geringfügig vom L2-Cluster. Die Konfiguration kann von Knoten zu Knoten unterschiedlich sein, da sich die Knoten in verschiedenen Subnetzen befinden. Die Netzwerkkonfigurationen können im L3-Cluster knotenspezifisch sein, daher müssen Sie die Spotted- oder teilweise Striped-Konfigurationen auf der Grundlage der unten genannten Parameter konfigurieren.

Führen Sie die folgenden Aufgaben aus, um gespernte, teilweise Striped Konfigurationen auf einer Citrix ADC Appliance über den L3-Cluster zu konfigurieren:

  • Fügen Sie einer statischen IPv4-Routingtabelle eine Cluster-Besitzergruppe hinzu
  • Eine Cluster-Besitzergruppe zu einer statischen IPv6-Routingtabelle hinzufügen
  • Hinzufügen einer Cluster-Besitzergruppe zu einem IPv4-Policy-basierten Routing (PBR)
  • Eine Cluster-Besitzergruppe zu einem IPv6-PBR hinzufügen
  • Fügen Sie ein VLAN hinzu
  • Binden Sie ein VLAN an eine bestimmte Besitzergruppe der Clusterknotengruppe

Folgendes mithilfe der CLI konfigurieren

  • Um eine Cluster-Besitzergruppe zu einer statischen IPv4-Routentabelle der Citrix ADC Appliance hinzuzufügen

    add route <network> <netmask> <gateway> -owner group <ng>

  • So fügen Sie eine Cluster-Besitzergruppe zu einer statischen IPv6-Routentabelle der Citrix ADC Appliance hinzu

    add route6 <network> -owner group <ng>

  • So fügen Sie einer IPv4-PBR eine Cluster-Besitzergruppe hinzu

    add pbr <name> <action> -owner group <ng>

  • Um eine Cluster-Besitzergruppe zu einer IPv6-PBR hinzuzufügen

    add pbr6 <name> <action> -owner group <ng>

  • Um ein VLAN hinzuzufügen

    add vlan <id>

  • Um ein VLAN an eine bestimmte Besitzergruppe der Clusterknotengruppe zu binden

    bind vlan <id> -ifnum – [IPAddress <ipv4_addr | ipv6_addr> [-owner group <ng>]

    Die folgenden Befehle sind Beispielbeispiele für Konfigurationen mit Punkten und teilweise Striped Konfigurationen, die mithilfe der CLI konfiguriert werden können.

    > add route 10.102.29.0 255.255.255.0 10.102.29.2 –ownergroup ng2

        Done

    > add route6 fe80::9404:60ff:fedd:a464/64 –ownergroup ng1

        Done

    > add pbr pbr1 allow –ownergroup ng1

        Done

    > add pbr6 pbr2 allow –ownergroup ng2

        Done

    > add vlan 2

        Done

    > bind vlan 2 –ifnum 1/2 –[IPAddress 10.102.29.80 | fe80::9404:60ff:fedd:a464/64-ownergroup ng1

        Done
<!--NeedCopy-->

Knotengruppe konfigurieren

In einem L3-Cluster werden die folgenden Befehle verwendet, um denselben Satz von Konfigurationen auf mehr als einer Knotengruppe zu replizieren:

Folgendes mithilfe der CLI konfigurieren

  • Um der Routing-Tabelle der Citrix ADC Appliance eine statische IPv4-Route hinzuzufügen

    add route <network> <netmask> <gateway> -ownerGroup <ng>

Beispielkonfiguration:

add route 0 0 10.102.53.1 –ownerGroup ng1

add route 0 0 10.102.53.1 –ownerGroup ng2
<!--NeedCopy-->

Sie definieren eine neue Knotengruppe ‘all’, um die vorherige Konfiguration zu unterstützen, und müssen die folgenden Befehle konfigurieren:

Folgendes mithilfe der CLI konfigurieren

  • Um dem Cluster eine neue Knotengruppe mit strikten Parametern hinzuzufügen

    add cluster node group <name> -strict <YES | NO>

  • Um einen Clusterknoten oder eine Entität an die angegebene Knotengruppe zu binden

    bind cluster nodegroup <name> -node <nodeid>

  • Um eine statische IPv4-Route zu allen Besitzergruppen hinzuzufügen

    add route <network> <netmask> <gateway> -ownerGroup <ng>

Beispielkonfiguration:

add cluster nodegroup all –strict YES

bind cluster nodegroup all –node 1

bind cluster nodegroup all –node 2

add route 0 0 10.102.53.1 –ownerGroup all
<!--NeedCopy-->

Verkehrsverteilung in einem L3-Cluster

In einem Cluster-Setup zeigen externe Netzwerke die Sammlung von Citrix ADC Appliances als einzelne Entität an. Daher muss der Cluster einen einzelnen Knoten auswählen, der den Datenverkehr empfangen muss. Im L3-Cluster erfolgt diese Auswahl mit dem ECMP. Der ausgewählte Knoten wird als Flow Receiver bezeichnet.

Hinweis

Für einen L3-Cluster (Knoten in verschiedenen Netzwerken) kann nur die ECMP-Verkehrsverteilung verwendet werden.

Der Flow-Empfänger erhält den Datenverkehr und bestimmt dann mithilfe der internen Clusterlogik den Knoten, der den Verkehr verarbeiten muss. Dieser Knoten wird als Flow-Prozessor bezeichnet. Der Flow-Empfänger leitet den Datenverkehr über die Backplane zum Flow-Prozessor, wenn sich der Flow-Receiver und der Flow-Prozessor im selben Netzwerk befinden. Der Verkehr wird durch den Tunnel geleitet, wenn sich der Flow-Empfänger und der Flow-Prozessor in unterschiedlichen Netzwerken befinden.

Hinweis

  • Der Flow-Empfänger und der Flow-Prozessor müssen Knoten sein, die Datenverkehr verarbeiten können.

  • Ab NetScaler 11 können Sie die Steuerung auf der Cluster-Backplane deaktivieren. Weitere Informationen finden Sie unter Deaktivieren der Lenkung auf der Cluster-Backplane.

L3-Cluster-Paketfluss

Die vorangehende Abbildung zeigt eine Client-Anfrage, die durch den Cluster fließt. Der Client sendet eine Anfrage an eine virtuelle IP-Adresse (VIP). Ein auf der Client-Datenebene konfigurierter Mechanismus zur Verkehrsverteilung wählt einen der Clusterknoten als Flow-Empfänger aus. Der Flussempfänger empfängt den Datenverkehr, bestimmt den Knoten, der den Datenverkehr verarbeiten muss, und steuert die Anforderung an diesen Knoten (es sei denn, der Flow-Empfänger wählt sich selbst als Flow-Prozessor aus). Wenn sich der Flow-Prozessor und der Flow-Empfänger in derselben Knotengruppe befinden, wird das Paket über die Backplane gesteuert. Und wenn sich der Flow-Prozessor und der Flow-Receiver in verschiedenen Knotengruppen befinden, wird das Paket über den gerouteten Pfad durch den Tunnel gesteuert.

Der Flow-Prozessor stellt eine Verbindung mit dem Server her. Der Server verarbeitet die Anforderung und sendet die Antwort an die Subnetz-IP-Adresse (SNIP), die die Anforderung an den Server gesendet hat. Da der SNIP im L3-Cluster immer ein Spotted SNIP ist, erhält der Knoten, dem die SNIP-Adresse gehört, die Antwort vom Server.

Konfigurieren von Layer-3-Clustering