Verwenden Sie historische Muster, um Amazon ECS-Services mit vorausschauender Skalierung zu skalieren - 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.

Verwenden Sie historische Muster, um Amazon ECS-Services mit vorausschauender Skalierung zu skalieren

Predictive Scaling betrachtet vergangene Lastdaten aus Verkehrsströmen, um tägliche oder wöchentliche Muster zu analysieren. Anschließend verwendet es diese Analyse, um future Bedürfnisse zu antizipieren und die Aufgaben in Ihrem Service nach Bedarf proaktiv zu erhöhen.

Predictive Auto Scaling ist in den folgenden Situationen am nützlichsten.

  • Zyklischer Verkehr — Verstärkter Ressourcenverbrauch während der regulären Geschäftszeiten und geringerer Ressourcenverbrauch an Abenden und Wochenenden.

  • Wiederkehrende on-and-off Workload-Muster — Beispiele hierfür sind Batch-Verarbeitung, Tests oder regelmäßige Datenanalysen.

  • Anwendungen mit langen Initialisierungszeiten — Dies kann die Anwendungsleistung bei Scale-Out-Ereignissen beeinträchtigen und zu spürbarer Latenz führen.

Wenn die Initialisierung Ihrer Anwendungen viel Zeit in Anspruch nimmt und der Datenverkehr regelmäßig zunimmt, sollten Sie die Verwendung von prädiktiver Skalierung in Betracht ziehen. Es hilft Ihnen, schneller zu skalieren, indem es proaktiv die Anzahl der Aufgaben für prognostizierte Lasten erhöht, anstatt ausschließlich dynamische Skalierungsrichtlinien wie Target Tracking oder Step Scaling zu verwenden. Predictive Scaling hilft Ihnen dabei, die Möglichkeit einer zu großen Anzahl von Aufgaben zu vermeiden, und kann Ihnen damit potenziell auch Geld sparen.

Nehmen wir als Beispiel eine Anwendung, die eine hohe Auslastung während der Geschäftszeiten und eine geringe Nutzung über Nacht aufweist. Zu Beginn eines jeden Geschäftstages kann Predictive Scaling Aufgaben vor dem ersten Zustrom von Traffic skalieren. Auf diese Weise kann Ihre Anwendung eine hohe Verfügbarkeit und Leistung aufrechterhalten, wenn sie von einer geringeren Auslastung zu einem Zeitraum mit höherer Auslastung übergeht. Sie müssen nicht warten, bis die dynamische Skalierung auf sich ändernden Datenverkehr reagiert. Sie müssen auch keine Zeit damit verbringen, die Lademuster Ihrer Anwendung zu überprüfen und zu versuchen, mithilfe der geplanten Skalierung die richtige Anzahl von Aufgaben zu planen.

Predictive Scaling ist eine Service-Level-Funktion, die die Aufgabe Ihres Dienstes unabhängig von der Skalierung der zugrunde liegenden Rechenkapazität (z. B. EC2 oder Fargate) skaliert. AWS Verwaltet und skaliert für Fargate die zugrunde liegende Kapazität automatisch auf der Grundlage der Aufgabenanforderungen. Für die EC2 Kapazität können Sie Auto Scaling Scaling-Gruppenkapazitätsanbieter verwenden, um die zugrunde liegenden EC2 Instances automatisch auf der Grundlage der Skalierungsanforderungen Ihrer Aufgaben zu skalieren.

So funktioniert vorausschauende Skalierung in Amazon ECS

Hier erfahren Sie mehr über Überlegungen zur Verwendung von Predictive Scaling, wie sie funktioniert und wo die Grenzen liegen.

Überlegungen zur Verwendung von prädiktiver Skalierung

  • Sie möchten sicherstellen, dass Predictive Scaling für Ihren Workload geeignet ist. Sie können dies überprüfen, indem Sie Skalierungsrichtlinien im Modus „Nur Prognosen“ konfigurieren und herausfinden, was die Konsole empfiehlt. Bevor Sie mit der prädiktiven Skalierung beginnen, sollten Sie die Prognose und die Empfehlungen auswerten.

  • Bevor mit der prädiktiven Skalierung mit Prognosen begonnen werden kann, sind historische Daten für mindestens 24 Stunden erforderlich. Je mehr historische Daten verfügbar sind, desto effektiver ist die Prognose, wobei zwei Wochen ideal sind. Außerdem müssen Sie 24 Stunden warten, bis Predictive Scaling neue Prognosen generieren kann, wenn Sie einen Amazon ECS-Service löschen und einen neuen erstellen. Eine Möglichkeit, dies zu beschleunigen, besteht darin, benutzerdefinierte Metriken zu verwenden, um Metriken für den alten und neuen Amazon ECS-Service zu aggregieren.

  • Wählen Sie eine Lastmetrik, die die volle Auslastung Ihrer Anwendung genau wiedergibt und den Aspekt Ihrer Anwendung darstellt, der für die Skalierung am wichtigsten ist.

  • Dynamische Skalierung mit vorausschauender Skalierung hilft Ihnen dabei, die Nachfrage nach Ihrer Anwendung genau zu verfolgen. So können Sie in Zeiten von Ruhephasen nach oben skalieren und bei unerwartetem Anstieg des Datenverkehrs wieder skalieren. Wenn mehrere Skalierungsrichtlinien aktiv sind, bestimmt jede Richtlinie die gewünschte Anzahl von Aufgaben unabhängig, und die gewünschte Anzahl von Aufgaben wird auf das Maximum dieser Aufgaben festgelegt.

  • Sie können prädiktive Skalierung zusammen mit Ihren dynamischen Skalierungsrichtlinien wie Target Tracking oder Step Scaling verwenden, sodass Ihre Anwendungen sowohl auf Echtzeit- als auch auf historischen Mustern skaliert werden. Predictive Scaling allein skaliert Ihre Aufgaben nicht.

  • Wenn Sie beim Aufrufen der register-scalable-target API eine benutzerdefinierte Rolle verwenden, wird möglicherweise eine Fehlermeldung angezeigt, die besagt, dass die Richtlinie zur vorausschauenden Skalierung nur funktionieren kann, wenn SLR aktiviert ist. In diesem Fall sollten Sie register-scalable-target erneut aufrufen, jedoch ohne role-arn. Verwenden Sie SLR, wenn Sie das skalierbare Ziel registrieren und die API aufrufen. put-scaling-policy

So funktioniert Auto Scaling

Sie verwenden Predictive Scaling, indem Sie eine Predictive Scaling-Richtlinie erstellen, die die zu überwachende und zu analysierende CloudWatch Metrik festlegt. Predictive Scaling muss mindestens 24 Stunden an Daten enthalten, um mit der Prognose future Werte beginnen zu können.

Nachdem Sie die Richtlinie erstellt haben, beginnt Predictive Scaling mit der Analyse von Metrikdaten der letzten 14 Tage, um Muster zu identifizieren. Diese Analyse wird verwendet, um stündliche Prognosen für die Anforderungen der nächsten 48 Stunden zu generieren. Die neuesten CloudWatch Daten werden verwendet, um die Prognose alle sechs Stunden zu aktualisieren. Wenn neue Daten eintreffen, verbessert die prädiktive Skalierung kontinuierlich die Genauigkeit zukünftiger Prognosen.

Wenn Sie die prädiktive Skalierung zum ersten Mal aktivieren, wird sie nur im Prognosemodus ausgeführt. In diesem Modus werden Prognosen generiert, Ihr Amazon ECS-Service wird jedoch nicht auf der Grundlage dieser Prognosen skaliert. Das bedeutet, dass Sie die Genauigkeit und Eignung der Prognose bewerten können. Sie können Prognosedaten mithilfe der GetPredictiveScalingForecast API-Operation oder der AWS Management Console anzeigen.

Wenn Sie sich entscheiden, prädiktive Skalierung zu verwenden, schalten Sie die Skalierungsrichtlinie in den Prognose- und Skalierungsmodus um. In diesem Modus passiert Folgendes.

Ihr Amazon ECS-Service wird standardmäßig zu Beginn jeder Stunde auf der Grundlage der Prognose für diese Stunde skaliert. Sie können wählen, ob Sie früher beginnen möchten, indem Sie die SchedulingBufferTime Eigenschaft in der PutScalingPolicy API-Operation verwenden. Dadurch werden neue Aufgaben vor dem prognostizierten Bedarf gestartet und sie haben Zeit, den Vorgang zu starten und für den Datenverkehr bereit zu sein.

Maximales Limit für Aufgaben

Wenn Sie Amazon ECS-Services für die Skalierung registrieren, definieren Sie eine maximale Anzahl von Aufgaben, die pro Service gestartet werden können. Wenn Skalierungsrichtlinien festgelegt sind, können diese standardmäßig die Anzahl der Aufgaben nicht über das maximale Limit hinaus erhöhen.

Alternativ können Sie zulassen, dass die maximale Anzahl von Aufgaben des Service automatisch erhöht wird, wenn sich die Prognose der maximalen Anzahl von Aufgaben des Amazon ECS-Service nähert oder diese überschreitet.

Warnung

Seien Sie vorsichtig, wenn Sie zulassen, dass die maximale Anzahl von Aufgaben automatisch erhöht wird. Dies kann dazu führen, dass mehr Aufgaben als vorgesehen gestartet werden, wenn die erhöhte maximale Anzahl von Aufgaben nicht überwacht und verwaltet wird. Die erhöhte maximale Anzahl von Aufgaben wird dann zur neuen normalen Höchstanzahl von Aufgaben für den Amazon ECS-Service, bis Sie sie manuell aktualisieren. Die maximale Anzahl von Aufgaben wird nicht automatisch auf das ursprüngliche Maximum zurückgesetzt.

Unterstützte -Regionen

  • USA Ost (Nord-Virginia)

  • USA Ost (Ohio)

  • USA West (Nordkalifornien)

  • USA West (Oregon)

  • Africa (Cape Town)

  • Asien-Pazifik (Hongkong)

  • Asien-Pazifik (Jakarta)

  • Asien-Pazifik (Mumbai)

  • Asien-Pazifik (Osaka)

  • Asien-Pazifik (Seoul)

  • Asien-Pazifik (Singapur)

  • Asien-Pazifik (Sydney)

  • Asien-Pazifik (Tokio)

  • Canada (Central)

  • China (Peking)

  • China (Ningxia)

  • Europe (Frankfurt)

  • Europa (Irland)

  • Europa (London)

  • Europa (Milan)

  • Europe (Paris)

  • Europe (Stockholm)

  • Middle East (Bahrain)

  • Südamerika (São Paulo)

  • AWS GovCloud (USA-Ost)

  • AWS GovCloud (US-West)