Architektur

Das folgende Diagramm veranschaulicht die Architektur des automatischen Skalierungs-Features mit DNS als Traffic-Distributor.

AWS-Autoscale-Architektur-NLB

Das folgende Diagramm veranschaulicht die Architektur des automatischen Skalierungs-Features mit NLB als Traffic-Verteiler.

AWS-Autoscale-Architektur-NLB

Citrix Application Delivery Management (ADM)

Citrix Application Delivery Management ist eine webbasierte Lösung zur Verwaltung aller Citrix ADC Bereitstellungen, die lokal oder in der Cloud bereitgestellt werden. Mit dieser Cloud-Lösung können Sie die gesamte globale Anwendungsbereitstellungsinfrastruktur über eine einzige, einheitliche und zentrale cloudbasierte Konsole verwalten, überwachen und beheben. Citrix Application Delivery Management (ADM) bietet alle Funktionen, die zum schnellen Einrichten, Bereitstellen und Verwalten der Anwendungsbereitstellung in Citrix ADC Bereitstellungen erforderlich sind, sowie umfassende Analysen zu Anwendungsstatus, Leistung und Sicherheit.

Die Autoscale-Gruppen werden in Citrix ADM erstellt, und die Citrix ADC VPX Instanzen werden von Citrix ADM bereitgestellt. Die Anwendung wird dann über StyleBooks in Citrix ADM bereitgestellt.

Verkehrsverteiler (NLB oder DNS/Route53)

NLB oder DNS/Route53 wird verwendet, um den Datenverkehr auf alle Knoten in einer Autoscale-Gruppe zu verteilen. Weitere Informationen finden Sie unter Autoscale Traffic-Verteilungsmodi.

Citrix ADM kommuniziert mit dem Traffic-Distributor, um die Anwendungsdomäne und die IP-Adressen der virtuellen Lastausgleichsserver zu aktualisieren, die die Anwendung im Frontend verwenden.

Citrix ADM Gruppe mit automatischer Skalierung

Autoscale-Gruppe ist eine Gruppe von Citrix ADC Instanzen, die Anwendungen als einzelne Entität Lastausgleich auslösen und basierend auf den konfigurierten Schwellenwertparameterwerten die automatische Skalierung auslösen.

Citrix ADC Cluster

Ein Citrix ADC-Cluster ist eine Gruppe von Citrix ADC VPX-Instanzen, und jede Instanz wird als Knoten bezeichnet. Der Clientdatenverkehr wird über die Knoten verteilt, um hohe Verfügbarkeit, hohen Durchsatz und Skalierbarkeit zu gewährleisten.

Hinweis:

  • Entscheidungen zur automatischen Skalierung werden auf Clusterebene und nicht auf Knotenebene getroffen.
  • Unabhängige Cluster werden in verschiedenen Availability Zones gehostet und daher ist die Unterstützung für einige der Shared State Features begrenzt.

    Persistenzsitzungen wie Quell-IP-Persistenz und andere mit Ausnahme der Cookie-basierten Persistenz können nicht über Cluster gemeinsam genutzt werden. Alle statuslosen Features wie Load Balancing-Methoden funktionieren jedoch in den verschiedenen Availability Zones erwartungsgemäß.

AWS-Gruppen für automatische Skalierung

AWS Auto Scaling Group ist eine Sammlung von EC2-Instanzen, die ähnliche Merkmale aufweisen und für die Zwecke der Instanzskalierung und -verwaltung als logische Gruppierung behandelt werden.

AWS-Verfügbarkeitszonen

AWS Availability Zone ist ein isolierter Standort innerhalb einer Region. Jede Region besteht aus mehreren Availability Zones. Jede Verfügbarkeitszone gehört zu einer einzelnen Region.

Verkehrsverteilungsmodi

Wenn Sie Ihre Anwendungsbereitstellung in die Cloud verschieben, wird die automatische Skalierung Teil der Infrastruktur. Wenn die Anwendungen mithilfe der automatischen Skalierung skalieren oder skalieren, müssen diese Änderungen an den Client weitergegeben werden. Diese Weitergabe wird mittels DNS-basierter oder NLB-basierter Autoskalierung erreicht.

NLB-basierte automatische Skalierung

Im NLB-basierten Bereitstellungsmodus ist die Verteilungsebene für die Clusterknoten der AWS-Netzwerklastenausgleich.

Bei NLB-basierter Autoskalierung wird pro Verfügbarkeitszone nur eine statische IP-Adresse angeboten. Dies ist die öffentliche IP-Adresse, die zu route53 hinzugefügt wird und die Backend-IP-Adressen können privat sein. Bei dieser öffentlichen IP-Adresse arbeitet jede neue Citrix ADC Instanz, die während der automatischen Skalierung bereitgestellt wird, mit privaten IP-Adressen und erfordert keine zusätzlichen öffentlichen IP-Adressen.

Verwenden Sie die NLB-basierte automatische Skalierung, um TCP-Datenverkehr zu verwalten. Verwenden Sie DNS-basierte automatische Skalierung, um UDP-Datenverkehr zu verwalten.

DNS-basierte automatische Skalierung

Bei der DNS-basierten Autoskalierung fungiert DNS als Verteilungsebene für die Citrix ADC Clusterknoten. Die Skalierungsänderungen werden an den Client weitergegeben, indem der Domänenname der Anwendung aktualisiert wird. Derzeit ist der DNS-Anbieter AWS Route53.

Hinweis

Bei DNS-basierter Autoskalierung erfordert jede Citrix ADC Instanz eine öffentliche IP-Adresse.

So funktioniert die automatische Skalierung

Das folgende Flussdiagramm veranschaulicht den automatischen Skalierungsworkflow.

Autoskalieren-Workflow

Citrix ADM erfasst Statistiken (CPU-Auslastung, Speicherauslastung, Durchsatz) aus den bereitgestellten Clustern in einem Zeitintervall von einer Minute.

Die Statistiken werden anhand der Konfigurationsschwellenwerte ausgewertet. Je nachdem, ob die Statistiken den maximalen Schwellenwert überschreiten oder unter dem Mindestschwellenwert arbeiten, wird Scale-Out bzw. Scale-In ausgelöst.

  • Wenn ein Scale-Out ausgelöst wird:

    • Neue Knoten werden bereitgestellt.
    • Die Knoten sind mit dem Cluster verbunden und die Konfiguration wird vom Cluster mit dem neuen Knoten synchronisiert.
    • Die Knoten werden bei Citrix ADM registriert.
    • Die neuen Knoten IP-Adressen werden in DNS/NLB aktualisiert.

Wenn die Anwendung bereitgestellt wird, wird IPSet auf Clustern in jeder Verfügbarkeitszone erstellt, und die Domäne und die Instanz-IP-Adressen werden bei DNS/NLB registriert.

  • Wenn ein Scale-In ausgelöst wird:
    • Die IP-Adressen der zum Entfernen identifizierten Knoten werden entfernt.
    • Die Knoten werden vom Cluster getrennt, aufgehoben und dann von Citrix ADM abgemeldet.

Wenn die Anwendung entfernt wird, werden die Domäne und die Instanz-IP-Adressen von DNS/NLB abgemeldet und das IPSet wird gelöscht.

Beispiel

Beachten Sie, dass Sie eine Autoskalierungsgruppe namens asg_arn in einer einzigen Verfügbarkeitszone mit der folgenden Konfiguration erstellt haben.

  • Schwellenwertparameter — Speicherauslastung
  • Mindestgrenze: 40
  • Höchstgrenze: 85
  • Wiedergabezeit: 3 Minuten
  • Abklingzeit — 10 Minuten
  • Zeitüberschreitung für die Entleerung der Verbindung — 10 Minuten
  • TTL-Zeitüberschreitung — 60 Sekunden

Nachdem die Autoscale-Gruppe erstellt wurde, werden Statistiken aus der Autoscale-Gruppe gesammelt. Die Richtlinie für die automatische Skalierung wird außerdem ausgewertet, ob ein Ereignis für die automatische Skalierung ausgeführt wird und wenn eine automatische Skalierung ausgeführt wird, wartet, bis dieses Ereignis abgeschlossen ist, bevor die Statistiken erfasst werden.

AutoScale-Beispiel

Ablauf der Ereignisse:

  • T1 und T2: Die Speicherbelegung überschreitet den maximalen Schwellenwert.
  • T3 - Die Speichernutzung liegt unter den maximalen Schwellenwerten.
  • T6, T5, T4: Die Speichernutzung hat die maximale Grenzgrenze für drei Wiedergabezeiten nacheinander überschritten.

    • Ein Scale-Out wird ausgelöst.
    • Das Provisioning von Knoten erfolgt.
    • Die Abklingzeit ist gültig.
  • T7 — T16: Die automatische Skalenauswertung wird für diese Verfügbarkeitszone von T7 bis T16 übersprungen, da die Abkühlperiode wirksam ist.

  • T18, T19, T20 - Die Speichernutzung hat die Mindestschwellengrenze für drei Wiedergabezeiten nacheinander überschritten.
    • Scale-In wird ausgelöst.
    • Die Zeitüberschreitung für die Ablaufverbindung ist wirksam.
    • IP-Adressen werden vom DNS/NLB entlastet.
  • T21 — T30: Die automatische Skalenauswertung wird für diese Verfügbarkeitszone von T21 bis T30 übersprungen, da das Zeitlimit für die Ablaufverbindung wirksam ist.

  • T31
    • Bei der DNS-basierten Autoskalierung ist TTL wirksam.
    • Bei NLB-basierter Autoskalierung erfolgt die Aufhebung der Bereitstellung der Instanzen.
  • T32
    • Bei der NLB-basierten Autoskalierung beginnt die Auswertung der Statistiken.
    • Bei der DNS-basierten automatischen Skalierung erfolgt die Aufhebung der Bereitstellung der Instanzen.
  • T33: Für die DNS-basierte Autoskalierung beginnt die Auswertung der Statistiken.