View a markdown version of this page

Schließen Sie die fortlaufenden Amazon ECS-Bereitstellungen frühzeitig mit Erfolgskriterien ab - 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.

Schließen Sie die fortlaufenden Amazon ECS-Bereitstellungen frühzeitig mit Erfolgskriterien ab

Wenn Sie einen Service aktualisieren, der die Strategie für die fortlaufende Bereitstellung verwendet, startet Amazon ECS eine Bereitstellung, bei der die Aufgaben in der Quellservice-Revision durch neue Aufgaben in der Ziel-Service-Revision ersetzt werden. Amazon ECS schließt die Bereitstellung ab, nachdem alle folgenden Bedingungen erfüllt sind:

  • Die Ziel-Servicerevision erreicht 100 Prozent der gewünschten Anzahl, und alle ihre Aufgaben werden ausgeführt und funktionieren einwandfrei.

  • Der Auslöseschalter oder ein CloudWatch Alarm lösen keinen Rollback aus.

  • Wenn Sie ein alarmbasiertes Rollback verwenden, läuft die Backzeit ab.

  • Die Aufgaben in der Quellservice-Revision werden bereinigt.

Anhand frühzeitiger Erfolgskriterien konfigurieren Sie, wann Amazon ECS eine Bereitstellung abschließt, und zwar auf der Grundlage der Zuverlässigkeit und der betrieblichen Anforderungen Ihrer Arbeitslast.

In den folgenden Szenarien können Sie Kriterien für einen frühen Erfolg verwenden:

  • Sie sind sich sicher, dass ein Prozentsatz fehlerfreier Aufgaben in der Zieldienstrevision ausreicht, um die Bereitstellung abzuschließen, und Sie möchten die Bereitstellung früher abschließen, damit nachfolgende Bereitstellungen, CI/CD Pipelines und andere abhängige Vorgänge fortgesetzt werden können.

  • Ihr Service wird mit speziellen oder eingeschränkten Kapazitäten ausgeführt, z. B. mit GPU-accelerated Inferenz-Workloads, bei denen der Start einiger Aufgaben aufgrund der Hardwareverfügbarkeit länger dauert.

  • Ihr Service hat Aufgaben in der Quellservice-Revision, die nur langsam abfließen und andernfalls die Bereitstellung behindern würden, wie z. B. Aufgaben mit langlebigen Verbindungen.

  • Sie möchten, dass der Bereitstellungsschutzschalter oder der CloudWatch Alarm-Rollback den Einsatz schützt, bis die Zieldienstrevision eine von Ihnen definierte Integritätsstufe erreicht hat, und Sie möchten nach diesem Zeitpunkt kein Rollback mehr durchführen.

Sie definieren die Kriterien mithilfe der folgenden Einstellungen in der Bereitstellungskonfiguration.

Gesunder Prozentsatz

Der earlySuccessCriteria.healthyPercent steht für die Anzahl der Aufgaben, die auf der Zielservice-Revision ausgeführt und fehlerfrei sein müssen, bevor Amazon ECS die Bereitstellung abschließt, als Prozentsatz der gewünschten Anzahl von Aufgaben für den Service. Dieser Wert wird aufgerundet. Wenn beispielsweise der fehlerfreie Prozentsatz bei 90 liegt und die gewünschte Anzahl bei 100 liegt, schließt Amazon ECS die Bereitstellung ab, nachdem 90 Aufgaben fehlerfrei sind. Wenn der Prozentsatz für einen fehlerfreien Zustand 50 und die gewünschte Anzahl 3 ist, schließt Amazon ECS die Bereitstellung ab, nachdem 2 Aufgaben fehlerfrei sind.

Eine Aufgabe ist fehlerfrei, wenn sie die Zustandsprüfungen bestanden hat, die Sie für den Service konfigurieren.

Amazon ECS startet alle verbleibenden Aufgaben auf der Zielservice-Revision außerhalb der Bereitstellung durch regelmäßige Service-Skalierung. Nachdem Amazon ECS die Bereitstellung abgeschlossen hat, gelten der Schutzschalter für die Bereitstellung und das CloudWatch Alarm-Rollback nicht mehr.

Der fehlerfreie Prozentsatz muss zwischen dem Service minimumHealthyPercent und 100 liegen.

Bereinigung der Revision des Quelldienstes

Das earlySuccessCriteria.sourceServiceRevisionCleanup bestimmt, wann Amazon ECS die Aufgaben aus der Quellservice-Revision bereinigt. Es hat zwei Werte, BLOCKING undDEFERRED.

Mit BLOCKING wird die Bereitstellung in der folgenden Reihenfolge ausgeführt:

  1. Der Prozentsatz der Aufgaben, die ordnungsgemäß ausgeführt werden, ist in der Zieldienstrevision fehlerfrei.

  2. Wenn Sie ein alarmbasiertes Rollback verwenden, läuft die Backzeit ab.

  3. Amazon ECS bereinigt die Aufgaben in der Quellservice-Revision.

  4. Amazon ECS schließt die Bereitstellung ab.

Mit DEFERRED wird die Bereitstellung in der folgenden Reihenfolge durchgeführt:

  1. Der Prozentsatz der Aufgaben, die ordnungsgemäß ausgeführt werden, ist in der Zieldienstrevision fehlerfrei.

  2. Wenn Sie ein alarmbasiertes Rollback verwenden, läuft die Backzeit ab.

  3. Amazon ECS schließt die Bereitstellung ab.

  4. Amazon ECS bereinigt die Aufgaben im Zusammenhang mit der Quellservice-Revision außerhalb der Bereitstellung.

Mit versucht Amazon ECS bis zu zwei Wochen langDEFERRED, die Aufgaben im Zusammenhang mit der Revision des Quellservices zu bereinigen.

Wird DEFERRED für Services mit langlebigen Verbindungen oder für Task-Scale-In-Schutz verwendet, bei denen Aufgaben aus der Quellservice-Revision möglicherweise weiterlaufen müssen, ohne die Bereitstellung offen zu halten. Dies ist nützlich, wenn das Löschen der Revision des Quelldienstes ein langer Vorgang ist und Ihre CI/CD Tools zeitlich begrenzt sind. Amazon ECS schließt die Bereitstellung ab, wenn der fehlerfreie Prozentsatz erreicht ist, und die Aufgaben für die Quellservice-Revision werden außerhalb der Bereitstellung abgewickelt.

Wie bewertet Amazon ECS frühe Erfolgskriterien

Amazon ECS schließt eine Bereitstellung ab, bei der Kriterien für einen frühen Erfolg verwendet werden, nachdem alle folgenden Punkte zutreffen:

  • Die Anzahl der laufenden und fehlerfreien Aufgaben in der Ziel-Servicerevision entspricht mindestens dem fehlerfreien Prozentsatz der gewünschten Anzahl, aufgerundet.

  • Der Auslöseschalter oder ein CloudWatch Alarm lösen keinen Rollback aus.

  • Wenn Sie ein alarmbasiertes Rollback verwenden, läuft die Backzeit ab.

  • Wenn die Quellservice-Revision bereinigt istBLOCKING, werden die Aufgaben auf der Quellservice-Revision bereinigt.

Amazon ECS startet mindestens eine Aufgabe für die Ziel-Servicerevision und wartet, bis sie fehlerfrei ist, bevor es den fehlerfreien Prozentsatz auswertet.

Beispiel: Anzahl fehlerfreier Aufgaben
Gewünschte Anzahl Gesunder Prozentsatz Erforderliche gesunde Aufgaben (aufgerundet)
2 50 1
3 50 2
10 80 8
100 90 90
10 100 10

Konfigurieren Sie Kriterien für einen frühen Erfolg

Sie können Kriterien für einen frühen Erfolg für einen neuen oder vorhandenen Dienst konfigurieren, indem Sie die Konsole oder die verwenden AWS CLI.

Konsole

Aktivieren Sie im Ablauf „Dienst erstellen oder aktualisieren“ unter Bereitstellungskonfiguration die Kriterien für den frühen Erfolg. Geben Sie einen Wert für „Fehlerfrei“ in Prozent ein und wählen Sie eine Option zur Bereinigung der Quelldienstrevision, entweder Blockieren oder Zurückgestellt.

AWS CLI

Legen Sie die earlySuccessCriteria Werte im --deployment-configuration Parameter fest, wenn Sie einen Service erstellen oder aktualisieren.

aws ecs update-service \ --cluster MyCluster \ --service MyService \ --deployment-configuration '{ "strategy": "ROLLING", "earlySuccessCriteria": { "enable": true, "healthyPercent": 90, "sourceServiceRevisionCleanup": "BLOCKING" } }'

Was Sie beobachten

  • DescribeServiceDeploymentsgibt den Bereitstellungsstatus und die konfigurierten Kriterien für den frühen Erfolg zurück. Während der Bereitstellung ist die Anzahl der Aufgaben aktiv. Nach Abschluss der Bereitstellung handelt es sich bei der Anzahl der Aufgaben um eine Momentaufnahme des Abschlusses der Bereitstellung. Dies gilt sowohl für als BLOCKING auchDEFERRED.

  • Um die Anzahl der Aufgaben für einen Dienst in Echtzeit anzuzeigen, verwenden SieDescribeServices.

  • Bereitstellungen, die vorzeitig abgeschlossen werden, werden berücksichtigt, wenn Sie ListServiceDeployments nach dem Status filtern. SUCCESSFUL

  • Ereignisse und AWS CloudTrail Aufzeichnungen zur Änderung des Bereitstellungszustands zeigen vom Standard IN_PROGRESS bis zum SUCCESSFUL Lebenszyklus. Die Kriterien für einen frühen Erfolg führen nicht zu einem neuen Bereitstellungsstatus.

Überlegungen

Lesen Sie die folgenden Überlegungen, bevor Sie Kriterien für einen frühen Erfolg verwenden.

Die Rollback-Überwachung erfolgt während der Bereitstellung

Der Auslöseschalter und der CloudWatch Alarm-Rollback sind Mechanismen zur Störungserkennung für den Einsatz. Sie können den Einsatz rückgängig machen, während er im Gange ist. Nachdem Amazon ECS die Bereitstellung abgeschlossen hat, führen diese Mechanismen kein Rollback für den Service mehr durch. Dies gilt auch dann, wenn Amazon ECS alle verbleibenden Aufgaben im Rahmen der regulären Serviceskalierung startet. Sie können eine Bereitstellung nicht beenden, nachdem sie abgeschlossen ist. Legen Sie den Prozentsatz fehlerfrei auf einen Prozentsatz fest, bei dem Sie sicher sind, dass die Ziel-Servicerevision fehlerfrei ist.

DEFERREDaufräumen

Mit DEFERRED bereinigt Amazon ECS die Aufgaben auf der Quellservice-Revision, nachdem die Bereitstellung abgeschlossen ist. Wenn die Aufgaben auf der Quellservice-Revision länger als zwei Wochen nach der Bereitstellung durch einen Task-Scale-In-Schutz oder einen anderen Mechanismus geschützt sind, kann Amazon ECS sie nicht bereinigen. Wird verwendetDescribeServices, um die Aufgaben in der Quelldienstrevision zu überwachen.