Drenaggio delle istanze di container 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à.

Drenaggio delle istanze di container Amazon ECS

In alcuni casi potrebbe essere necessario rimuovere un'istanza di container dal cluster, ad esempio per eseguire aggiornamenti di sistema o per ridurre la capacità del cluster. Amazon ECS offre la possibilità di passare un'istanza di container a uno stato DRAINING. Questa operazione è nota come svuotamento dell'istanza di container. Quando un'istanza di container è impostata su DRAINING, Amazon ECS impedisce che venga pianificato il posizionamento di nuovi processi nell'istanza di container.

Comportamento di svuotamento per i servizi

Qualsiasi processo che fa parte di un servizio che si trova in uno stato PENDING viene arrestato immediatamente. Se nel cluster è disponibile la capacità dell'istanza di container, il pianificatore di servizi avvierà i processi di sostituzione. Se la capacità dell'istanza di container non è sufficiente, verrà inviato un messaggio di evento del servizio che indica il problema.

I processi che fanno parte di un servizio nell'istanza di container che si trovano in uno stato RUNNING passano a uno stato STOPPED. Lo scheduler di servizi prova a sostituire le attività in base al tipo di implementazione e ai parametri di configurazione dell'implementazione del servizio, minimumHealthyPercent e maximumPercent. Per ulteriori informazioni, consulta Servizi Amazon ECS e Parametri di definizione del servizio Amazon ECS.

  • Se minimumHealthyPercent è inferiore al 100%, il pianificatore può ignorare desiredCount temporaneamente durante la sostituzione delle attività. Ad esempio, desiredCount sono quattro attività, un minimo del 50% permette al pianificatore di interrompere due attività esistenti prima di avviare due nuove attività. Se il minimo è del 100%, il pianificatore del servizio non può rimuovere le attività esistenti fino a quando le attività di sostituzione non vengono considerate integre. Se le attività per i servizi che non utilizzano un load balancer sono in stato RUNNING, vengono considerate integre. Le attività per i servizi che utilizzano un load balancer vengono considerate integre se sono in stato RUNNING e se il load balancer considera integra l'istanza di container su cui sono ospitate.

    Importante

    Se utilizzi le istanze Spot e minimumHealthyPercent è maggiore o uguale al 100%, il servizio non avrà abbastanza tempo per sostituire l'attività prima della cessazione dell'istanza Spot.

  • Il parametro maximumPercent rappresenta un limite superiore al numero di attività in esecuzione durante la sostituzione delle attività. Ciò permette di definire le dimensioni del batch di sostituzione. Ad esempio, se desiredCount di quattro attività, un massimo di 200% avvia quattro nuove attività prima di interrompere le quattro attività affinché vengano esaurite (a condizione che le risorse del cluster necessarie per questa operazione siano disponibili). Se il massimo è 100%, le attività di sostituzione non possono avviarsi fino all'interruzione delle attività di esaurimento.

    Importante

    Se minimumHealthyPercent e maximumPercent sono entrambi al 100%, il servizio non può rimuovere i processi esistenti e non può inoltre avviare processi di sostituzione. Ciò impedisce il corretto svuotamento delle istanze del container e impedisce la creazione di nuove implementazioni.

Comportamento di svuotamento per processi autonomi

Qualsiasi processo autonomo nello stato PENDING o RUNNING non ne è influenzato; devi attenderne l'interruzione o interromperlo manualmente. L'istanza di container rimarrà nello DRAINING stato.

Un'istanza di container ha completato lo svuotamento quando tutti i processi in esecuzione sull'istanza passano a uno stato STOPPED. L'istanza di container rimane nello stato DRAINING finché non viene nuovamente attivata o eliminata. Puoi verificare lo stato delle attività sull'istanza del contenitore utilizzando l'ListTasksoperazione con il containerInstance parametro per ottenere un elenco di attività sull'istanza seguita da un'DescribeTasksoperazione con l'Amazon Resource Name (ARN) o l'ID di ciascuna attività per verificare lo stato dell'attività.

Quando desideri che l'istanza di container avvi nuovamente i processi di hosting, puoi modificare lo stato dell'istanza di container da DRAINING a ACTIVE. Lo scheduler del servizio Amazon ECS considererà nuovamente l'istanza di container per il posizionamento del processo.

Procedura

Le seguenti fasi possono essere utilizzate per impostare lo svuotamento di un'istanza di container utilizzando la nuova AWS Management Console.

Puoi anche utilizzare l'azione UpdateContainerInstancesStateAPI o il comando update-container-instances-state per modificare lo stato di un'istanza del contenitore in. DRAINING

AWS Management Console
  1. Apri la console all'indirizzo https://console.aws.amazon.com/ecs/v2.

  2. Nel pannello di navigazione scegliere Clusters (Cluster).

  3. Alla pagina Clusters (Cluster), scegli un cluster che ospita le istanze.

  4. Alla pagina Cluster : name (Cluster: nome), scegli la scheda Infrastructure (Infrastruttura). Quindi, in Container instances (Istanze di container) e seleziona la casella di controllo per ciascuna istanza di container che desideri svuotare.

  5. Scegli Operazioni, Drain.