Preparati per il ritiro delle attività di AWS Fargate su Amazon ECS - Amazon Elastic Container Service

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à.

Preparati per il ritiro delle attività di AWS Fargate su Amazon ECS

Per preparare il ritiro delle attività, esegui le seguenti operazioni:

  1. Imposta il periodo di attesa per il ritiro dell'attività o utilizza le finestre EC2 degli eventi di Amazon.

  2. Registra le notifiche di ritiro delle attività per avvisare i membri del team.

  3. Puoi assicurarti che tutte le attività dei tuoi servizi vengano eseguite sulla versione più recente della piattaforma aggiornando il servizio con l'opzione di implementazione forzata. Questa fase è facoltativa.

Passaggio 1: imposta il tempo di attesa dell'attività o utilizza le finestre EC2 degli eventi di Amazon

Sono disponibili due opzioni di impostazione dell'account per configurare l'ora in cui Fargate avvia il ritiro delle attività: e. fargateTaskRetirementWaitPeriod fargateEventWindows

Utilizzo delle impostazioni dell'account fargateTaskRetirement WaitPeriod

Puoi configurare l'ora in cui Fargate avvia il ritiro dell'attività. Il periodo di attesa predefinito è di 7 giorni. Per i carichi di lavoro che richiedono l'applicazione immediata degli aggiornamenti, scegli l'impostazione immediata (0). Se hai bisogno di più tempo, configura l'opzione7, o 14 day.

Consigliamo di scegliere un periodo di attesa più breve per ricevere prima le revisioni delle versioni più recenti della piattaforma.

Configura il periodo di attesa eseguendo put-account-setting-default o put-account-setting come utente root o utente amministrativo. Utilizza l'opzione fargateTaskRetirementWaitPeriod per il name e l'opzione value impostata su uno dei seguenti valori:

  • 0- AWS invia la notifica e inizia immediatamente a ritirare le attività interessate.

  • 7- AWS invia la notifica e attende 7 giorni di calendario prima di iniziare a ritirare le attività interessate. Questa è l’impostazione predefinita.

  • 14: AWS invia la notifica e attende 14 giorni di calendario prima di iniziare a ritirare le attività interessate.

Per ulteriori informazioni, consulta put-account-setting-defaulte consulta il riferimento put-account-settingall'API di Amazon Elastic Container Service.

Utilizzo fargateEventWindows delle impostazioni dell'account

A partire dal 18/12/2025, Amazon ECS ti consente di configurare finestre di eventi EC2 Amazon per le tue attività a Fargate. Se hai bisogno di un controllo preciso sulla tempistica esatta del ritiro delle attività, ad esempio programmandole durante i fine settimana per evitare interruzioni durante l'orario lavorativo, puoi configurare le finestre degli EC2 eventi di Amazon per le tue attività, i tuoi servizi o i tuoi cluster.

Quando si utilizzano le finestre degli eventi, Fargate assicura che le attività vengano eseguite per almeno 3 giorni prima di essere ritirate entro la finestra successiva disponibile, a meno che non vengano interrotte da azioni avviate dall'utente o da eventi critici di salute come il degrado dell'hardware sottostante.

Impostare le impostazioni dell'account fargateEventWindows su enabled. È possibile utilizzare uno dei seguenti APIs: put-account-setting-default o put-account-setting come utente root o utente amministrativo.

Ogni finestra di EC2 evento Amazon deve essere aperta per almeno 4 ore a settimana e ogni intervallo di tempo deve essere lungo almeno 2 ore. Per cluster e servizi di grandi dimensioni, consigliamo di configurare finestre di eventi con durate lunghe (8 ore o più) o intervalli di tempo più frequenti che si verificano almeno una volta ogni 3 giorni. Puoi esaminare ulteriormente le considerazioni relative alle finestre degli EC2 eventi di Amazon nella guida per l'utente per assicurarti che le tue attività AWS Fargate vengano eseguite per almeno 3 giorni prima di essere ritirate, a meno che non vengano interrotte da azioni avviate dall'utente o da eventi critici di salute come il degrado dell'hardware sottostante.

Importante

La sostituzione delle attività all'interno della finestra degli eventi è la soluzione migliore. Se noti che le attività vengono ritirate al di fuori delle finestre degli eventi, valuta la possibilità di aumentare la durata (8 ore o più) o di aumentare la frequenza (almeno una volta ogni 3 giorni).

Per applicare le finestre EC2 degli eventi di Amazon ai ritiri delle attività di Fargate:

  • Impostare le impostazioni dell'account fargateEventWindows su enabled. Puoi utilizzare uno dei seguenti APIs: put-account-setting-default o put-account-setting come utente root o utente amministrativo. Tieni presente che si tratta di un'attivazione unica per l'utilizzo della funzionalità Amazon EC2 Event Windows per le tue attività su Fargate.

  • Crea una finestra di EC2 eventi Amazon tramite la console AWS o l'AWS CLI. Per creare una finestra di eventi utilizzando la CLI, utilizza l' EC2create-instance-event-windowAPI con intervalli di tempo o espressioni cron. Prendi nota di quanto riportato nella InstanceEventWindowId risposta.

    aws ec2 create-instance-event-window \ --time-range StartWeekDay=monday,StartHour=2,EndWeekDay=wednesday,EndHour=8 \ --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1" \ --name myEventWindowName

    In alternativa, puoi usare le espressioni cron durante la creazione di finestre di EC2 eventi.

    aws ec2 create-instance-event-window \ --cron-expression "* 21-23 * * 2,3" \ --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1" \ --name myEventWindowName
  • Puoi quindi associare la finestra dell'evento a servizi specifici, cluster o tutte le attività del tuo account utilizzando l' EC2 associate-instance-event-windowAPI.

    • Per le attività di servizio ECS

      aws ec2 associate-instance-event-window \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceTags=[{Key=aws:ecs:serviceArn,Value=your-service-arn}]"
    • Per i cluster ECS

      aws ec2 associate-instance-event-window \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceTags=[{Key=aws:ecs:clusterArn,Value=your-cluster-arn}]"
    • Per associare una finestra dell'evento a tutte le attività dell'account

      aws ec2 associate-instance-event-window \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceTags=[{Key=aws:ecs:fargateTask,Value=true}]"

È possibile utilizzare più di una coppia chiave-valore per associare una finestra dell'evento a più servizi o cluster.

Fargate sceglierà la finestra dell'evento per ogni attività nel seguente ordine:

  • Se è presente una finestra di eventi associata al servizio dell'attività, verrà utilizzata. Questo non è applicabile alle attività autonome o non gestite.

  • Se è presente una finestra di eventi associata al cluster dell'attività, verrà utilizzata.

  • Se è impostata una finestra di eventi per tutte le attività di Fargate, verrà utilizzata.

  • L'fargateTaskRetirementWaitPeriodimpostazione verrà utilizzata se nessuna delle finestre degli eventi corrisponde all'attività.

Configurazione delle finestre degli eventi per la manutenzione delle attività di Fargate

Prendi in considerazione un caso in cui esegui più servizi ECS su Fargate con requisiti di disponibilità diversi. Desiderate un controllo preciso sulla cessazione delle attività. È possibile configurare più finestre di eventi come segue:

  • Manutenzione predefinita per tutte le attività Fargate: create una finestra evento per la manutenzione ordinaria durante le ore non di punta (tutti i giorni dalle 12:00 alle 4:00) e associatela a tutte le attività Fargate utilizzando il tag. aws:ecs:fargateTask

  • Manutenzione solo nel fine settimana per il cluster di sviluppo: per un cluster di sviluppo con servizi in grado di tollerare interruzioni nei fine settimana, crea una finestra di 24 ore per il fine settimana (sabato e domenica, tutto il giorno) e associala al cluster utilizzando il tag con l'ARN del aws:ecs:clusterArn cluster.

  • Intervallo limitato per il servizio mission critical: per un servizio di elaborazione dei pagamenti di importanza critica che richiede un'elevata operatività durante i giorni feriali, limita la manutenzione alle prime ore mattutine del fine settimana (sabato e domenica, dalle 00:00 alle 04:00) e associala al servizio specifico utilizzando il tag con l'ARN del servizio. aws:ecs:serviceArn

Con questa configurazione, il servizio di pagamento utilizza la sua finestra specifica solo per il fine settimana, i servizi e le attività del cluster di sviluppo utilizzano la finestra di 24 ore del fine settimana e tutte le altre attività di Fargate utilizzano la finestra di manutenzione giornaliera predefinita.

Per ulteriori informazioni, consulta put-account-setting-defaulte consulta il riferimento put-account-settingall'API di Amazon Elastic Container Service.

Fase 2: registrazione delle notifiche di ritiro delle attività per avvisare i team ed effettuare azioni

Quando è imminente il ritiro di un'attività, AWS invia una notifica di ritiro dell'attività alla AWS Health Dashboard e al contatto e-mail principale su. Account AWS La AWS Health dashboard offre una serie di integrazioni in altri AWS servizi, tra cui Amazon EventBridge. Puoi utilizzarla EventBridge per creare automazioni a partire da una notifica di ritiro di un'attività, ad esempio per aumentare la visibilità del pensionamento imminente inoltrando il messaggio a uno strumento. ChatOps AWS Health Aware è una risorsa che mostra la potenza della AWS Health Dashboard e come le notifiche possono essere distribuite all'interno di un'organizzazione. Puoi inoltrare una notifica di ritiro delle attività a un'applicazione di chat, come Slack.

La figura seguente illustra la panoramica della soluzione.

Diagramma che mostra la soluzione Fargate per registrare gli avvisi di ritiro delle attività di Fargate.

Le seguenti informazioni forniscono dettagli.

  • Fargate invia la notifica di ritiro dell'attività a Dashboard AWS Health .

  • La AWS Health Dashboard invia posta elettronica al contatto di posta elettronica principale Account AWS su e notifica. EventBridge

  • EventBridge ha una regola che registra la notifica di pensionamento.

    La regola che cerca eventi con il tipo di dettagli dell'evento: "AWS Health Event" and the Event Detail Type Code: "AWS_ECS_TASK_PATCHING_RETIREMENT"

  • La regola attiva una funzione Lambda che inoltra le informazioni a Slack utilizzando un webhook in ingresso di Slack. Per ulteriori informazioni, consulta Webhook in ingresso.

Per un esempio di codice, vedi Acquisizione delle notifiche di ritiro delle AWS Fargate attività su Github.

Fase 3: controllo della sostituzione delle attività

Non puoi controllare l'ora esatta del ritiro di un'attività, tuttavia puoi definire un tempo di attesa. Se desideri controllare la sostituzione delle attività in base alla tua pianificazione, puoi registrare l'avviso di ritiro delle attività per comprendere innanzitutto la data di ritiro. Quindi, puoi implementare nuovamente il servizio per avviare attività sostitutive e, allo stesso modo, sostituire qualsiasi attività autonoma. Per i servizi che utilizzano l'implementazione progressiva, è possibile aggiornare il servizio utilizzando update-service con l'opzione force-deployment prima dell'inizio del ritiro.

Nell'esempio update-service seguente viene utilizzata l'opzione force-deployment.

aws ecs update-service —-service service_name \ --cluster cluster_name \ --force-new-deployment

Per i servizi che utilizzano la blue/green distribuzione, è necessario creare una nuova distribuzione in. AWS CodeDeploy Per informazioni su come creare l'implementazione, consulta create-deployment nella Guida di riferimento di AWS Command Line Interface .