Citrix ADC

Konfigurieren der automatischen domänenbasierten Dienstgruppenskalierung

Eine domänenbasierte Dienstgruppe besteht aus Mitgliedern, deren IP-Adressen durch Auflösen der Domänennamen von Servern abgerufen 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 Mitglieder auf der Grundlage von IP-Adressen enthalten.

Der Prozess der Namensauflösung für einen domänenbasierten Server gibt möglicherweise mehr als eine IP-Adresse zurück. 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 Servicegruppe nach oben oder nach unten zu skalieren, müssen Sie andere domänenbasierte Server manuell an bzw. von der Servicegruppe binden und aufheben.

Sie können jedoch eine domänenbasierte Dienstgruppe so konfigurieren, dass sie automatisch basierend auf dem vollständigen Satz von IP-Adressen skaliert wird, der von einem DNS-Nameserver für einen domänenbasierten Server zurückgegeben wird. Um die automatische Skalierung zu konfigurieren, aktivieren Sie beim Binden eines domänenbasierten Servers an eine Dienstgruppe die automatische Skalierungsoption. 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 Informationen zum Konfigurieren eines Nameservers auf der Appliance finden Sie unter Hinzufügen eines Nameservers.
  • Fügen Sie einen domänenbasierten Server hinzu. Informationen zum Hinzufügen eines domänenbasierten Servers finden Sie unter Konfigurieren eines Serverobjekts.
  • Fügen Sie eine Dienstgruppe hinzu, und ordnen Sie den domänenbasierten Server der Dienstgruppe zu, wobei die Autoscale-Option auf DNS festgelegt ist. Informationen zum Hinzufügen einer Dienstgruppe finden Sie unter Konfigurieren 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 Namenserver zu senden, um den Domänennamen aufzulösen. Wenn die DNS-Antwort gekürzt wird (das TC-Flag auf 1 gesetzt ist), greift die Appliance auf TCP zurück und verwendet den TCP-Monitor, um die DNS-Abfragen über TCP zu senden. Danach verwendet die Appliance weiterhin nur den TCP-Monitor.

Die DNS-Antwort des Nameservers kann mehrere IP-Adressen für den Domainnamen enthalten. Wenn die automatische Skalierungsoption festgelegt ist, fragt die Appliance jede der IP-Adressen mithilfe des Standardmonitors ab und nimmt dann nur die IP-Adressen in die Dienstgruppe auf, die aktiv und verfügbar sind. Nachdem die IP-Adresseinträge, wie durch ihre Time-to-Live (TTL) -Werte definiert, ablaufen, fragt der UDP-Monitor (oder der TCP-Monitor, falls die Appliance wieder den TCP-Monitor verwendet hat) den Nameserver nach der Domänenauflösung ab und schließt alle neuen IP-Adressen in der 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 zum Gruppenmitglied ordnungsgemäß geschlossen wurden. In diesem Prozess können keine neuen Verbindungen mit dem Mitglied hergestellt werden. Wenn ein Domainname, der in der Vergangenheit erfolgreich aufgelöst wurde, zu einer NXDOMAIN-Antwort führt, werden alle mit dieser Domäne verknüpften Dienstgruppenmitglieder entfernt.

Statische (auf IP-Adressen basierende) Mitglieder und dynamisch skalierende domänenbasierte Mitglieder können in einer Dienstgruppe koexistieren. Sie können auch Mitglieder mit unterschiedlichen Domänennamen 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 automatische Skalierungsoption für jeden domänenbasierten Server aktivieren, den Sie für die automatische Dienstgruppenskalierung verwenden möchten. Wenn eine IP-Adresse einer oder mehreren Domänen gemeinsam ist, wird die IP-Adresse nur einmal zur Dienstgruppe hinzugefügt.

Wichtig

  • DNS Autoscale wird in einer Cluster-Bereitstellung unterstützt.
  • Die Pfadüberwachung für Autoscale-Dienstgruppen wird in der Cluster-Bereitstellung nicht unterstützt.

So konfigurieren Sie eine Dienstgruppe für die automatische Skalierung mithilfe 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>
<!--NeedCopy-->

Beispiel

Im folgenden Beispiel ist Server1 ein domänenbasierter Server. Die DNS-Antwort enthält mehrere IP-Adressen. Fünf Adressen sind verfügbar und werden der Servicegruppe hinzugefügt.

> add serviceGroup servGroup -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
<!--NeedCopy-->

So konfigurieren Sie eine Dienstgruppe für die automatische Skalierung mithilfe des Konfigurationsdienstprogramms

  1. Navigieren Sie zu Traffic Management > Load Balancing > Dienstgruppen.
  2. Erstellen Sie eine Dienstgruppe und setzen Sie den Autoscale-Modus auf DNS.

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 sie den DNS-Server während des Anwendungsstarts regelmäßig nach einem Update im SRV-Eintrag abfragt, der mit der Anwendung verknüpft ist. 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 Bereitstellungen dynamischer. Daher müssen Proxys Änderungen an der Anwendungsbereitstellung schneller aufnehmen. Daher wird Benutzern empfohlen, den TTL-Parameter des domänenbasierten Dienstes explizit auf einen Wert festzulegen, der niedriger als der SRV-Datensatz-TTL ist und für Ihre Bereitstellung optimal ist. Sie können den TTL-Wert mit zwei Methoden überschreiben:

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

Falls der TTL-Wert sowohl beim Binden des Dienstgruppenmitglieds als auch global konfiguriert wird, 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 beim Binden zu überschreiben, geben Sie an der Eingabeaufforderung Folgendes ein:

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

    Beispiel:

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

     set lb parameter [-dbsTTL <secs>]
     <!--NeedCopy-->
    

    Beispiel:

     set lb parameter -dbsTTL 15
     <!--NeedCopy-->
    

Überschreiben der TTL-Werte mit der GUI

Um den TTL-Wert beim Binden zu überschreiben:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Dienstgruppen.

  2. Wählen Sie auf der Seite Dienstgruppen die Dienstgruppe aus, die Sie erstellt haben, und klicken Sie auf Bearbeiten.

  3. Klicken Sie auf der Seite Load Balancing-Dienstgruppen 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 im Feld Domänenbasierter Dienst TTLden TTL-Wert ein.

Um den TTL-Wert auf globaler Ebene zu überschreiben:

  1. Navigieren Sie zu Verkehrsmanagement > Load Balancing > Load Balancing-Parameter ändern

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

Hinweis:

Wenn der TTL-Wert des domänenbasierten Servers auf 0 gesetzt ist, wird der TTL-Wert aus dem Datenpaket verwendet.

Festlegen verschiedener Nameserver für Dienstgruppen- und Domänennamenbindungen

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 Domainnamen in einer bestimmten Gruppe konfigurieren. Das Festlegen des NameServer-Parameters ist optional, während ein DBS-Server an die Dienstgruppe gebunden wird. Wenn kein Nameserver angegeben wird, während ein Mitglied an die Dienstgruppe gebunden wird, wird der global konfigurierte Nameserver berücksichtigt.

Angeben von Nameservern beim Binden eines Servers an Dienstgruppen mithilfe der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

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

Beispiel:

bind servicegroup svc_grp_1 web_serv  -ns.nameserver.com 10.102.27.155 -dbsTTL 10
<!--NeedCopy-->

Angabe von Nameservern beim Binden eines Servers an Dienstgruppen mithilfe der GUI

  1. Navigieren Sie zu Traffic Management > Load Balancing > Dienstgruppen.

  2. Wählen Sie auf der Seite Dienstgruppen die Dienstgruppe aus, die Sie erstellt haben, und klicken Sie auf Bearbeiten.

  3. Klicken Sie auf der Seite Load Balancing-Dienstgruppen 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 unterNameserver den Namen des Nameservers an, an den die Abfrage für die gebundene Domäne gesendet werden muss.

Konfigurieren der automatischen domänenbasierten Dienstgruppenskalierung