Skalierbarkeit
Da die TCP-Optimierung ressourcenintensiv ist, ist eine einzelne NetScaler-Appliance, selbst eine High-End-Appliance, möglicherweise nicht in der Lage, hohe Gi-LAN-Durchsätze aufrechtzuerhalten. Um die Kapazität Ihres Netzwerks zu erweitern, können Sie NetScaler-Appliances in einer N+1-Clusterformation bereitstellen. In einer Cluster-Bereitstellung arbeiten die NetScaler-Appliances als ein einziges System-Image zusammen. Der Client-Verkehr wird mit Hilfe eines externen Switch-Geräts auf die Clusterknoten verteilt.
Topologie
Abbildung 1 zeigt ein Beispiel für einen Cluster, der aus vier T1300-40G-Knoten besteht.
Das in Abbildung 1 gezeigte Setup hat die folgenden Eigenschaften:
- Alle Clusterknoten gehören demselben Netzwerk an (auch bekannt als L2-Cluster).
- Datenebene- und Backplane-Verkehr werden von verschiedenen Switches abgewickelt.
- Unter der Annahme, dass der Gi-LAN-Durchsatz 200 Gbit/s beträgt und dass eine T1300-40G-Appliance einen Durchsatz von 80 Gbit/s aufrechterhalten kann, benötigen wir drei T1300-40G-Appliances. Um Redundanz bei einem Ausfall eines einzelnen Clusterknotens zu gewährleisten, stellen wir insgesamt vier Appliances bereit.
- Jeder Knoten empfängt bis zu 67 Gbit/s Datenverkehr (50 Gbit/s unter normalen Betriebsbedingungen und 67 Gbit/s bei Ausfall eines einzelnen Clusterknotens). Daher benötigt er 2x40-Gbit/s-Verbindungen zum Upstream-Switch. Um Redundanz bei einem Switch-Ausfall zu gewährleisten, stellen wir einige Upstream-Switches bereit und verdoppeln die Anzahl der Verbindungen.
- Cluster Link Aggregation (CLAG) wird verwendet, um den Datenverkehr auf Clusterknoten zu verteilen. Eine einzige CLAG verarbeitet sowohl den Client- als auch den Serververkehr. Die Link-Redundanz ist auf dem CLAG aktiviert, sodass zu einem bestimmten Zeitpunkt nur ein „Unterkanal“ ausgewählt wird, der den Verkehr verarbeitet. Wenn eine Verbindung ausfällt oder der Durchsatz unter den angegebenen Schwellenwert fällt, wird der andere Unterkanal ausgewählt.
- Der Upstream-Switch führt einen symmetrischen Port-Channel-Load-Balancing durch (z. B. den Source-Dest-IP-Only-Algorithmus von Cisco IOS 7.0 (8) N1 (1))), sodass vorwärts- und Rückwärtsverkehrsflüsse von demselben Clusterknoten verarbeitet werden. Diese Eigenschaft ist wünschenswert, da sie die Neuordnung von Paketen verhindert, die die TCP-Leistung beeinträchtigen würde.
- Fünfzig Prozent des Datenverkehrs werden voraussichtlich über die Backplane gesteuert, was bedeutet, dass jeder Knoten bis zu 34 Gbit/s an andere Clusterknoten weiterleitet (25 Gbit/s unter normalen Betriebsbedingungen und 34 Gbit/s bei Ausfall eines einzelnen Clusterknotens). Daher benötigt jeder Knoten mindestens 4x10G-Verbindungen zum Backplane-Switch. Um Redundanz bei einem Switch-Ausfall zu gewährleisten, setzen wir einige Backplane-Switches ein und verdoppeln die Anzahl der Verbindungen. Link-Redundanz wird derzeit für die Backplane nicht unterstützt. Daher ist Cisco VPC oder eine gleichwertige Technologie erforderlich, um Redundanz auf Switch-Ebene zu erreichen.
- Die MTU-Größe von gesteuerten Paketen beträgt 1578 Byte, daher müssen Backplane-Switches eine MTU von mehr als 1500 Byte unterstützen.
Hinweis: Das in Abbildung 1 dargestellte Design gilt auch für T1120- und T1310-Geräte. Für den T1310 würden wir 40-GbE-Schnittstellen für die Backplane-Verbindungen verwenden, da ihm 10GbE-Ports fehlen.
Hinweis: In diesem Dokument wird Cisco VPC zwar als Beispiel verwendet, bei der Arbeit mit Switches anderer Hersteller können jedoch alternative gleichwertige Lösungen verwendet werden, wie z. B. MLAG von Juniper.
Hinweis: Andere Topologien wie ECMP anstelle von CLAG sind zwar möglich, werden jedoch derzeit für diesen speziellen Anwendungsfall nicht unterstützt.
Konfiguration der TCP-Optimierung in einem NetScaler T1000-Cluster
Nachdem die physische Installation, die physische Konnektivität, die Softwareinstallation und die Lizenzierung abgeschlossen sind, können Sie mit der eigentlichen Clusterkonfiguration fortfahren. Die unten beschriebenen Konfigurationen gelten für den Cluster, der in Abbildung 1 dargestellt ist.
Hinweis: Weitere Informationen zur Clusterkonfiguration finden Sie unter Einrichten eines NetScaler-Clusters.
Angenommen, die vier T1300-Knoten in Abbildung 1 haben die folgenden NSIP-Adressen:
Vier T1300 Knoten mit NSIP-Adresse:
T1300-40-1: 10.102.29.60
T1300-40-2: 10.102.29.70
T1300-40-3: 10.102.29.80
T1300-40-4: 10.102.29.90
Der Cluster wird über die Cluster-IP (CLIP) -Adresse verwaltet, die als 10.78.16.61 angenommen wird.
Den Cluster einrichten
Um mit der Konfiguration des in Abbildung 1 gezeigten Clusters zu beginnen, melden Sie sich bei der ersten Appliance an, die Sie dem Cluster hinzufügen möchten (z. B. T1300-40-1), und gehen Sie wie folgt vor.
-
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein:
Befehl:
> add cluster instance 1 > add cluster node 0 10.102.29.60 -state ACTIVE > add ns ip 10.102.29.61 255.255.255.255 -type clip > enable cluster instance 1 > save ns config > reboot –warm
-
Nach dem Neustart der Appliance stellen Sie eine Verbindung zur Cluster-IP-Adresse (CLIP) her, und fügen Sie den Rest der Knoten zum Cluster hinzu:
Befehl:
> add cluster node 1 10.102.29.70 -state ACTIVE > add cluster node 2 10.102.29.80 -state ACTIVE > add cluster node 3 10.102.29.90 –state ACTIVE > save ns config
-
Stellen Sie eine Verbindung mit der NSIP-Adresse jedes der neu hinzugefügten Knoten her, und treten Sie dem Cluster bei:
Befehl:
> join cluster -clip 10.102.29.61 -password nsroot > save ns config > reboot –warm
-
Fahren Sie nach dem Neustart der Knoten mit der Backplane-Konfiguration fort. Geben Sie an der Cluster-IP-Adresse die folgenden Befehle ein, um einen LACP-Kanal für den Backplane-Link jedes Clusterknotens zu erstellen:
Befehl:
> set interface 0/10/[1-8] –lacpkey 1 –lacpmode ACTIVE > set interface 1/10/[1-8] –lacpkey 2 –lacpmode ACTIVE > set interface 2/10/[1-8] –lacpkey 3 –lacpmode ACTIVE > set interface 3/10/[1-8] –lacpkey 4 –lacpmode ACTIVE
-
Konfigurieren Sie in ähnlicher Weise dynamische LA und VPC auf den Backplane-Switches. Stellen Sie sicher, dass die MTU der Backplane-Switch-Schnittstellen mindestens 1578 Byte beträgt.
-
Stellen Sie sicher, dass die Kanäle betriebsbereit sind:
Befehl:
> show channel 0/LA/1 > show channel 1/LA/2 > show channel 2/LA/3 > show channel 3/LA/4
-
Konfigurieren Sie die Backplane-Schnittstellen des Cluster-Knotens.
Befehl:
> set cluster node 0 -backplane 0/LA/1 > set cluster node 1 -backplane 1/LA/2 > set cluster node 2 -backplane 2/LA/3 > set cluster node 3 –backplane 3/LA/4
-
Überprüfen Sie den Clusterstatus, und stellen Sie sicher, dass der Cluster funktionsfähig ist:
> show cluster instance > show cluster node
Weitere Informationen zum Cluster-Setup finden Sie unter Einrichten eines NetScaler-Clusters
Verteilung des Datenverkehrs über Clusterknoten
Nachdem Sie den NetScaler-Cluster gebildet haben, stellen Sie Cluster Link Aggregation (CLAG) bereit, um den Datenverkehr auf die Clusterknoten zu verteilen. Ein einziger CLAG-Link verarbeitet sowohl den Client- als auch den Serververkehr.
Führen Sie an der Cluster-IP-Adresse die folgenden Befehle aus, um die in Abbildung 1 gezeigte Cluster Link Aggregation (CLAG) -Gruppe zu erstellen:
Befehl:
> set interface 0/40/[1-4] -lacpMode active -lacpKey 5 -lagType Cluster
> set interface 1/40/[1-4] -lacpMode active -lacpKey 5 -lagType Cluster
> set interface 2/40/[1-4] -lacpMode active -lacpKey 5 -lagType Cluster
> set interface 3/40/[1-4] -lacpMode active -lacpKey 5 -lagType Cluster
Konfigurieren Sie die dynamische Linkaggregation auf den externen Switches.
Aktivieren Sie dann die Link-Redundanz wie folgt:
Code:
> set channel CLA/1 -linkRedundancy ON -lrMinThroughput 240000
Überprüfen Sie schließlich den Kanalstatus, indem Sie Folgendes eingeben:
Befehl:
> show channel CLA/1
Der Kanal sollte UP sein und der tatsächliche Durchsatz sollte 320000 betragen.
Weitere Informationen zur Cluster-Link-Aggregation finden Sie in den folgenden Themen:
Da wir MAC-basierte Weiterleitung (MBF) verwenden, konfigurieren Sie einen Linkset und binden ihn wie folgt an die CLAG-Gruppe:
Befehl:
> add linkset LS/1
> bind linkset LS/1 -ifnum CLA/1
Weitere Informationen zu Linksets finden Sie in den folgenden Themen:
Konfiguration von VLAN und IP-Adressen
Wir werden Striped IP-Konfiguration verwenden, was bedeutet, dass IP-Adressen auf allen Knoten aktiv sind (Standardeinstellung). Weitere Informationen zu diesem Thema finden Sie unter Gestreifte, teilweise gestreifte und gepunktete Konfigurationen .
-
Fügen Sie die Ein- und Ausgangs-SNIPs hinzu:
Befehl:
> add ns ip 172.16.30.254 255.255.255.0 –type SNIP > add ns ip 172.16.31.254 255.255.255.0 –type SNIP > add ns ip6 fd00:172:16:30::254/112 –type SNIP > add ns ip6 fd00:172:16:31::254/112 –type SNIP
-
Fügen Sie die entsprechenden VLANs hinzu:
Befehl:
> add vlan 30 -aliasName wireless > add vlan 31 -aliasName internet
-
Binden Sie VLANs mit IPs und Linkset:
Befehl:
> bind vlan 31 -ifnum LS/1 -tagged > bind vlan 30 -ifnum LS/1 -tagged > bind vlan 30 -IPAddress 172.16.30.254 255.255.255.0 > bind vlan 31 -IPAddress 172.16.31.254 255.255.255.0 > bind vlan 30 -IPAddress fd00:172:16:30::254/112 > bind vlan 31 -IPAddress fd00:172:16:31::254/112
Bei Bedarf können mehr Ein- und Ausstieg VLANs hinzugefügt werden.
Konfiguration der TCP-Optimierung
An dieser Stelle haben wir alle clusterspezifischen Befehle angewendet. Um die Konfiguration abzuschließen, führen Sie die in TCP-Optimierungskonfigurationbeschriebenen Schritte aus.
Dynamisches Routing konfigurieren
Ein NetScaler-Cluster kann in die dynamische Routing-Umgebung des Kundennetzwerks integriert werden. Im Folgenden finden Sie ein Beispiel für eine dynamische Routing-Konfiguration mit dem BGP-Routing-Protokoll (OSPF wird ebenfalls unterstützt).
-
Aktivieren Sie über die CLIP-Adresse BGP und dynamisches Routing für eingehende und ausgehende IP-Adressen:
Befehl:
> enable ns feature bgp > set ns ip 172.16.30.254 –dynamicRouting ENABLED > set ns ip 172.16.31.254 –dynamicRouting ENABLED
-
Öffnen Sie vtysh und konfigurieren Sie BGP für die Egress-Seite:
Code:
> shell root@ns# vtysh ns# configure terminal ns(config)# router bgp 65531 ns(config-router)# network 10.0.0.0/24 ns(config-router)# neighbor 172.16.31.100 remote-as 65530 ns(config-router)# neighbor 172.16.31.100 update-source 172.16.31.254 ns(config-router)# exit ns(config)# ns route-install propagate ns(config)# ns route-install default ns(config)# ns route-install bgp ns(config)# exit
-
Konfigurieren Sie den egress-seitigen BGP-Peer, um die Standardroute zum NetScaler Cluster anzukündigen. Zum Beispiel:
Befehl:
router bgp 65530 bgp router-id 172.16.31.100 network 0.0.0.0/0 neighbor 172.16.31.254 remote-as 65531
-
Führen Sie ähnliche Schritte aus, um die Eindringseite zu konfigurieren.
-
Stellen Sie von vtysh aus sicher, dass die Konfiguration an alle Clusterknoten weitergegeben wird, indem Sie Folgendes eingeben:
Befehl:
ns# show running-config
-
Melden Sie sich schließlich bei der NSIP-Adresse jedes Clusterknotens an und überprüfen Sie die von BGP-Peer angekündigten Routen:
Befehl:
> show route | grep BGP