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 die 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 Datenverarbeitungsressourcen 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.
-
Prädiktive 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 Feature 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. -
Skalieren wird häufig im Zusammenhang mit Datenverarbeitungs-Services wie Amazon-EC2-Instances oder AWS Lambda-Funktionen behandelt. 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 der bereitgestellten Workload 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 bei Bedarf eine benutzerdefinierte Metrik
für Ihre Skalierungsrichtlinie verwenden. Beachten Sie bei der Wahl geeigneter Metriken die folgenden Hinweise für Amazon EC2: -
Es muss sich um eine gültige Nutzungsmetrik handeln, die beschreibt, wie stark eine Instance genutzt wird.
-
Der Wert der Metrik muss sich proportional zur Anzahl der Instances in der Gruppe von Amazon EC2 Auto Scaling erhöhen oder verringern.
-
-
Achten Sie darauf, für Ihre Gruppe von Amazon EC2 Auto Scaling die dynamische Skalierung anstelle der manuellen Skalierung zu verwenden. Außerdem empfiehlt es sich, bei der dynamischen Skalierung Skalierungsrichtlinien zur Zielverfolgung zu verwenden.
-
Prüfen Sie, ob Workload-Bereitstellungen mit beiden Skalierungen (nach oben und unten) umgehen können. Sie können beispielsweise den Aktivitätsverlauf verwenden, um eine Skalierungsaktivität für eine Gruppe von Amazon EC2 Auto Scaling zu überprüfen.
-
Evaluieren Sie Ihre 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äten vermeiden. Weitere Einzelheiten finden Sie unter Prädiktive Skalierung mit Amazon EC2 Auto Scaling
.
Ressourcen
Zugehörige Dokumente:
Zugehörige Videos:
-
AWS re:Invent 2023 – AWS Graviton: Das beste Preis-Leistungs-Verhältnis für Ihre AWS-Workloads
-
AWS re:Invent 2023 – New Amazon EC2 generative AI capabilities in AWS Management Console
-
AWS re:Invent 2023 – Smart savings: Amazon EC2 cost-optimization strategies
-
AWS re:Invent 2021 – Powering next-gen Amazon EC2: Deep dive on the Nitro System
Zugehörige Beispiele: