ADC

Anwendungsfall 3: Lastausgleich im DSR-Modus konfigurieren

Der Lastausgleich im DSR-Modus (Direct Server Return) ermöglicht es dem Server, direkt auf Clients zu antworten, indem er einen Rückpfad verwendet, der nicht durch die NetScaler-Appliance fließt. Im DSR-Modus kann die Appliance jedoch weiterhin Zustandsprüfungen für Dienste durchführen. In einer Umgebung mit hohem Datenvolumen erhöht das direkte Senden von Serverdatenverkehr an den Client im DSR-Modus die gesamte Paketverarbeitungskapazität der Appliance, da die Pakete nicht durch die Appliance fließen.

Der DSR-Modus weist die folgenden Funktionen und Einschränkungen auf:

  • Es unterstützt den Einarmmodus und den Inline-Modus.
  • Die Appliance altert Sitzungen basierend auf dem Leerlaufzeitlimit aus.
  • Da die Appliance keine TCP-Verbindungen proxyiert (dh sie sendet SYN-ACK nicht an den Client), schließt sie SYN-Angriffe nicht aus. Mit dem SYN-Paketratenfilter können Sie die Rate von SYNs für den Server steuern. Um die Rate von SYNs zu steuern, legen Sie einen Schwellenwert für die SYN-Rate fest. Um Schutz vor SYN-Angriffen zu erhalten, müssen Sie die Appliance so konfigurieren, dass sie TCP-Verbindungen als Proxy verwendet. Dies erfordert jedoch, dass der umgekehrte Verkehr durch die Appliance fließt.
  • In einer DSR-Konfiguration ersetzt die NetScaler-Appliance die IP-Adresse des virtuellen Lastausgleichsservers nicht durch die IP-Adresse des Zielservers. Stattdessen leitet er Pakete an einen Dienst weiter, indem er die MAC-Adresse des Servers verwendet. Der VIP muss auf dem Server konfiguriert sein und ARP muss für den VIP deaktiviert sein, der auf dem Server konfiguriert ist. Dadurch wird verhindert, dass die Clientanforderung die Appliance umgeht, wenn sie im Einarmmodus konfiguriert ist. Beispielsweise muss ein Benutzer VIP in der Loopback-Schnittstelle konfigurieren und den ARP für denselben VIP deaktivieren.
  • Die Appliance ruft die MAC-Adresse des Servers vom Monitor ab, der an den Dienst gebunden ist. Benutzerdefinierte Benutzermonitore (Monitore vom Typ USER), die auf der NetScaler-Appliance gespeicherte Skripts verwenden, lernen jedoch nicht die MAC-Adresse eines Servers. Wenn Sie in einer DSR-Konfiguration nur benutzerdefinierte Monitore verwenden, versucht die Appliance für jede Anforderung, die der virtuelle Server empfängt, die Ziel-IP-Adresse in eine MAC-Adresse aufzulösen (indem sie ARP-Anfragen sendet). Da es sich bei der Ziel-IP-Adresse um eine virtuelle IP-Adresse handelt, die der NetScaler Appliance gehört, werden die ARP-Anforderungen immer in die MAC-Adresse der NetScaler-Schnittstelle aufgelöst. Daher wird der gesamte vom virtuellen Server empfangene Datenverkehr auf die Appliance zurückgeführt. Wenn Sie Benutzermonitore in einer DSR-Konfiguration verwenden, müssen Sie auch einen anderen Monitor (z. B. einen PING-Monitor) für die Dienste konfigurieren, idealerweise mit einem längeren Intervall zwischen den Prüfpunkten, damit die MAC-Adresse der Server erlernt werden kann.
  • Die NetScaler-Appliance lernt die Server-L2-Parameter vom Monitor, der an den Dienst gebunden ist. Konfigurieren Sie für UDP-ECV-Monitore eine Empfangszeichenfolge, damit die Appliance die L2-Parameter des Servers lernen kann. Wenn die Empfangszeichenfolge nicht konfiguriert ist und der Server nicht reagiert, lernt die Appliance die L2-Parameter nicht, aber der Dienst ist auf UP eingestellt. Der Traffic für diesen Dienst ist schwarz.

Im Beispielszenario werden die Dienste Service-ANY-1, Service-ANY-2 und Service-ANY-3 erstellt und an den virtuellen Server Vserver-LB-1 gebunden. Der virtuelle Server verteilt die Client-Anfrage an einen Dienst, und der Dienst reagiert direkt auf die Clients, wobei die NetScaler-Appliance umgangen wird. In der folgenden Tabelle sind die Namen und Werte der Entitäten aufgeführt, die auf der NetScaler-Appliance im DSR-Modus konfiguriert sind.

Entitätstyp Name IP-Adresse Protokoll
Virtueller Server Vserver-LB-1 10.102.29.94 ANY
Services Service-ANY-1 10.102.29.91 ANY
  Service-ANY-2 10.102.29.92 ANY
  Service-ANY-3 10.102.29.93 ANY
Monitore TCP Ohne Ohne

Das folgende Diagramm zeigt die Load-Balancing-Entitäten und Werte der Parameter, die auf der Appliance konfiguriert werden sollen.

Abbildung 1. Entitätsmodell für Load Balancing im DSR-Modell

lb-entity-dsr-modus

Damit die Appliance im DSR-Modus ordnungsgemäß funktioniert, muss die Ziel-IP in der Client-Anfrage unverändert sein. Stattdessen ändert die Appliance den Ziel-MAC auf den des ausgewählten Servers. Diese Einstellung ermöglicht es dem Server, die Client-MAC-Adresse für die Weiterleitung von Anforderungen an den Client unter Umgehung des Servers zu bestimmen.

Als Nächstes konfigurieren Sie ein grundlegendes Lastenausgleichs-Setup wie unter Einrichten des Basic Load Balancingbeschrieben, benennen die Entitäten und Festlegen der Parameter mit den in der vorherigen Tabelle beschriebenen Werten.

Nachdem Sie das grundlegende Lastausgleichs-Setup konfiguriert haben, müssen Sie es für den DSR-Modus anpassen. Dazu konfigurieren Sie eine unterstützte Lastausgleichsmethode, z. B. die Quell-IP-Hash-Methode mit einem virtuellen Server ohne Sitzung. Sie müssen auch den Umleitungsmodus so einstellen, dass der Server die Client-MAC-Adresse für die Weiterleitung von Antworten ermitteln und die Appliance Bypass kann.

Nachdem Sie die Load Balancing-Methode und den Umleitungsmodus konfiguriert haben, müssen Sie den USIP-Modus für jeden Dienst aktivieren. Der Dienst verwendet dann die Quell-IP-Adresse, um Antworten weiterzuleiten.

So konfigurieren Sie die Load-Balancing-Methode und den Umleitungsmodus für einen virtuellen Server ohne Sitzung mithilfe der Befehlszeilenschnittstelle

Geben Sie in der Befehlszeile Folgendes ein:

set lb vserver <vServerName> -lbMethod <LBMethodOption> -m <RedirectionMode> -sessionless <Value>
<!--NeedCopy-->

Beispiel

set lb vserver Vserver-LB-1 -lbMethod SourceIPHash -m MAC -sessionless enabled
<!--NeedCopy-->

Hinweis

Für einen Dienst, der an einen virtuellen Server gebunden ist, auf dem die MAC-Option -m aktiviert ist, müssen Sie einen Monitor binden, der kein Benutzer ist.

So konfigurieren Sie die Load-Balancing-Methode und den Umleitungsmodus für einen virtuellen Server ohne Sitzung mithilfe des Konfigurationsprogramms

  1. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
  2. Öffnen Sie einen virtuellen Server, wählen Sie Umleitungsmodus als MAC-basiert und Methode als SOURCEIPHASH.
  3. Wählen Sie unter Traffic Settings Sessionless Load Balancing aus.

So konfigurieren Sie einen Dienst für die Verwendung der Quell-IP-Adresse mithilfe der Befehlszeilenschnittstelle

Geben Sie in der Befehlszeile Folgendes ein:

set service <ServiceName> -usip <Value>
<!--NeedCopy-->

Beispiel:

set service Service-ANY-1 -usip yes
<!--NeedCopy-->

So konfigurieren Sie einen Dienst für die Verwendung der Quell-IP-Adresse mithilfe des Konfigurationsprogramms

  1. Navigieren Sie zu Traffic Management > Load Balancing > Services.
  2. Öffnen Sie einen Dienst und wählen Sie unter Verkehrseinstellungen die Option Quell-IP-Adresse verwendenaus.

Einige zusätzliche Schritte sind in bestimmten Situationen erforderlich, die in den nachfolgenden Abschnitten beschrieben werden.