Blocca in sicurezza i ECS carichi di lavoro Amazon in esecuzione sulle istanze EC2 - 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à.

Blocca in sicurezza i ECS carichi di lavoro Amazon in esecuzione sulle istanze EC2

Il drenaggio gestito delle istanze facilita la chiusura graduale delle istanze Amazon. EC2 Ciò consente ai carichi di lavoro di interrompersi in sicurezza e di essere riprogrammati su istanze non terminanti. La manutenzione e gli aggiornamenti dell'infrastruttura vengono eseguiti senza preoccuparsi dell'interruzione dei carichi di lavoro. Utilizzando il drenaggio gestito delle istanze, semplifichi i flussi di lavoro di gestione dell'infrastruttura che richiedono la sostituzione delle EC2 istanze Amazon, garantendo al contempo la resilienza e la disponibilità delle applicazioni.

Il drenaggio ECS gestito delle istanze di Amazon funziona con le istanze di gruppo Auto Scaling sostitutive. In base all'aggiornamento dell'istanza e alla durata massima dell'istanza, i clienti possono garantire la conformità ai più recenti requisiti di sistema operativo e sicurezza relativi alla loro capacità.

Il drenaggio gestito delle istanze può essere utilizzato solo con i fornitori ECS di capacità Amazon. Puoi attivare il drenaggio delle istanze gestite quando crei o aggiorni i fornitori di capacità del gruppo Auto Scaling utilizzando la console ECS Amazon AWS CLI, oppure. SDK

I seguenti eventi sono coperti dal drenaggio delle istanze ECS gestite da Amazon.

  • Aggiornamento delle istanze del gruppo Auto Scaling ‐ Utilizza l'aggiornamento delle istanze per eseguire la sostituzione progressiva delle EC2 istanze Amazon nel gruppo Auto Scaling anziché eseguirla manualmente in batch. Ciò è utile quando è necessario sostituire un gran numero di istanze. L'aggiornamento dell'istanza viene avviato tramite la EC2 console Amazon o il. StartInstanceRefresh API Assicurati di selezionare Replace la protezione Scale-in quando chiami StartInstanceRefresh se utilizzi la protezione gestita dalla terminazione.

  • Durata massima dell'istanza ‐ È possibile definire una durata massima quando si tratta di sostituire le istanze del gruppo Auto Scaling. Ciò è utile per pianificare le istanze sostitutive in base a politiche di sicurezza interne o alla conformità.

  • Scale-in del gruppo Auto Scaling ‐ Basato su politiche di scalabilità e azioni di scalabilità pianificate, il gruppo Auto Scaling supporta il ridimensionamento automatico delle istanze. Utilizzando un gruppo Auto Scaling come fornitore di ECS capacità Amazon, puoi scalare le istanze di gruppo Auto Scaling quando non vi è alcuna attività in esecuzione.

  • Controlli di integrità del gruppo Auto Scaling ‐ Il gruppo Auto Scaling supporta molti controlli di integrità per gestire la chiusura delle istanze non integre.

  • AWS CloudFormation aggiornamenti dello stack ‐ È possibile aggiungere un UpdatePolicy attributo allo AWS CloudFormation stack per eseguire aggiornamenti continui quando il gruppo cambia.

  • Ribilanciamento della capacità Spot ‐ Il gruppo Auto Scaling cerca di sostituire in modo proattivo le istanze Spot che presentano un rischio di interruzione più elevato in base all'avviso di ribilanciamento della capacità di Amazon. EC2 Il gruppo Auto Scaling termina la vecchia istanza quando la variante sostitutiva viene lanciata ed è funzionante. Il drenaggio dell'istanza ECS gestita da Amazon prosciuga l'istanza Spot nello stesso modo in cui drena un'istanza non Spot.

  • Interruzione in loco ‐ Le istanze Spot vengono chiuse con un preavviso di due minuti. Il drenaggio delle istanze ECS gestito da Amazon mette l'istanza in stato di drenaggio in risposta.

Il ciclo di vita di Amazon EC2 Auto Scaling si aggancia al drenaggio gestito delle istanze

Gli hook del ciclo di vita del gruppo Auto Scaling consentono al cliente di creare soluzioni attivate da determinati eventi nel ciclo di vita dell'istanza ed eseguire un'azione personalizzata quando si verifica quel determinato evento. Un gruppo Auto Scaling consente fino a 50 hook. Possono esistere più hook di terminazione che vengono eseguiti in parallelo e il gruppo Auto Scaling attende il completamento di tutti gli hook prima di terminare un'istanza.

Oltre alla terminazione degli hook ECS gestita da Amazon, puoi anche configurare i tuoi hook di terminazione del ciclo di vita. Gli hook del ciclo di vita dispongono di un default action hook e consigliamo di impostarlo continue come predefinito per garantire che altri hook, come l'hook ECS gestito da Amazon, non siano influenzati da errori causati dagli hook personalizzati.

Se hai già configurato un hook del ciclo di vita di terminazione del gruppo Auto Scaling e hai anche abilitato il drenaggio delle istanze ECS gestite da Amazon, vengono eseguiti entrambi gli hook del ciclo di vita. Le tempistiche relative, tuttavia, non sono garantite. I Lifecycle Hook hanno un'default actionimpostazione per specificare l'azione da intraprendere allo scadere del timeout. In caso di errori, consigliamo di utilizzare continue come risultato predefinito l'hook personalizzato. Ciò garantisce che altri hook, in particolare gli hook ECS gestiti da Amazon, non siano influenzati da errori nel tuo hook personalizzato del ciclo di vita. Il risultato alternativo di abandon fa sì che tutti gli altri hook vengano ignorati e dovrebbe essere evitato. Per ulteriori informazioni sugli hook del ciclo di vita del gruppo Auto Scaling, consulta gli hook del ciclo di vita di Amazon Auto Scaling nella Amazon EC2 Auto Scaling User Guide. EC2

Attività e drenaggio gestito delle istanze

Il drenaggio ECS gestito delle istanze di Amazon utilizza la funzionalità di drenaggio esistente disponibile nelle istanze di container. La funzionalità di drenaggio delle istanze del contenitore esegue la sostituzione e si interrompe per le attività di replica che appartengono a un servizio AmazonECS. Un'attività autonoma, come quella richiamata daRunTask, che si trova nello stato PENDING or RUNNING rimane inalterata. È necessario attendere che vengano completate o interromperle manualmente. L'istanza del contenitore rimane nello DRAINING stato finché tutte le attività non vengono interrotte o non sono trascorse 48 ore. Le attività daemon sono le ultime a interrompersi dopo l'interruzione di tutte le attività di replica.

Drenaggio gestito delle istanze e protezione gestita dalla terminazione

Il drenaggio gestito delle istanze funziona anche se la terminazione gestita è disabilitata. Per informazioni sulla protezione gestita dalla terminazione, vedere. Controlla le istanze che Amazon chiude ECS

La tabella seguente riassume il comportamento delle diverse combinazioni di terminazione gestita e drenaggio gestito.

Terminazione gestita Drenaggio gestito Outcome

Abilitato

Abilitato Amazon ECS protegge EC2 le istanze Amazon che eseguono attività dall'interruzione a causa di eventi di scalabilità. Tutte le istanze in fase di interruzione, ad esempio quelle per cui non è impostata la protezione dalla terminazione, che hanno subito un'interruzione da Spot o sono state forzate dall'aggiornamento dell'istanza, vengono completamente esaurite.

Disabilitato

Abilitato Amazon ECS non protegge le EC2 istanze Amazon che eseguono attività dalla scalabilità. Tuttavia, tutte le istanze che vengono terminate vengono completamente svuotate.

Abilitato

Disabilitato Amazon ECS protegge EC2 le istanze Amazon che eseguono attività dall'interruzione a causa di eventi di scalabilità. Tuttavia, le istanze possono comunque essere interrotte dall'interruzione di Spot o dall'aggiornamento forzato dell'istanza o se non eseguono alcuna attività. Amazon ECS non esegue operazioni di drenaggio regolari per queste istanze e avvia attività di assistenza sostitutive dopo che queste si sono interrotte.

Disabilitato

Disabilitato EC2Le istanze Amazon possono essere scalate o terminate in qualsiasi momento, anche se eseguono attività Amazon. ECS Amazon ECS avvierà attività di assistenza sostitutive dopo la loro interruzione.
Drenaggio gestito delle istanze e drenaggio delle istanze Spot

Con il drenaggio delle istanze Spot, puoi impostare una variabile di ambiente ECS_ENABLE_SPOT_INSTANCE_DRAINING sull'ECSagente Amazon che consente ad Amazon di ECS mettere un'istanza nello stato di drenaggio in risposta all'interruzione Spot di due minuti. Il drenaggio ECS gestito delle istanze di Amazon facilita l'arresto graduale delle EC2 istanze Amazon in fase di chiusura per molte ragioni, non solo per un'interruzione Spot. Ad esempio, puoi utilizzare il ribilanciamento della capacità di Amazon EC2 Auto Scaling per sostituire in modo proattivo l'istanza Spot con un rischio elevato di interruzione, mentre il drenaggio gestito delle istanze esegue l'arresto graduale dell'istanza Spot in fase di sostituzione. Quando si utilizza il drenaggio gestito delle istanze, non è necessario abilitare il drenaggio delle istanze Spot separatamente, quindi ECS_ENABLE_SPOT_INSTANCE_DRAINING nel gruppo Auto Scaling i dati degli utenti sono ridondanti. Per ulteriori informazioni sul drenaggio delle istanze Spot, consulta. Spot Instances

Come funziona il drenaggio gestito delle istanze con EventBridge

Gli eventi di drenaggio delle istanze ECS gestite da Amazon vengono pubblicati su Amazon EventBridge e Amazon ECS crea una regola EventBridge gestita nel bus predefinito del tuo account per supportare il drenaggio delle istanze gestite. Puoi filtrare questi eventi su altri AWS servizi come LambdaSNS, Amazon e Amazon SQS per il monitoraggio e la risoluzione dei problemi.

  • Amazon EC2 Auto Scaling invia un evento EventBridge quando viene richiamato un hook del ciclo di vita.

  • Gli avvisi di interruzione Spot vengono pubblicati su. EventBridge

  • Amazon ECS genera messaggi di errore che puoi recuperare tramite la ECS console Amazon eAPIs.

  • EventBridge dispone di meccanismi di riprova integrati per mitigare i guasti temporanei.

Risoluzione dei problemi relativi al drenaggio delle istanze Amazon ECS Managed

Potrebbe essere necessario risolvere i problemi relativi al drenaggio gestito delle istanze. Di seguito è riportato un esempio di un problema e di una risoluzione che potresti riscontrare durante l'utilizzo.

Le istanze non terminano dopo aver superato la durata massima dell'istanza quando si utilizza la scalabilità automatica.

Se le istanze non terminano nemmeno dopo aver raggiunto e superato la durata massima dell'istanza durante l'utilizzo di un gruppo con scalabilità automatica, è possibile che siano protette dalla scalabilità in entrata. Puoi disattivare la terminazione gestita e consentire il drenaggio gestito per gestire il riciclo delle istanze.