In che modo è possibile risolvere i problemi relativi alle attività di Amazon ECS che richiedono molto tempo per interrompersi quando l'istanza di container è impostata su SVUOTAMENTO?
La mia attività Amazon Elastic Container Service (Amazon ECS) impiega molto tempo per passare allo stato INTERROTTO. Oppure, la mia attività Amazon ECS è bloccata nello stato IN ESECUZIONE quando l'istanza di container è impostata su SVUOTAMENTO. Come posso risolvere questo problema?
Breve descrizione
Quando imposti un'istanza ECS su SVUOTAMENTO, Amazon ECS esegue le seguenti operazioni:
- Impedisce la pianificazione di nuove attività da posizionare sull'istanza di container
- Interrompe le attività sull'istanza di container che si trovano nello stato IN ESECUZIONE
Le attività possono essere bloccate nello stato IN ESECUZIONE o impiegare più tempo per passare allo stato INTERROTTO a causa di problemi con i parametri o le attività di configurazione. Per risolvere questi problemi, considera le seguenti opzioni:
- Verifica che i parametri DeploymentConfiguration siano impostati correttamente
- Verifica che il valore del ritardo di annullamento della registrazione sia impostato correttamente
- Verifica che il valore ECS_CONTAINER_STOP_TIMEOUT sia impostato correttamente
- Individua altri problemi relativi alle attività
Risoluzione
Verificare che i parametri DeploymentConfiguration siano impostati correttamente
- Apri la console Amazon ECS.
- Nel pannello di navigazione, scegli Cluster, quindi scegli il cluster in cui si sta svuotando l'istanza di container.
- Scegli la scheda Istanze ECS, quindi scegli SVUOTAMENTO nella sezione Stato.
- Scegli la tua istanza di container, quindi trova il servizio per le attività che si stanno svuotando o che richiedono molto tempo a svuotarsi.
- Scegli la scheda Servizi, seleziona il servizio, quindi scegli Distribuzioni.
- Controlla i valori minimumHealthyPercent e maximumPercent.
Nota: le attività di servizio sull'istanza di container che si trovano IN ESECUZIONE vengono interrotte e sostituite in base ai parametri della configurazione di implementazione del servizio: minimumHealthyPercent e maximumPercent.
Verificare che il valore del ritardo di annullamento della registrazione sia impostato correttamente
Importante: i passaggi seguenti si applicano solo ai servizi che utilizzano l'Application Load Balancer o il Network Load Balancer. Se il tuo servizio utilizza il Classic Load Balancer, controlla i valori di svuotamento della connessione.
- Apri la console Amazon ECS.
- Nel pannello di navigazione, scegli Cluster, quindi scegli il cluster in cui si sta svuotando l'istanza di container.
- Scegli la scheda Servizi, quindi seleziona il servizio con lo stack bloccato IN ESECUZIONE.
- Scegli Nome gruppo di destinazione.
- Nella scheda Dettagli, scorri verso il basso e seleziona la casella di controllo Ritardo di annullamento della registrazione.
Verificare che il valore ECS_CONTAINER_STOP_TIMEOUT sia impostato correttamente
- Connettiti all'istanza di container tramite SSH.
- Esegui il comando docker inspect ecs-agent --format '{{json .Config.Env}}'.
- Controlla se esiste un valore per ECS_CONTAINER_STOP_TIMEOUT.
Nota: ECS_CONTAINER_STOP_TIMEOUT è un parametro dell'agente del container ECS che definisce la quantità di tempo che Amazon ECS attende prima di terminare un container. Il tempo inizia a scorrere quando un'attività viene interrotta. Se non vedi il parametro ECS_CONTAINER_STOP_TIMEOUT nell'output dopo aver eseguito il comando nel passaggio 2, significa che Amazon ECS sta utilizzando il valore predefinito di 30s.
Individuare altri problemi relativi alle attività
- Connettiti all'istanza di container tramite SSH.
- Verifica che il daemon Docker e l'agente del container Amazon ECS siano in esecuzione per le tue AMI Amazon Linux 1 o Amazon Linux 2.
- Controlla i log di applicazione in base al driver di registro impostato da logConfiguration.
Nota: ad esempio, se le tue attività utilizzano il driver di registro awslogs, controlla che Amazon CloudWatch Logs non presenti problemi.
Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 8 mesi fa
- AWS UFFICIALEAggiornata 3 anni fa