PERF02-BP05 Dynamisches Skalieren von Datenverarbeitungsressourcen - AWS Well-Architected Framework

PERF02-BP05 Dynamisches Skalieren von Datenverarbeitungsressourcen

Nutzen Sie die Elastizität der Cloud, um die Datenverarbeitungsressourcen dynamisch nach oben oder unten zu skalieren, um Ihren Bedürfnissen zu entsprechen und eine Über- oder Unterdimensionierung von Kapazitäten für den Workload zu vermeiden.

Typische Anti-Muster:

  • Sie reagieren auf Alarme, indem Sie die Kapazität manuell erhöhen.

  • Sie verwenden dieselben Dimensionierungsrichtlinien (in der Regel statische Infrastruktur) wie bei On-Premises.

  • Sie belassen die erhöhte Kapazität nach dem Hochskalieren, anstatt wieder herunterzuskalieren.

Vorteile der Nutzung dieser bewährten Methode: Durch das Konfigurieren und Testen der Elastizität von Rechenressourcen können Sie Geld sparen, Leistungsbenchmarks einhalten und die Zuverlässigkeit verbessern, wenn sich der Datenverkehr ändert.

Risikostufe bei fehlender Befolgung dieser bewährten Methode: Hoch

Implementierungsleitfaden

AWS bietet Ihnen die Flexibilität, Ressourcen dynamisch durch verschiedene Skalierungsmechanismen nach oben oder unten zu skalieren, um Bedarfsänderungen gerecht zu werden. In Kombination mit Datenverarbeitungsmetriken ermöglicht eine dynamische Skalierung Workloads, automatisch auf Änderungen zu reagieren und die optimalen Datenverarbeitungsressourcen zu nutzen, um die Zielvorgabe zu erreichen.

Sie können verschiedene Ansätze nutzen, um das Angebot an Ressourcen auf die Nachfrage abzustimmen.

  • Ansatz zur Zielverfolgung: Überwachen Sie Ihre Skalierungsmetriken und erhöhen oder verringern Sie die Kapazität automatisch Ihrem Bedarf entsprechend.

  • Vorausschauende Skalierung: Skalieren Sie in Erwartung täglicher und wöchentlicher Trends.

  • Zeitplanbasierter Ansatz: Legen Sie Ihren eigenen Skalierungszeitplan entsprechend vorhersehbaren Laständerungen fest.

  • Skalierung von Services: Wählen Sie Services (wie Serverless), die auf automatische Skalierung ausgelegt sind.

Sie müssen sicherstellen, dass Workload-Bereitstellungen sowohl Hoch- als auch Herunterskalierungsereignisse verarbeiten können.

Implementierungsschritte

  • Datenverarbeitungs-Instances, Container und Funktionen bieten Mechanismen für Elastizität, sei es in Kombination mit AutoScaling oder als Merkmal des Service. Hier finden Sie einige Beispiele für automatische Skalierungsmechanismen:

    Autoscaling-Mechanismus Aktion
    Amazon EC2 Auto Scaling Zur Sicherstellung, dass die richtige Anzahl verfügbarer Amazon EC2 -Instances vorhanden ist, um die Benutzerlast für Ihre Anwendung zu bewältigen.
    Application Auto Scaling Zur automatischen Skalierung der Ressourcen für einzelne AWS-Services über Amazon EC2 hinaus, wie AWS Lambda -Funktionen oder Amazon Elastic Container Service (Amazon ECS) -Services.
    Kubernetes Cluster Autoscaler/Karpenter Zur automatischen Skalierung von Kubernetes-Clustern.
  • Das Skalieren wird häufig im Zusammenhang mit Datenverarbeitungsservices wie Amazon EC2-Instances oder AWS Lambda-Funktionen genannt. Denken Sie auch daran, die Konfiguration von nicht Daten verarbeitenden Services in Betracht zu ziehen, z. B. AWS Glue, um die Nachfrage zu decken.

  • Stellen Sie sicher, dass die Metriken für die Skalierung den Merkmalen des bereitgestellten Workloads entsprechen. Wenn Sie eine Anwendung zur Video-Transkodierung bereitstellen, wird eine CPU-Auslastung von 100 % erwartet, weshalb dies nicht die Hauptmetrik sein sollte. Verwenden Sie stattdessen die Tiefe der Aufgabenwarteschlange für die Transkodierung. Sie können eine benutzerdefinierte Metrik für Ihre Skalierungsrichtlinie verwenden, falls erforderlich. Beachten Sie zur Auswahl der geeigneten Metriken die folgenden Hinweise zu Amazon EC2:

    • Es sollte sich um eine gültige Nutzungsmetrik handeln, die beschreibt, wie stark eine Instance genutzt wird.

    • Der Metrikwert muss proportional zur Anzahl der Instances in der Auto Scaling-Gruppe steigen oder sinken.

  • Vergewissern Sie sich, dass Sie dynamische Skalierung anstelle von manueller Skalierung für Ihre Auto Scaling-Gruppe verwenden. Weiterhin empfehlen wir, dass Sie Zielverfolgungs-Skalierungsrichtlinien für Ihre dynamische Skalierung verwenden.

  • Prüfen Sie, ob Workload-Bereitstellungen mit beiden Skalierungen (nach oben und unten) umgehen können. Beispielsweise können Sie den Aktivitätsverlauf verwenden, um eine Skalierungsaktivität für eine Auto Scaling-Gruppe zu verifizieren.

  • Evaluieren Sie Ihren Workload auf vorhersagbare Muster und skalieren Sie proaktiv, wenn Sie vorhergesagte und geplante Änderungen der Nachfrage erwarten. Mit der prädiktiven Skalierung können Sie die Notwendigkeit einer Überbereitstellung von Kapazität vermeiden. Weitere Details finden Sie unter Vorausschauende Skalierung mit Amazon EC2 Auto Scaling.

Ressourcen

Zugehörige Dokumente:

Zugehörige Videos:

Zugehörige Beispiele: