Come posso risolvere i problemi di pianificazione di attività Amazon ECS eseguite su istanze EC2?
Amazon Elastic Container Service (Amazon ECS) non posiziona le mie attività sulle mie istanze Amazon Elastic Compute Cloud (Amazon EC2) come previsto.
Risoluzione
Se Amazon ECS non è in grado di posizionare un'attività, questa rimane nello stato PROVISIONING. Nei messaggi relativi agli eventi del servizio, ricevi il seguente errore:
"service ServiceName was unable to place a task because no container instance met all of its requirements."
Per risolvere il problema, controlla il motivo dell'errore nei messaggi degli eventi del servizio. Quindi completa i passaggi per la risoluzione del problema in base al motivo indicato.
Nel cluster non è stata trovata alcuna istanza di container
Se non registri le istanze EC2 nel cluster, ricevi un errore. Verifica la presenza di problemi di dimensionamento o avvio dell'istanza con il provider di capacità o il gruppo Amazon EC2 Auto Scaling che hai configurato.
Se l'istanza è stata avviata, controlla perché non è connessa al cluster.
La corrispondenza più vicina (istanza di container abcdexyz) presenta unità CPU/memoria/GPU insufficienti
Questo problema si verifica quando le istanze di container disponibili non dispongono della CPU, della memoria o della GPU richieste dall'attività. Per risolvere l’errore, intraprendi le seguenti azioni:
- Riduci le risorse allocate alle attività nella definizione dell'attività se sono più di quanto le istanze di container sono in grado di gestire.
- Aumenta il numero di istanze di container nel cluster.
- Se non riesci ad aumentare il numero di istanze di container, utilizza istanze di container più grandi con più risorse.
- Verifica se è possibile ridurre il numero di repliche dell'attività.
Per risolvere ulteriormente i problemi relativi alla CPU, consulta How do I resolve "the closest matching container-instance container-instance-id has insufficient CPU units available" error in Amazon ECS? (Come posso risolvere l'errore "the closest matching container-instance container-instance-id has insufficient CPU units available" in Amazon ECS?)
La corrispondenza più vicina (istanza di container abcdexyz) utilizza già una porta richiesta dall'attività
Il problema si verifica quando l'istanza di container utilizza già la porta richiesta. Non puoi eseguire più attività sulla stessa porta. Per risolvere il problema, aggiungi altre istanze di container al tuo cluster. È consigliabile scalare automaticamente le istanze di container. Crea un provider di capacità per il cluster. Oppure, per consentire alle attività di utilizzare qualsiasi porta disponibile su un'istanza di container, utilizza la mappatura dinamica delle porte.
La corrispondenza più vicina (istanza di container abcdexyz) non include un attributo richiesto dall'attività
Il problema si verifica quando all'istanza di container manca un attributo obbligatorio specificato nella definizione dell'attività. Per verificare gli attributi mancanti, esegui il comando check-attributes dell’interfaccia a riga di comando di Amazon ECS (ECS CLI):
ecs-cli check-attributes --container-instances container-instance --cluster cluster-name --region region-code --task-def task-def-name
Nota: sostituisci container-instance con il nome della tua istanza di container, cluster-name con il nome del tuo cluster, region-code con la tua Regione AWS e a task-def-name con la tua definizione dell'attività.
L'output del comando precedente mostra una tabella con gli attributi obbligatori mancanti. Per informazioni sulla risoluzione dei problemi relativi agli attributi mancanti, consulta Checking for Missing Attributes and Debugging Reason Attribute Errors (Verifica degli attributi mancanti e risoluzione degli errori relativi agli attributi in base al motivo) sul sito web di GitHub.
La corrispondenza più vicina (istanza di container abcdexyz) non ha l'agente connesso
Il problema si verifica quando l'agente Amazon ECS si disconnette. Per risolverlo, consulta i seguenti articoli:
- Se utilizzi Amazon Linux 1 (AL1), consulta Perché le mie istanze di container Amazon ECS con Amazon Linux 1 AMI sono disconnesse?
- Se utilizzi Amazon Linux 2 (AL2) o Amazon Linux 2023 (AL2023), consulta How do I troubleshoot a disconnected Amazon ECS agent? (Come posso risolvere i problemi relativi a un agente Amazon ECS disconnesso?)
La corrispondenza più vicina (istanza di container abcdexyz) ha riscontrato l'errore "MemberOf placement constraint unsatisfied."
Se utilizzi i vincoli di posizionamento per posizionare le attività in istanze specifiche, assicurati che le istanze di container supportino gli attributi o i vincoli selezionati.
Per ulteriori informazioni, consulta Come posso risolvere i problemi relativi ai vincoli di posizionamento di attività Amazon ECS?
Informazioni correlate
- Argomenti
- Containers
- Lingua
- Italiano
