Autoscale-Architektur für AWS

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

NetScaler ADM

NetScaler ADM ist eine webbasierte Lösung für die Verwaltung aller NetScaler-Bereitstellungen, die on-premises 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. NetScaler ADM bietet alle Funktionen, die für die schnelle Einrichtung, Bereitstellung und Verwaltung der Anwendungsbereitstellung in NetScaler-Bereitstellungen erforderlich sind, sowie umfassende Analysen des Anwendungszustands, der Leistung und der Sicherheit.

Die Autoscale-Gruppen werden in NetScaler ADM erstellt, und die NetScaler VPX-Instanzen werden von NetScaler ADM bereitgestellt. Die Anwendung wird dann über StyleBooks in NetScaler 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.

Das NetScaler ADM kommuniziert mit dem Verkehrsverteiler, um die Anwendungsdomäne und die IP-Adressen der virtuellen Lastausgleichsserver zu aktualisieren, die die Anwendung im Vordergrund stellen.

NetScaler ADM Gruppe für automatische Skalierung

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

NetScaler Cluster

静脉NetScaler-Cluster这Gruppe冯NetScaler 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

  • Autoscaling-Entscheidungen 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 clusterübergreifend gemeinsam genutzt werden. Alle statuslosen Features wie Load Balancing-Methoden funktionieren jedoch in den verschiedenen Availability Zones erwartungsgemäß.

AWS Auto Scaling-Gruppen

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.

Modi der Verkehrsverteilung

Wenn Sie Ihre Anwendungsbereitstellung in die Cloud verlagern, wird Autoscaling 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-basiertes Autoscaling

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 route53 hinzugefügt wird, und die Backend-IP-Adressen können privat sein. Bei dieser öffentlichen IP-Adresse arbeitet jede neue NetScaler-Instanz, die während der automatischen Skalierung bereitgestellt wird, mit privaten IP-Adressen und erfordert keine zusätzlichen öffentlichen IP-Adressen.

Sie können NLB-basiertes Autoscaling verwenden, um sowohl TCP- als auch UDP-Datenverkehr zu verwalten.

DNS-basiertes Autoscaling

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

Hinweis

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

So funktioniert Autoscaling

Das folgende Flussdiagramm veranschaulicht den automatischen Skalierungsworkflow.

Autoskalieren-Workflow

Der NetScaler ADM sammelt Statistiken (CPU-Auslastung, Speichernutzung, Durchsatz) aus den von Autoscale 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 unterhalb des Minimalschwellenwerts operieren, wird Scale-Out bzw. Scale-In ausgelöst.

  • Wenn ein Scale-Out ausgelöst wird:

    • Neue Knoten werden bereitgestellt.
    • 死Knoten信德麻省民主党集群verbunden和死亡Konfiguration wird vom Cluster zum neuen Knoten synchronisiert.
    • Die Knoten sind bei NetScaler ADM registriert.
    • Die neuen Knoten IP-Adressen werden in DNS/NLB aktualisiert.

Wenn die Anwendung bereitgestellt wird, wirdIPsetauf Clustern in jeder Availability Zone 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 NetScaler ADM abgemeldet.

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

Beispiel

Beachten Sie, dass Sie eine Autoscale-Gruppe mit dem Namen asg_arn in einer einzelnen Availability Zone mit der folgenden Konfiguration erstellt haben.

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

Nachdem die Gruppe “Autoscale” erstellt wurde, werden Statistiken aus der Gruppe “Autoscale” gesammelt. Die Autoscale-Richtlinie wertet auch aus, ob ein Autoscale-Ereignis in Bearbeitung ist, und wenn eine Autoskalierung im Gange ist, wartet auf den Abschluss dieses Ereignisses, bevor die Statistiken gesammelt werden.

AutoScale-Beispiel

Reihenfolge 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 Schwellenwertgrenze nacheinander für drei Wiedergabezeitdauern überschritten.

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

  • T18, T19, T20 — Die Speichernutzung hat die Mindestschwellengrenze nacheinander für drei Wiedergabezeitdauern überschritten.
    • Scale-In wird ausgelöst.
    • Das Zeitlimit für die Drain-Verbindung ist in Kraft.
    • IP-Adressen werden vom DNS/NLB entlastet.
  • T21 — T30: Die Autoscale Skalenauswertung wird für diese Verfügbarkeitszone von T21 bis T30 übersprungen, da das Timeout der Drain-Verbindung in Kraft ist.

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