View a markdown version of this page

Lebenszyklus-Hooks für Amazon-ECS-Servicebereitstellungen - 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.

Lebenszyklus-Hooks für Amazon-ECS-Servicebereitstellungen

Wenn eine Bereitstellung beginnt, durchläuft sie die einzelnen Lebenszyklusphasen. Jede Phase kann sich in einem Zustand wie IN_PROGRESS oder SUCCEEDED befinden. Sie können Lifecycle-Hooks in bestimmten Phasen konfigurieren, um benutzerdefinierte Logik auszuführen oder Entscheidungspunkte einzuführen, bevor die Bereitstellung fortgesetzt wird. Amazon ECS unterstützt zwei Arten von Lifecycle-Hooks:

Lambda-Hooks

Amazon ECS ruft in bestimmten Phasen einer Bereitstellung eine Lambda-Funktion auf. Ihre Funktion enthält Ihre benutzerdefinierte Logik und muss ein JSON-Objekt zurückgeben, das ein hookStatus vonSUCCEEDED, oder enthältFAILED, IN_PROGRESS um Amazon ECS mitzuteilen, wie vorzugehen ist. Sie können diese Hooks verwenden, um Validierungstests durchzuführen, Governance-Richtlinien durchzusetzen oder benutzerdefinierte Genehmigungsschritte zu implementieren, bevor die Bereitstellung fortgesetzt wird. Weitere Informationen finden Sie unter Lambda-Hooks für Amazon ECS-Servicebereitstellungen.

Hooks anhalten

Amazon ECS unterbricht die Bereitstellung in einer konfigurierten Lebenszyklusphase und wartet darauf, dass Sie die ContinueServiceDeployment API aufrufen, um fortzufahren oder ein Rollback durchzuführen. Während der Pause können Sie Ihre eigenen Workflows extern ausführen, z. B. manuelle Genehmigungen, Integrationstests mit vorhandenen Tools, Prüfungen der Betriebsbereitschaft oder Pipeline-Schritte. CI/CD Weitere Informationen finden Sie unter Pause-Hooks für Amazon ECS-Servicebereitstellungen.

Sie können sowohl Lambda-Hooks als auch Pause-Hooks in derselben Lebenszyklusphase konfigurieren. Beide Hooks müssen abgeschlossen sein, bevor die Bereitstellung zur nächsten Phase übergeht.

Einzelheiten zum Lifecycle-H

Wenn Hooks während einer Bereitstellung aktiv sind, können Sie ihren Status telefonisch einsehenDescribeServiceDeployments. Die Antwort enthält ein lifecycleHookDetails Array mit den folgenden Feldern für jeden aktiven Hook:

Feld Description
hookId Der eindeutige Bezeichner für diese Hook-Ausführung. Verwenden Sie diesen Wert, wenn Sie Pause-Hooks aufrufenContinueServiceDeployment.
targetType Der Hook-Typ: AWS_LAMBDA oderPAUSE.
targetArn Der ARN des Hook-Ziels. Für Lambda-Hooks ist dies der ARN der Lambda-Funktion. Für Pause-Hooks ist dieses Feld nicht gesetzt.
status Der aktuelle Status des Hooks: AWAITING_ACTIONIN_PROGRESS,SUCCEEDED,FAILED, oderTIMED_OUT.
expiresAt Das Datum und die Uhrzeit, zu denen der Hook abläuft. (Beispiel: T12:06:49-07:00 2026-05-06)
timeoutAction Die Aktion, die Amazon ECS ausführt, wenn der Hook das Zeitlimit überschreitet: oder. ROLLBACK CONTINUE

Kategorien von Lebenszyklusphasen

Lebenszyklusphasen gliedern sich in zwei Kategorien:

  1. Einzelne Aufrufphasen — Amazon ECS ruft diese Phasen während einer Servicebereitstellung nur einmal auf:

    • RECONCILE_SERVICE

    • PRE_SCALE_UP

    • POST_SCALE_UP

    • TEST_TRAFFIC_SHIFT

    • POST_TEST_TRAFFIC_SHIFT

    • POST_PRODUCTION_TRAFFIC_SHIFT

  2. Wiederkehrende Aufrufphasen — Amazon ECS kann diese Phasen während einer Servicebereitstellung mehrmals aufrufen. Bei linearen und kanarischen Bereitstellungen werden diese Phasen bei jedem Schritt der Verkehrsverlagerung aufgerufen:

    • PRE_PRODUCTION_TRAFFIC_SHIFT

    • PRODUCTION_TRAFFIC_SHIFT

Anmerkung

Pause-Hooks können nicht konfiguriert werden, TEST_TRAFFIC_SHIFT wenn oder PRODUCTION_TRAFFIC_SHIFT weil diese Stufen auch beim Rollback aufgerufen werden. Wenn Sie während eines Rollbacks eine Pause einlegen, wäre ein zusätzlicher ContinueServiceDeployment Aufruf erforderlich, um das Rollback abzuschließen.

Unterstützte Stufen nach Hook-Typ

Phase des Lebenszyklus Lambda-Hooks Hooks anhalten
RECONCILE_SERVICE Ja Ja
PRE_SCALE_UP Ja Ja
POST_SCALE_UP Ja Ja
TEST_TRAFFIC_SHIFT Ja Nein
POST_TEST_TRAFFIC_SHIFT Ja Ja
PRE_PRODUCTION_TRAFFIC_SHIFT Ja Ja
PRODUCTION_TRAFFIC_SHIFT Ja Nein
POST_PRODUCTION_TRAFFIC_SHIFT Ja Ja