Citrix ADC

Konfigurieren der automatischen domänenbasierten Dienstgruppenskalierung

Eine domänenbasierte Dienstgruppe besteht aus Mitgliedern, deren IP-Adressen erhalten werden, indem die Domänennamen von Servern aufgelöst werden, die an die Dienstgruppe gebunden sind. Die Domänennamen werden von einem Nameserver aufgelöst, dessen Details Sie auf der Appliance konfigurieren. Eine domänenbasierte Dienstgruppe kann auch IP-adressbasierte Mitglieder enthalten.

Der Prozess der Namensauflösung für einen domänenbasierten Server kann mehr als eine IP-Adresse zurückgeben. Die Anzahl der IP-Adressen in der DNS-Antwort wird durch die Anzahl der Adresseinträge (A) bestimmt, die für den Domänennamen auf dem Nameserver konfiguriert sind. Selbst wenn der Namensauflösungsprozess mehrere IP-Adressen zurückgibt, ist nur eine IP-Adresse an die Dienstgruppe gebunden. Um eine Dienstgruppe nach oben zu skalieren oder zu skalieren, müssen Sie zusätzliche domänenbasierte Server manuell an und von der Dienstgruppe binden bzw. aufheben.

Sie können jedoch eine domänenbasierte Dienstgruppe so konfigurieren, dass sie automatisch auf der Grundlage der vollständigen IP-Adressen skaliert, die von einem DNS-Nameserver für einen domänenbasierten Server zurückgegeben werden. Um die automatische Skalierung zu konfigurieren, aktivieren Sie beim Binden eines domänenbasierten Servers an eine Dienstgruppe die Option Automatische Skalierung. Im Folgenden finden Sie die Schritte zum Konfigurieren einer domänenbasierten Dienstgruppe, die automatisch skaliert:

  • Fügen Sie einen Nameserver zum Auflösen von Domänennamen hinzu. Weitere Hinweise zum Konfigurieren eines Nameservers auf der Appliance finden Sie unterHinzufügen eines Nameservers.
  • Fügen Sie einen domänenbasierten Server hinzu. Hinweise zum Hinzufügen eines domänenbasierten Servers finden Sie unterHinzufügen eines Servers.
  • Fügen Sie eine Dienstgruppe hinzu, und ordnen Sie den domänenbasierten Server der Dienstgruppe zu, wobei die Option Autoscale auf DNS festgelegt ist. Hinweise zum Hinzufügen einer Servicegruppe finden Sie unterKonfigurieren von Dienstgruppen.

Wenn ein domänenbasierter Server an eine Dienstgruppe gebunden ist und die Option für die automatische Skalierung auf der Bindung festgelegt ist, werden automatisch ein UDP-Monitor und ein TCP-Monitor erstellt und an den domänenbasierten Server gebunden. Die beiden Monitore fungieren als Resolver. Der TCP-Monitor ist standardmäßig deaktiviert, und die Appliance verwendet den UDP-Monitor, um DNS-Abfragen an den Nameserver zu senden, um den Domänennamen aufzulösen. Wenn die DNS-Antwort abgeschnitten ist (das TC-Flag auf 1 gesetzt ist), greift die Appliance auf TCP zurück und sendet mithilfe des TCP-Monitors die DNS-Abfragen über TCP. Danach verwendet die Appliance weiterhin nur den TCP-Monitor.

Die DNS-Antwort vom Nameserver kann mehrere IP-Adressen für den Domänennamen enthalten. Wenn die Option für die automatische Skalierung festgelegt ist, fragt die Appliance jede der IP-Adressen mithilfe des Standardmonitors ab und schließt dann nur die IP-Adressen in die Dienstgruppe ein, die hoch- und verfügbar sind. Nach Ablauf der IP-Adressdatensätze, wie durch ihre Time-to-Live (TTL) -Werte definiert, fragt der UDP-Monitor (oder der TCP-Monitor, wenn die Appliance auf die Verwendung des TCP-Monitors zurückgegangen ist) den Nameserver nach Domänenauflösung ab und schließt alle neuen IP-Adressen in die Dienstgruppe ein. Wenn eine IP-Adresse, die Teil der Dienstgruppe ist, in der DNS-Antwort nicht vorhanden ist, entfernt die Appliance diese Adresse aus der Dienstgruppe, nachdem vorhandene Verbindungen mit dem Gruppenmitglied ordnungsgemäß geschlossen wurden. Ein Prozess, bei dem keine neuen Verbindungen mit dem Mitglied hergestellt werden können. Wenn ein Domänenname, der in der Vergangenheit erfolgreich aufgelöst wurde, zu einer NXDOMAIN-Antwort führt, werden alle dieser Domäne zugeordneten Dienstgruppenmitglieder entfernt.

Statische (auf IP-Adresse basierende) Mitglieder und dynamisch skalierende domänenbasierte Mitglieder können in einer Dienstgruppe koexistieren. Sie können Mitglieder mit unterschiedlichen Domänennamen auch mit der Option für die automatische Skalierung an eine Dienstgruppe binden. Jeder Domänenname, der einer Dienstgruppe zugeordnet ist, muss jedoch innerhalb der Dienstgruppe eindeutig sein. Sie müssen die Option für die automatische Skalierung für jeden domänenbasierten Server aktivieren, den Sie für die automatische Skalierung von Dienstgruppen verwenden möchten. Wenn eine IP-Adresse einer oder mehreren Domänen gemeinsam ist, wird die IP-Adresse der Dienstgruppe nur einmal hinzugefügt.

Wichtig

  • Die automatische DNS-Skalierung wird in einer Clusterbereitstellung unterstützt.
  • Die Pfadüberwachung für Autoscale-Dienstgruppen wird in der Clusterbereitstellung nicht unterstützt.

So konfigurieren Sie eine Dienstgruppe für die automatische Skalierung mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die Dienstgruppe zu konfigurieren und die Konfiguration zu überprüfen:

add serviceGroup <serviceGroupName> -autoScale (YES | NO)

show serviceGroup <serviceGroupName>

Beispiel

Im folgenden Beispiel ist server1 ein domänenbasierter Server. Die DNS-Antwort enthält mehrere IP-Adressen. Fünf Adressen stehen zur Verfügung und werden der Servicegruppe hinzugefügt.

> add serviceGroup servGroup server1 80 -autoScale YES
 Done
> sh servicegroup servGroup
       servGroup - HTTP
        State: ENABLED  Monitor Threshold : 0
              . . .
              . . .
        1)   192.0.2.31:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        2)   192.0.2.32:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        3)   192.0.2.36:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        4)   192.0.2.55:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        5)   192.0.2.80:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.
 Done

So konfigurieren Sie eine Dienstgruppe für die automatische Skalierung mit dem Konfigurationsdienstprogramm

  1. Navigieren Sie zu Traffic Management > Load Balancing > Service Groups.
  2. Erstellen Sie eine Dienstgruppe, und legen Sie den automatischen Skalierungsmodus auf DNS fest.

TTL-Werte überschreiben

Hinweis: Diese Option wird von Citrix ADC 12.1 Build 51.xx und höher unterstützt.

Die Citrix ADC Appliance ist so konfiguriert, dass der DNS-Server regelmäßig nach Aktualisierungen im SRV-Eintrag abfragt, die der Anwendung während des Programmstarts zugeordnet sind. Standardmäßig hängt die Periodizität für diese Abfrage von der im SRV-Datensatz veröffentlichten TTL ab. In Microservice- oder Cloud-World-Anwendungen ändern sich die Bereitstellungen dynamischer. Daher müssen Proxys schneller Änderungen an der Anwendungsbereitstellung absorbieren. Daher wird empfohlen, den domänenbasierten Dienst-TTL-Parameter explizit auf einen Wert festzulegen, der niedriger ist als die TTL des SRV-Datensatzes und optimal für Ihre Bereitstellung ist. Sie können den TTL-Wert mit zwei Methoden überschreiben:

  • Beim Binden eines Mitglieds an die Servicegruppe
  • Festlegen des TTL-Werts global mithilfe des Befehls set lb parameter.

Wenn der TTL-Wert sowohl beim Binden des Dienstgruppenmitglieds als auch global konfiguriert ist, hat der beim Binden des Dienstgruppenmitglieds angegebene TTL-Wert Vorrang. Wenn der TTL-Wert weder beim Binden eines Dienstgruppenmitglieds noch auf globaler Ebene angegeben wird, wird das DBS-Überwachungsintervall vom TTL-Wert in der DNS-Antwort abgeleitet.

Überschreiben der TTL-Werte mit der CLI

  • Um den TTL-Wert während der Bindung zu überschreiben, geben Sie an der Eingabeaufforderung Folgendes ein:

     bind serviceGroup <serviceGroupName> (<serverName> [-dbsTTL <secs>])
    

    Beispiel:

     bind servicegroup svc_grp_1 web_serv -dbsTTL 10
    
  • Um den TTL-Wert global zu überschreiben, geben Sie an der Eingabeaufforderung Folgendes ein:

     set lb parameter [-dbsTTL <secs>]
    

    Beispiel:

     set lb parameter -dbsTTL 15
    

Überschreiben der TTL-Werte mit der GUI

So überschreiben Sie den TTL-Wert während der Bindung:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Service Groups.

  2. Wählen Sie auf der Seite Dienstgruppen die von Ihnen erstellte Dienstgruppe aus, und klicken Sie auf Bearbeiten .

  3. Klicken Sie auf der Seite Lastausgleichsdienstgruppen auf Dienstgruppenmitglieder .

  4. Wählen Sie auf der Seite Bindung von Dienstgruppenmitgliedern den Server aus, den Sie erstellt haben, und klicken Sie auf Bearbeiten .

  5. Geben Sie unter Domänenbasierter Dienst-TTLden TTL-Wert ein.

So überschreiben Sie den TTL-Wert auf globaler Ebene:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Load Balancing Parameter ändern .

  2. Geben Sie unter Domänenbasierter Dienst-TTLden TTL-Wert ein.

Hinweis: Wenn der domänenbasierte Server-TTL-Wert auf 0 gesetzt ist, wird der TTL-Wert aus dem Datenpaket verwendet.

Angeben verschiedener Nameserver für Dienstgruppen- und Domänennamensbindungen

Hinweis: Diese Option wird von Citrix ADC 12.1 Build 51.xx und höher unterstützt.

Sie können verschiedene Nameserver für verschiedene Domänennamen in einer bestimmten Gruppe konfigurieren. Das Festlegen des NameServer-Parameters ist optional, während ein DBS-Server an die Dienstgruppe gebunden wird. Wenn beim Binden eines Mitglieds an die Dienstgruppe kein Nameserver angegeben wird, wird der global konfigurierte Nameserver berücksichtigt.

Angeben von Namensservern während der Bindung eines Servers an Servicegruppen mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind serviceGroup <serviceGroupName> (<serverName> [-nameServer <ip_addr>] [-dbsTTL <secs>])

Beispiel:

bind servicegroup svc_grp_1 web_serv  -ns.nameserver.com 10.102.27.155 -dbsTTL 10

Angeben von Namensservern während der Bindung eines Servers an Servicegruppen mit der GUI

  1. Navigieren Sie zu Traffic Management > Load Balancing > Service Groups.

  2. Wählen Sie auf der Seite Dienstgruppen die von Ihnen erstellte Dienstgruppe aus, und klicken Sie auf Bearbeiten .

  3. Klicken Sie auf der Seite Lastausgleichsdienstgruppen auf Dienstgruppenmitglieder .

  4. Wählen Sie auf der Seite Bindung von Dienstgruppenmitgliedern den Server aus, den Sie erstellt haben, und klicken Sie auf Bearbeiten .

  5. Geben Sie unter Name Serverden Nameserver-Namen an, an den die Abfrage für gebundene Domäne gesendet werden muss.

Konfigurieren der automatischen domänenbasierten Dienstgruppenskalierung