ADC

Prioritätsreihenfolge für Lastausgleichsdienste

Mit der Funktion “Prioritätsreihenfolge für Dienste” können Sie die Reihenfolge von Diensten oder Dienstgruppen basierend auf den Auswahleinstellungen für den Lastausgleich priorisieren. Sie können die Prioritätsreihenfolge konfigurieren, wenn Sie Folgendes tun:

  • Binden Sie einen Dienst an einen virtuellen Lastausgleichsserver.
  • Binden Sie eine Dienstgruppe an einen virtuellen Lastausgleichsserver.
  • Binden Sie ein Dienstgruppenmitglied an die Lastausgleichsdienstgruppe.

Derzeit können Sie die Prioritätsreihenfolge für Dienste mithilfe der folgenden Methoden konfigurieren. Diese Ansätze haben jedoch die folgenden Einschränkungen:  

  • Konfigurieren einer virtuellen Backupserverkette: Die Anzahl der Konfigurationszeilen ist hoch, und Sie müssen den Befehl show mehrmals ausführen, um den Status aller LB-Dienste für jeden virtuellen Server zu ermitteln.

  • Konfigurieren des bevorzugten Speicherorts: Sie müssen Standorteinträge für alle Ihre Anwendungsendpunkte erstellen.

Die Prioritätsreihenfolge für Dienste behebt die vorherigen Einschränkungen mit weniger Konfigurationsbefehlen und hilft Ihnen, die bevorzugte Standortkonfiguration zu erreichen, ohne dass die IP-Adressen aller Lastausgleichsdienste standortbezogen dargestellt werden müssen.

Konfigurieren der Prioritätsreihenfolge für Lastausgleich

Um die Prioritätsreihenfolge für Lastausgleichsdienste zu konfigurieren, wird der Parameter -order <number> zu den Bindungsbefehlen hinzugefügt.

Hinweis:

Die niedrigste Auftragsnummer hat die höchste Priorität.

Befehl:

bind lb vserver <vservername> <servicename/servicegroupname> -order <number>

Stellen Sie sich beispielsweise eine Reihe von Diensten vor, die an einen virtuellen Lastausgleichsserver (vs1) gebunden sind. Mit dem Parameter
- order <number> können Sie die Reihenfolge der Auswahl der Dienste wie folgt priorisieren:

  • Set 1 (s1, s2) bound to vs1 – order 1
  • Set 2 (s3, s4) bound to vs1 – order 2
  • Set 3 (s5, s6) bound to vs1 – order 3

Nachdem Sie die Dienste an vs1 gebunden haben und wenn vs1 den Clientverkehr empfängt, ist die Reihenfolge der Auswahl der Dienste wie folgt:

  • Der virtuelle Server (vs1) wählt zuerst die Dienste in Satz 1 (s1 und s2) mit der laufenden Nummer 1 aus, da dieser Menge die niedrigste Ordnungsnummer zugewiesen ist. Standardmäßig hat die niedrigste Auftragsnummer die höchste Priorität.
  • Wenn alle Dienste in Satz 1 DOWN sind, wählt vs1 Satz 2 (s3 und s4) mit der laufenden Nummer 2.
  • Wenn alle Dienste in Satz 1 und Satz 2 ausgefallen sind, wählt vs1 Satz 3 (s5 und s6) mit der laufenden Nummer 3.

Konfigurieren der Prioritätsreihenfolge für Load-Balancing-Dienste über die CLI

Um die Prioritätsreihenfolge für die Lastausgleichsdienste zu konfigurieren, geben Sie an der Eingabeaufforderung die folgenden Befehle ein:

  1. Fügen Sie einen virtuellen LB-Server hinzu.

    add lb vserver vs1 HTTP 1.1.1.1 80

  2. LB-Dienste hinzufügen.

    add service s[1-6] 2.2.2.[1-6] HTTP 80

  3. Legen Sie die Auftragsnummer fest und binden Sie die Dienste an den virtuellen LB-Server.

    bind lb vserver vs1 s1 -order 1

    bind lb vserver vs1 s2 -order 1

    bind lb vserver vs1 s3 -order 2

    bind lb vserver vs1 s4 -order 2

    bind lb vserver vs1 s5 -order 3

    bind lb vserver vs1 s6 -order 3

Konfigurieren der Prioritätsreihenfolge für Load Balancing-Dienste über die GUI

Voraussetzungen:

  • Sie haben einen virtuellen Lastausgleichsserver erstellt.
  • Sie haben Dienste erstellt.

Gehen Sie wie folgt vor, um die Prioritätsreihenfolge für Lastausgleichsdienste zu konfigurieren und sie an den virtuellen Server zu binden:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und doppelklicken Sie auf den virtuellen Lastausgleichs

  2. Klicken Sie in Load Balancing Virtual Serverim Abschnitt Dienste und Dienstgruppen auf Load Balancing Virtual Server Service Binding.

  3. Klicken Sie im Dialogfeld Lastenausgleichsdienstbindung für virtuelle Server auf Bindung hinzufügen.

  4. Wählen Sie im Dialogfeld Dienstbindung einen Dienst aus.

  5. Geben Sie eine Zahl in das Feld Reihenfolge ein, um die Prioritätsreihenfolge für den Dienst festzulegen.

  6. Klicken Sie aufBinden.

  7. Wiederholen Sie die Schritte 1—6, um unterschiedliche Prioritätsreihenfolgennummern für verschiedene Dienste zu konfigurieren

Konfigurieren der Prioritätsreihenfolge für Load-Balancing-Dienste mithilfe

Standardmäßig hat die niedrigste Auftragsnummer die höchste Priorität. Sie können dieses Standardverhalten jedoch mithilfe der neuen LB-Aktion und der Richtlinienbefehle aufschieben. Sie können die Reihenfolge der Serviceauswahl basierend auf dem eingehenden Clientverkehr oder den Kundendaten konfigurieren.

Stellen Sie sich beispielsweise eine Reihe von Diensten vor, die an einen virtuellen Server (vs1) gebunden sind. Mit dem Parameter - order <number> haben Sie die Prioritätsreihenfolge für Dienste wie folgt konfiguriert:

  • Set 1 (s1, s2) bound to vs1 – order 1

  • Set 2 (s3, s4) bound to vs1 – order 2

  • Set 3 (s5, s6) bound to vs1 – order 3

Standardmäßig hat die niedrigste Auftragsnummer die höchste Priorität. Daher ist die standardmäßige Prioritätsreihenfolge der Präferenz 1, 2 und 3 für Dienste in Set 1, Set2 bzw. Set3. Für einen bestimmten Client-Traffic möchten Sie jedoch die Prioritätsreihenfolge auf 3, 1 und 2 ändern. Um dies zu erreichen, können Sie eine LB-Richtlinie hinzufügen und an vs1 binden.

Ein LB-Richtlinienbefehl besteht aus zwei Elementen: einer Regel und einer Aktion. Die Regel ist mit einer Aktion verknüpft, die ausgeführt wird, wenn eine Anforderung mit der Regel übereinstimmt.

Hinweis:

Die LB-Richtlinienbefehle gelten sowohl für die LB- als auch für die GSLB-Konfiguration und gelten für die Anforderungen, die von der NetScaler-Appliance verarbeitet werden.

LB-Aktion

**Ausdruck:**

add lb action <name> <type> <string>

**Beispiel:**

add lb action act1 -type SELECTIONORDER -value 3 2 1

Parameter:

  • name: Name der Aktion.

  • type: Art der Aktion.

  • string: Wert für die angegebene Aktion.

LB-Richtlinie

**Ausdruck:**

add lb policy <name> <rule> <action> <undefaction>

**Beispiel:**

add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

Parameter:

  • name: Name der Richtlinie.

  • rule: Eine Regel besteht aus einem oder mehreren Ausdrücken. Die Regel ist mit einer Aktion verknüpft, die ausgeführt wird, wenn die Anforderung mit der Regel übereinstimmt.

  • action: DROP, NOLBACTION und RESET werden unterstützt.

  • undefaction: Die NetScaler-Appliance generiert ein undefiniertes Ereignis (UNDEF-Ereignis), wenn eine Anforderung nicht mit einer Richtlinie übereinstimmt. Sie können den Befehl set lb param -undefAction <action> verwenden, um die undefinierte Aktion festzulegen. Sie können diese Aktionen einem undefinierten Ereignis zuweisen: DROP, NOLBACTION und RESET.

Betrachten wir ein Beispiel, in dem Sie eine LB-Aktion, eine LB-Richtlinie, hinzufügen und die Richtlinie wie folgt an einen virtuellen Lastausgleichsserver (vs1) binden:

add lb action act1 -type SELECTIONORDER -value 3 1 2

add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

bind lb vserver vs1 -policyName pol1 -priority 10

Die Regel wählt den Clientdatenverkehr aus, der der IP-Adresse 8.8.8.8 entspricht und sendet diesen Datenverkehr an vs1. Der Aktionstyp LB (SELECTIONORDER) definiert die Auswahlreihenfolge für Dienste. Nachdem Sie die LB-Richtlinie an vs1 gebunden haben und wenn vs1 den Clientdatenverkehr von der IP-Adresse 8.8.8.8 empfängt, werden die Dienste in der folgenden Reihenfolge ausgewählt:

  1. Der virtuelle Server (vs1) wählt Dienste in Satz 3 (s5 und s6) mit der Prioritätsreihenfolge 3 aus.

  2. Wenn alle Dienste in Satz 3 DOWN sind, wählt vs1 Satz 1 (s1 und s2) mit der Prioritätsreihenfolge 2 aus.

  3. Wenn alle Dienste in Satz 3 und Satz 2 ausgefallen sind, wählt der vs1 Satz 1 (s1 und s2) mit der Reihenfolge 1.

Konfigurieren der Prioritätsreihenfolge für Load Balancing-Dienste mit LB-Richtlinienbefehlen über die CLI

Um die Prioritätsreihenfolge für Lastausgleichsdienste über LB-Richtlinienbefehle zu konfigurieren, geben Sie an der Eingabeaufforderung Folgendes ein:

  1. Fügt eine LB-Aktion hinzu.

    add lb action act1 -type SELECTIONORDER -value 3 1 2

  2. Eine LB-Richtlinie hinzufügen.

    add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

  3. Fügen Sie einen virtuellen LB-Server hinzu.

    add lb vserver vs1 HTTP 1.1.1.1 80

  4. Binden Sie die LB-Richtlinie an den virtuellen LB-Server.

    bind lb vs vs1 -policyName pol1 -priority 10

  5. LB-Dienste hinzufügen.

    add service s[1-6] 2.2.2.[1-6] HTTP 80

  6. Legen Sie die Reihenfolge fest und binden Sie die Dienste an den virtuellen LB-Server.

    bind lb vserver vs1 s1 -order 1

    bind lb vserver vs1 s2 -order 1

    bind lb vserver vs1 s3 -order 2

    bind lb vserver vs1 s4 -order 2

    bind lb vserver vs1 s5 -order 3

    bind lb vserver vs1 s6 -order 3

Konfigurieren der Prioritätsreihenfolge für Lastausgleichsdienste mit den Befehlen der LB-Richtlinie über die GUI

Voraussetzungen:

  • Sie haben einen virtuellen Lastausgleichsserver erstellt.
  • Sie haben Dienste erstellt.

Schritt 1 — Erstellen einer LB-Aktion:

  1. Navigieren Sie zu AppExpert > LB > Aktionen.

  2. Klicken Sie inLB-AktionenaufHinzufügen.

  3. GebenSie im Dialogfeld LB-Aktionen erstellen Werte für die folgenden Parameter an:

    • Name der Aktion
    • Typ
    • Wert

      Hinweis:

      Die Zahlen im Feld Wertsind durch ein Leerzeichen getrennt.

  4. Klicken Sie auf Erstellen.

Schritt 2 — Erstellen einer LB-Richtlinie:

  1. Navigieren Sie zu AppExpert > LB > Richtlinien.

  2. Klicken Sie in denLB-RichtlinienaufHinzufügen.

  3. GebenSie im Dialogfeld LB-Richtlinien erstellen Werte für die folgenden Parameter an:

    • Vorname: pol 1
    • Aktion: act 1
    • Aktion mit undefiniertem Ergebnis: NOLBACTION
    • Ausdruck: CLIENT.IP.SRC.EQ (8.8.8.8)

    LB-Richtlinie hinzufügen

  4. Klicken Sie aufErstellen.

Schritt 3 — Binden Sie die LB-Richtlinie an den virtuellen LB-Server:

  1. Navigieren Sie zuTraffic Management > LB > Virtuelle Server, und doppelklicken Sie auf den virtuellen Server.

  2. Klicken Sie in“Erweiterte Einstellungen” aufRichtlinien.

  3. Klicken Sie im AbschnittRichtlinienauf das Pluszeichen (+).

  4. Geben Sie im Dialogfeld Typ wählen Werte für die folgenden Parameter an:

    • Richtlinie wählen: LB
    • Typ wählen: Anfrage
  5. Klicken Sie auf Bindung hinzufügen.

  6. Geben Sie im Dialogfeld Richtlinienbindung Werte für die folgenden Parameter an:

    • Richtlinie auswählen
    • Priorität
    • Gehe zu Expression
    • LabelType aufrufen
  7. Klicken Sie auf Bind.

Schritt 4 — Prioritätsreihenfolge für Lastausgleichsdienste konfigurieren:

Informationen zum Konfigurieren der Prioritätsreihenfolge für Lastausgleichsdienste finden Sie im Abschnitt Konfigurieren der Prioritätsreihenfolge für Lastausgleichsdienste über die GUI.

Persistenzeinstellungen für Dienste

Wenn Persistenz für einen Dienst konfiguriert ist, wird standardmäßig immer Persistenz bevorzugt.

Stellen Sie sich zum Beispiel einen Dienst mit konfigurierter Persistenz und Prioritätsreihenfolge 1 vor. Wenn ein Dienst mit der Prioritätsreihenfolge 0 AKTIV ist, wird immer der Dienst mit der Prioritätsreihenfolge 1 bevorzugt.

Sie können dieses Standardverhalten jedoch mit dem folgenden CLI-Befehl überschreiben:

set lb param –overridePersistencyforOrder <YES/NO>

Betrachten wir das folgende Beispiel:

Eine Reihe von Diensten ist an einen virtuellen Server (vs1) mit der folgenden Prioritätsreihenfolge gebunden:

  • Set 1 (s1, s2) bound to vs1 – order 1 

  • Set 2 (s3, s4) bound to vs1 – order 2 

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um die Persistenz zu überschreiben:

set lb parameter -overridePersistencyforOrder YES

Wenn Satz 1 (Dienste mit Persistenz sind konfiguriert) DOWN ist, dann behandeln Set 2 Dienste alle Anforderungen, bis die Dienste von Satz 1 UP sind. Ein Persistenzeintrag für Priorität 2 wird erstellt.

Nehmen wir an, dass die Set-1-Dienste nach einiger Zeit aktiv sind. Jetzt sind sowohl Set 1- als auch Set 2-Dienste UP, um die Anforderungen zu bearbeiten. In diesem Szenario werden neue Lastausgleichsentscheidungen getroffen, da Dienstleistungen mit höherem Auftrag in Betrieb sind. Der Persistenzeintrag wird mit einem neuen Load-Balancing-Eintrag überschrieben.

Priorität umschalten

Mit der Funktion zum Umschalten der Priorität können Sie während des Versionsupgrades für einen Dienst mit einer höheren Priorität den gesamten Datenverkehr auf einen Dienst mit niedriger Priorität umschalten. Sie können die folgenden Befehle verwenden, um die Priorität umzuschalten:

  • set lb vserver -toggleorder<Ascending/Descending>

  • set lb vserver v1 -orderthreshold 80

Betrachten wir zum Beispiel, dass es zwei Dienste mit den folgenden Prioritäten gibt:

  • Service 1- order 0
  • Service 2 – order 1

Standardmäßig verarbeitet Dienst 1 den gesamten Datenverkehr. Wenn Dienst 1 aktualisiert werden muss, muss der Datenverkehr zu Dienst 2 umgeleitet werden.

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die Priorität umzuschalten:

set lb vserver –toggleorder Descending

Standardmäßig hat 0 eine höhere Priorität. Nach dem Umschalten der Priorität wird 1 jedoch als höhere Priorität betrachtet. Wenn für den Dienst ein Persistenzeintrag vorhanden ist, wird das Verhalten der Persistenzeinstellung wie im Abschnitt Persistenzeinstellungen für Dienste erläutert.