Erstellen Sie eine Richtlinie zur vorausschauenden Skalierung für Amazon ECS-Service Auto Scaling - Amazon Elastic Container Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie eine Richtlinie zur vorausschauenden Skalierung für Amazon ECS-Service Auto Scaling

Erstellen Sie eine Richtlinie zur vorausschauenden Skalierung, damit Amazon ECS die Anzahl der Aufgaben, die Ihr Service ausführt, auf der Grundlage historischer Daten erhöht oder verringert.

Anmerkung

Ein neuer Service muss Daten für mindestens 24 Stunden bereitstellen, bevor eine Prognose generiert werden kann.

  1. Zusätzlich zu den standardmäßigen IAM-Berechtigungen für die Erstellung und Aktualisierung von Services benötigen Sie zusätzliche Berechtigungen. Weitere Informationen finden Sie unter Für Amazon ECS Service Auto Scaling sind IAM-Berechtigungen erforderlich.

  2. Bestimmen Sie die Metriken, die für die Richtlinie verwendet werden sollen. Die folgenden Metriken sind verfügbar:

    • ECSServiceDurchschnitt CPUUtilization — Die durchschnittliche CPU-Auslastung, die der Service verwenden sollte.

    • ECSServiceAverageMemoryUtilization— Durchschnittliche Speicherauslastung, die der Service verwenden sollte.

    • ALBRequestCountPerTarget— Die durchschnittliche Anzahl von Anfragen pro Minute, die diese Aufgabe idealerweise erhalten sollte.

    Sie können alternativ eine benutzerdefinierte Metrik verwenden. Sie müssen die folgenden Werte definieren:

    • Last — eine Metrik, die die volle Auslastung Ihrer Anwendung genau wiedergibt und den Aspekt Ihrer Anwendung darstellt, der für die Skalierung am wichtigsten ist.

    • Skalierungsmetrik — der beste Indikator dafür, wie viel Auslastung für Ihre Anwendung ideal ist.

  3. Öffnen Sie die Konsole auf https://console.aws.amazon.com/ecs/Version 2.

  4. Wählen Sie auf der Cluster-Seite den Cluster aus.

  5. Wählen Sie auf der Seite mit den Cluster-Details im Abschnitt Dienste den Dienst aus.

    Die Seite mit den Servicedetails wird angezeigt.

  6. Wählen Sie Service Auto Scaling und dann Anzahl der Aufgaben festlegen aus.

  7. Wählen Sie unter Amazon ECS-Service Task Count die Option Auto Scaling verwenden aus.

    Der Abschnitt „Anzahl der Aufgaben“ wird angezeigt.

    1. Geben Sie für Mindestanzahl von Aufgaben die Untergrenze der Anzahl der Aufgaben ein, die Service Auto Scaling verwenden soll. Die gewünschte Anzahl wird diese Anzahl nicht unterschreiten.

    2. Geben Sie für Maximum die Obergrenze der Anzahl der Aufgaben ein, die Service Auto Scaling verwenden soll. Die gewünschte Anzahl wird diese Anzahl nicht überschreiten.

    3. Wählen Sie Speichern.

      Die Seite mit den Richtlinien wird angezeigt.

  8. Wählen Sie Skalierungsrichtlinie erstellen aus.

    Die Seite „Richtlinie erstellen“ wird angezeigt.

  9. Wählen Sie als Richtlinientyp Skalierung die Option Predictive Scaling aus.

  10. Geben Sie unter Policy name (Richtlinienname) einen Namen für diese Richtlinie ein.

  11. Wählen Sie für Metric Pair Ihre Metriken aus der Optionsliste aus.

    Wenn Sie Anzahl der Application Load Balancer pro Ziel auswählen, wählen Sie anschließend in Zielgruppe eine Zielgruppe aus. Die Anzahl der Application Load Balancer Balancer-Anfragen pro Ziel wird nur unterstützt, wenn Sie eine Application Load Balancer Balancer-Zielgruppe für Ihren Service hinzugefügt haben.

    Wenn Sie Benutzerdefiniertes Metrikpaar ausgewählt haben, wählen Sie einzelne Metriken aus den Listen für Load-Metrik und Scaling-Metrik aus.

  12. Geben Sie für Zielauslastung den Zielwert für den Prozentsatz der Aufgaben ein, die Amazon ECS verwalten soll. Service Auto Scaling skaliert Ihre Kapazität, bis die durchschnittliche Auslastung der Zielauslastung entspricht oder bis die von Ihnen angegebene maximale Anzahl von Aufgaben erreicht ist.

  13. Wählen Sie Skalierungsrichtlinie erstellen aus.

Gehen Sie AWS CLI wie folgt vor, um Richtlinien für die vorausschauende Skalierung für Ihren Amazon ECS-Service zu konfigurieren. Ersetzen Sie jeden user input placeholder durch Ihre Informationen.

Weitere Informationen zu den CloudWatch Metriken, die Sie angeben können, finden Sie PredictiveScalingMetricSpecificationin der Amazon EC2 Auto Scaling API-Referenz.

Beispiel 1: Eine Richtlinie zur vorausschauenden Skalierung mit vordefiniertem Speicher.

Im Folgenden finden Sie ein Beispiel für eine Richtlinie mit einer vordefinierten Speicherkonfiguration.

cat policy.json { "MetricSpecifications": [ { "TargetValue": 40, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ECSServiceMemoryUtilization" } } ], "SchedulingBufferTime": 3600, "MaxCapacityBreachBehavior": "HonorMaxCapacity", "Mode": "ForecastOnly" }

Das folgende Beispiel zeigt, wie die Richtlinie erstellt wird, indem der put-scaling-policyBefehl mit der angegebenen Konfigurationsdatei ausgeführt wird.

aws application-autoscaling put-scaling-policy \ --service-namespace ecs \ --region us-east-1 \ --policy-name predictive-scaling-policy-example \ --resource-id service/MyCluster/test \ --policy-type PredictiveScaling \ --scalable-dimension ecs:service:DesiredCount \ --predictive-scaling-policy-configuration file://policy.json

Bei Erfolg gibt dieser Befehl den ARN der Richtlinie zurück.

{ "PolicyARN": "arn:aws:autoscaling:us-east-1:012345678912:scalingPolicy:d1d72dfe-5fd3-464f-83cf-824f16cb88b7:resource/ecs/service/MyCluster/test:policyName/predictive-scaling-policy-example", "Alarms": [] }

Beispiel 2: Eine Richtlinie zur vorausschauenden Skalierung mit vordefinierter CPU.

Im Folgenden finden Sie ein Beispiel für eine Richtlinie mit einer vordefinierten CPU-Konfiguration.

cat policy.json { "MetricSpecifications": [ { "TargetValue": 0.00000004, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ECSServiceCPUUtilization" } } ], "SchedulingBufferTime": 3600, "MaxCapacityBreachBehavior": "HonorMaxCapacity", "Mode": "ForecastOnly" }

Das folgende Beispiel zeigt, wie die Richtlinie erstellt wird, indem der put-scaling-policyBefehl mit der angegebenen Konfigurationsdatei ausgeführt wird.

aws aas put-scaling-policy \ --service-namespace ecs \ --region us-east-1 \ --policy-name predictive-scaling-policy-example \ --resource-id service/MyCluster/test \ --policy-type PredictiveScaling \ --scalable-dimension ecs:service:DesiredCount \ --predictive-scaling-policy-configuration file://policy.json

Bei Erfolg gibt dieser Befehl den ARN der Richtlinie zurück.

{ "PolicyARN": "arn:aws:autoscaling:us-east-1:012345678912:scalingPolicy:d1d72dfe-5fd3-464f-83cf-824f16cb88b7:resource/ecs/service/MyCluster/test:policyName/predictive-scaling-policy-example", "Alarms": [] }