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.
Verwenden Sie geplante Aktionen, um Prognosewerte für Amazon ECS zu überschreiben
Manchmal haben Sie möglicherweise zusätzliche Informationen zu Ihren zukünftigen Anwendungsanforderungen, die bei der Prognoseberechnung nicht berücksichtigt werden können. Bei Prognoseberechnungen könnten beispielsweise die Aufgaben unterschätzt werden, die für eine bevorstehende Marketingveranstaltung erforderlich sind. Sie können geplante Aktionen verwenden, um die Prognose in zukünftigen Zeiträumen vorübergehend zu überschreiben. Die geplanten Aktionen können auf einer wiederkehrenden Basis oder zu einem bestimmten Zeitpunkt ausgeführt werden, wenn einmalige Nachfrageschwankungen auftreten.
Sie können beispielsweise eine geplante Aktion mit einer höheren Anzahl von Aufgaben als prognostiziert erstellen. Zur Laufzeit aktualisiert Amazon ECS die Mindestanzahl von Aufgaben in Ihrem Service. Da die vorausschauende Skalierung die Anzahl der Aufgaben optimiert, wird eine geplante Aktion mit einer Mindestanzahl von Aufgaben, die über den Prognosewerten liegt, berücksichtigt. Dadurch wird verhindert, dass die Anzahl der Aufgaben geringer als erwartet ausfällt. Um das Überschreiben der Prognose zu beenden, verwenden Sie eine zweite geplante Aktion, um die Mindestanzahl von Vorgängen auf die ursprüngliche Einstellung zurückzusetzen.
Im folgenden Verfahren werden die Schritte zum Überschreiben der Prognose in zukünftigen Zeiträumen erläutert.
Themen
Wichtig
In diesem Thema wird davon ausgegangen, dass Sie versuchen, die Prognose zu überschreiben, um auf eine höhere Kapazität als die prognostizierte Kapazität zu skalieren. Wenn Sie die Anzahl der Aufgaben vorübergehend verringern müssen, ohne dass dies durch eine Richtlinie zur vorausschauenden Skalierung beeinträchtigt wird, verwenden Sie stattdessen den Modus „Nur Prognose“. Im Modus „Nur Prognose“ generiert die prädiktive Skalierung zwar weiterhin Prognosen, die Anzahl der Aufgaben wird jedoch nicht automatisch erhöht. Anschließend können Sie die Ressourcennutzung überwachen und die Anzahl der Aufgaben nach Bedarf manuell verringern.
Schritt 1: (Optional) Analysieren von Zeitreihendaten
Beginnen Sie mit der Analyse der Prognose-Zeitreihendaten. Dies ist ein optionaler Schritt, aber es ist hilfreich, wenn Sie die Details der Prognose verstehen möchten.
-
Rufen Sie die Prognose ab
Nachdem die Prognose erstellt wurde, können Sie einen bestimmten Zeitraum in der Prognose abfragen. Ziel der Abfrage ist es, einen vollständigen Überblick über die Zeitreihendaten für einen bestimmten Zeitraum zu erhalten.
Ihre Abfrage kann Prognosedaten bis zwei Tage in die Zukunft enthalten. Wenn Sie die prädiktive Skalierung eine Weile verwenden, können Sie auch auf Ihre früheren Prognosedaten zugreifen. Der maximale Zeitraum zwischen der Start- und Endzeit beträgt jedoch 30 Tage.
Um die Prognose mithilfe des get-predictive-scaling-forecast AWS CLI Befehls abzurufen, geben Sie im Befehl die folgenden Parameter an:
-
Geben Sie den Namen des Clusternamens in den
resource-id
Parameter ein. -
Geben Sie den Namen der Richtlinie im
--policy-name
-Parameter an. -
Geben Sie die Startzeit im
--start-time
-Parameter an, um nur prognostizierte Daten für den angegebenen Zeitpunkt oder danach zurückzugeben. -
Geben Sie die Endzeit im
--end-time
-Parameter an, um nur prognostizierte Daten für den angegebenen Zeitpunkt oder davor zurückzugeben.
aws application-autoscaling get-predictive-scaling-forecast \ --service-namespace ecs \ --resource-id service/MyCluster/test \ --policy-name
cpu40-predictive-scaling-policy
\ --scalable-dimension ecs:service:DesiredCount \ --start-time "2021-05-19T17:00:00Z
" \ --end-time "2021-05-19T23:00:00Z
"Bei erfolgreicher Ausführung gibt der Befehl Daten zurück, die in etwa wie folgt aussehen:
{ "LoadForecast": [ { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 153.0655799339254, 128.8288551285919, 107.1179447150675, 197.3601844551528, 626.4039934516954, 596.9441277518481, 677.9675713779869 ], "MetricSpecification": { "TargetValue": 40.0, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization" } } } ], "CapacityForecast": { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 2.0, 2.0, 2.0, 2.0, 4.0, 4.0, 4.0 ] }, "UpdateTime": "2021-05-19T01:52:50.118000+00:00" }
Die Antwort enthält zwei Prognosen:
LoadForecast
undCapacityForecast
.LoadForecast
zeigt die stündliche Lastprognose an.CapacityForecast
zeigt Prognosewerte für die Kapazität an, die stündlich benötigt wird, um die prognostizierte Last zu verarbeiten, während einTargetValue
von 40,0 (40 % durchschnittliche CPU-Auslastung) aufrechterhalten bleibt. -
-
Identifizieren des Zielzeitraums
Ermitteln Sie die Stunde oder die Stunden, zu der/zu denen die einmalige Nachfrageschwankung stattfinden soll. Denken Sie daran, dass die in der Prognose angezeigten Datumsangaben und Uhrzeiten in UTC angegeben sind.
Schritt 2: Erstellen von zwei geplanten Aktionen
Erstellen Sie als Nächstes zwei geplante Aktionen für einen bestimmten Zeitraum, in dem Ihre Anwendung eine höhere Last aufweist als die prognostizierte Last. Wenn Sie beispielsweise während eines Marketing-Ereignisses für einen begrenzten Zeitraum ein erhöhtes Datenvolumen erwarten, können Sie eine einmalige Aktion planen, um die Mindestkapazität bei deren Beginn zu aktualisieren. Planen Sie dann eine weitere Aktion, um die Mindestkapazität auf die ursprüngliche Einstellung zurückzusetzen, wenn das Ereignis endet.
Öffnen Sie die Konsole auf https://console.aws.amazon.com/ecs/Version
2. -
Wählen Sie auf der Cluster-Seite den Cluster aus.
-
Wählen Sie auf der Seite mit den Cluster-Details im Abschnitt Dienste den Dienst aus.
Die Seite mit den Dienstdetails wird angezeigt.
-
Wählen Sie Service Auto Scaling.
Die Seite mit den Richtlinien wird angezeigt.
-
Wählen Sie Geplante Aktionen und dann Erstellen aus.
Die Aktionsseite „Zeitplan erstellen“ wird angezeigt.
-
Geben Sie unter Aktionsname einen eindeutigen Namen ein.
-
Wählen Sie für Zeitzone eine Zeitzone aus.
Alle aufgelisteten Zeitzonen stammen aus der IANA-Zeitzonendatenbank. Weitere Informationen finden Sie unter Liste der Zeitzonen der TZ-Datenbank
. -
Geben Sie als Startzeit das Datum und die Uhrzeit ein, zu der die Aktion gestartet wird.
-
Wählen Sie für Recurrence (Wiederholung) Once (Einmal) aus.
-
Geben Sie unter Aufgabenanpassungen für Minimum einen Wert ein, der kleiner oder gleich der maximalen Anzahl von Aufgaben ist.
-
Wählen Sie Geplante Aktion erstellen.
Die Seite „Richtlinien“ wird angezeigt.
-
Konfigurieren Sie eine zweite geplante Aktion, um die Mindestanzahl von Aufgaben am Ende des Ereignisses auf die ursprüngliche Einstellung zurückzusetzen. Durch vorausschauende Skalierung kann die Anzahl der Aufgaben nur skaliert werden, wenn der Wert, den Sie für Minimum festgelegt haben, unter den Prognosewerten liegt.
Erstellen von zwei geplanten Aktionen für einmalige Ereignisse (AWS CLI)
Verwenden Sie den AWS CLI Befehl put-scheduled-update-group-action, um die geplanten Aktionen zu erstellen.
Lassen Sie uns als Beispiel einen Zeitplan definieren, der am 19. Mai um 17:00 Uhr acht Stunden lang eine Mindestkapazität von drei Instances beibehält. Die folgenden Befehle veranschaulichen die Implementierung dieses Szenarios.
Der erste Befehl put-scheduled-update-group-action weist Amazon EC2 Auto Scaling an, die Mindestkapazität der angegebenen Auto Scaling Scaling-Gruppe am 19. Mai 2021 um 17:00 Uhr UTC zu aktualisieren.
aws autoscaling put-scheduled-update-group-action --scheduled-action-name
my-event-start
\ --auto-scaling-group-namemy-asg
--start-time "2021-05-19T17:00:00Z
" --minimum-capacity3
Der zweite Befehl weist Amazon EC2 Auto Scaling an, die Mindestkapazität der Gruppe am 20. Mai 2021 um 1:00 Uhr UTC auf eins festzulegen.
aws autoscaling put-scheduled-update-group-action --scheduled-action-name
my-event-end
\ --auto-scaling-group-namemy-asg
--start-time "2021-05-20T01:00:00Z
" --minimum-capacity1
Nachdem Sie diese geplanten Aktionen zur Auto Scaling-Gruppe hinzugefügt haben, geht Amazon EC2 Auto Scaling wie folgt vor:
-
Um 17:00 Uhr UTC am 19. Mai 2021 wird die erste geplante Aktion ausgeführt. Wenn die Gruppe derzeit weniger als drei Instances hat, wird die Gruppe auf drei Instances skaliert. Während dieser Zeit und für die nächsten acht Stunden kann Amazon EC2 Auto Scaling weiterhin skalieren, wenn die prognostizierte Kapazität höher als die tatsächliche Kapazität ist oder wenn eine dynamische Skalierungsrichtlinie in Kraft ist.
-
Um 1:00 Uhr UTC am 20. Mai 2021 wird die zweite geplante Aktion ausgeführt. Dadurch wird die Mindestkapazität am Ende des Ereignisses auf die ursprüngliche Einstellung zurückgesetzt.
Skalierung basierend auf wiederkehrenden Zeitplänen
Um die Prognose jede Woche während des gleichen Zeitraums zu überschreiben, erstellen Sie zwei geplante Aktionen und stellen die Zeit- und Datumslogik mithilfe eines Cron-Ausdrucks bereit.
Der Cron-Ausdruck besteht aus fünf Feldern, getrennt durch Leerzeichen: [Minute] [Stunde] [Tag_des_Monats] [Monat_des_Jahres] [Wochentag]. Felder können alle zulässigen Werte enthalten, einschließlich Sonderzeichen.
Beispielsweise führt der folgende Cron-Ausdruck jeden Dienstag um 6:30 Uhr die Aktion aus. Das Sternchen wird als Platzhalter verwendet, um alle Werte für ein Feld abzugleichen.
30 6 * * 2
Weitere Informationen finden Sie auch unter
Weitere Informationen zur Verwaltung von geplanten Aktionen finden Sie unterVerwenden Sie geplante Aktionen, um Amazon ECS-Services zu skalieren.