Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Hook del ciclo di vita per le implementazioni di servizi Amazon ECS
Quando una distribuzione inizia, procede attraverso le fasi del ciclo di vita. Ogni fase può trovarsi in uno stato come o. IN_PROGRESS SUCCEEDED È possibile configurare gli hook del ciclo di vita in fasi specifiche per eseguire una logica personalizzata o introdurre punti decisionali prima che la distribuzione proceda. Amazon ECS supporta due tipi di ganci del ciclo di vita:
- ganci Lambda
-
Amazon ECS richiama una funzione Lambda in fasi specifiche di una distribuzione. La funzione contiene la tua logica personalizzata e deve restituire un oggetto JSON contenente un valore
hookStatusofSUCCEEDEDo indicareIN_PROGRESSad Amazon ECS come procedere.FAILEDPuoi utilizzare questi hook per eseguire test di convalida, applicare politiche di governance o implementare passaggi di approvazione personalizzati prima che la distribuzione proceda. Per ulteriori informazioni, consulta Hook Lambda per distribuzioni di servizi Amazon ECS. - Metti in pausa gli hook
-
Amazon ECS sospende la distribuzione in una fase del ciclo di vita configurata e attende che tu chiami l'API per continuare o eseguire il
ContinueServiceDeploymentrollback. Mentre è in pausa, puoi eseguire i tuoi flussi di lavoro esternamente, ad esempio approvazioni manuali, test di integrazione con strumenti esistenti, controlli di disponibilità operativa o fasi della pipeline. CI/CD Per ulteriori informazioni, consulta Metti in pausa gli hook per le distribuzioni dei servizi Amazon ECS.
Puoi configurare sia gli hook Lambda che gli hook in pausa nella stessa fase del ciclo di vita. Entrambi gli hook devono essere completati prima che la distribuzione proceda alla fase successiva.
Dettagli degli hook relativi al ciclo di vita
Quando gli hook sono attivi durante una distribuzione, puoi visualizzarne lo stato chiamando. DescribeServiceDeployments La risposta include un lifecycleHookDetails array con i seguenti campi per ogni hook attivo:
| Campo | Description |
|---|---|
hookId |
L'identificatore univoco per questa esecuzione dell'hook. Utilizzate questo valore quando richiamate ContinueServiceDeployment gli hook di pausa. |
targetType |
Il tipo di hook: AWS_LAMBDA oPAUSE. |
targetArn |
L'ARN del bersaglio dell'hook. Per gli hook Lambda, questo è l'ARN della funzione Lambda. Per i pause hook, questo campo non è impostato. |
status |
Lo stato attuale dell'hook:AWAITING_ACTION,IN_PROGRESS, SUCCEEDEDFAILED, oTIMED_OUT. |
expiresAt |
La data e l'ora di scadenza dell'hook. (Esempio: T12:06:49-07:00 2026-05-06) |
timeoutAction |
L'azione intrapresa da Amazon ECS quando l'hook scade: o. ROLLBACK CONTINUE |
Categorie della fase del ciclo di vita
Le fasi del ciclo di vita rientrano in due categorie:
-
Fasi di chiamata singola: Amazon ECS richiama queste fasi una sola volta durante l'implementazione di un servizio:
RECONCILE_SERVICEPRE_SCALE_UPPOST_SCALE_UPTEST_TRAFFIC_SHIFTPOST_TEST_TRAFFIC_SHIFTPOST_PRODUCTION_TRAFFIC_SHIFT
-
Fasi di richiamo ricorrenti: Amazon ECS può richiamare queste fasi più volte durante l'implementazione di un servizio. Per le implementazioni lineari e canarie, queste fasi vengono richiamate in ogni fase di spostamento del traffico:
PRE_PRODUCTION_TRAFFIC_SHIFTPRODUCTION_TRAFFIC_SHIFT
Nota
I pause hook non possono essere configurati in TEST_TRAFFIC_SHIFT o PRODUCTION_TRAFFIC_SHIFT perché queste fasi vengono richiamate anche durante il rollback. La pausa durante un rollback richiederebbe una ContinueServiceDeployment chiamata aggiuntiva per completare il rollback.
Fasi supportate per tipo di hook
| Fase del ciclo di vita | Ganci Lambda | Metti in pausa i ganci |
|---|---|---|
RECONCILE_SERVICE |
Sì | Sì |
PRE_SCALE_UP |
Sì | Sì |
POST_SCALE_UP |
Sì | Sì |
TEST_TRAFFIC_SHIFT |
Sì | No |
POST_TEST_TRAFFIC_SHIFT |
Sì | Sì |
PRE_PRODUCTION_TRAFFIC_SHIFT |
Sì | Sì |
PRODUCTION_TRAFFIC_SHIFT |
Sì | No |
POST_PRODUCTION_TRAFFIC_SHIFT |
Sì | Sì |