Knowledge Center Monthly Newsletter - June 2025
Stay up to date with the latest from the Knowledge Center. See all new Knowledge Center articles published in the last month, and re:Post's top contributors.
Come posso risolvere i problemi relativi alle attività pianificate in Amazon ECS?
Ho pianificato l'esecuzione periodica della mia attività Amazon Elastic Container Service (Amazon ECS). Tuttavia, la mia attività Amazon ECS non è attivata e non ricevo i log di esecuzione o la cronologia delle attività nel cluster.
Risoluzione
Nota: se ricevi errori durante l’esecuzione dei comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
Quando utilizzi un'attività pianificata, Amazon EventBridge chiama l'API RunTask affinché Amazon ECS esegua le attività per tuo conto. L'attività Amazon ECS pianificata potrebbe non essere invocata per i seguenti motivi:
- Hai configurato in modo errato l'ora o l'espressione cron di EventBridge.
- La regola o la pianificazione di EventBridge non invoca la destinazione.
- L'API RunTask non è stata eseguita.
- L'istanza del container si è chiusa a causa di problemi dell'applicazione o di vincoli di risorse.
- Le attività pianificate non sono state eseguite a causa di vincoli di capacità.
- Le attività pianificate non sono state eseguite a causa di problemi di connettività di rete.
Verifica che l'espressione cron di EventBridge sia configurata correttamente
Per ottenere l'espressione cron di EventBridge, esegui uno dei seguenti comandi AWS CLI.
Se utilizzi le regole di EventBridge, esegui il comando describe-rule:
aws events describe-rule --name example-rule --region example-region
Se utilizzi il Pianificatore EventBridge, esegui il comando get-schedule:
aws scheduler get-schedule --name example-schedule --region example-region
Nota: sostituisci example-rule con il nome della tua regola, example-schedule con il nome della tua pianificazione e example-region con la tua regione AWS.
Nell'output del comando, controlla l'espressione cron di EventBridge nel parametro ScheduleExpression. Assicurati di impostare la pianificazione della regola sul fuso orario UTC+0.
Verifica se la regola o la pianificazione non invoca la destinazione
Per verificare le metriche Invocations e FailedInvocations di Amazon CloudWatch per la regola EventBridge, completa i seguenti passaggi:
- Apri la console CloudWatch.
- Nel pannello di navigazione, scegli Parametri, quindi scegli Tutti i parametri.
- Scegli Eventi.
- Scegli Per nome della regola.
- Seleziona TriggerRules, Invocations e FailedInvocations per la regola EventBridge che esegue l'attività Amazon ECS.
- Scegli la scheda Parametri definiti.
- Per Statistica, seleziona SOMMA per ogni metrica.
Per verificare le prestazioni del Pianificatore EventBridge, esamina le metriche InvocationAttemptCount, TargetErrorCount e InvocationDroppedCount CloudWatch.
Se vedi dati FailedInvocations o InvocationDroppedCount, verifica che il ruolo AWS Identity and Access Management (IAM) di EventBridge sia autorizzato a invocare l'attività.
Se vedi dati TargetErrorCount, ciò indica la presenza di un problema di invocazione della destinazione. Controlla se l'attività è stata avviata, è stata avviata e l'esecuzione si è subito interrotta, oppure non è stata completata.
Verifica se l'azione RunTask non è riuscita
Completa i seguenti passaggi:
- Apri la console AWS CloudTrail.
- Nel pannello di navigazione scegli Cronologia degli eventi.
- Per Attributi di ricerca, seleziona Nome evento.
- In Specifica un nome per l’evento, inserisci "run task".
- Nel filtro dell'intervallo di tempo, seleziona gli orari in cui ti aspetti che l'attività Amazon ECS pianificata venga eseguita.
- Nella tabella, seleziona l'evento che desideri visualizzare.
- Nei record degli eventi JSON, verifica se l'API non ha richiamato l'attività pianificata controllando la presenza di errorMessage o responseElements.failures.reason.
Nota: è possibile trovare l'ID dell'attività non riuscita nel campo responseElements.tasks.taskARN. - Risolvi il problema dell'errore dell'API.
Verifica se il container si è chiuso dopo l'esecuzione dell'attività
Anche dopo l'esecuzione corretta dell'attività, le attività di Amazon ECS potrebbero interrompersi a causa di problemi dell'applicazione o di vincoli di risorse. Per risolvere il problema, consulta Come posso risolvere il problema relativo ad attività Amazon ECS che si interrompono o non vengono avviate quando il mio container si chiude?
Verifica la presenza di problemi relativi ai vincoli di capacità
I problemi di vincoli di capacità che causano la mancata esecuzione di attività si verificano quando il cluster non dispone di risorse di calcolo sufficienti, come CPU e memoria. Oppure si verificano quando altri carichi di lavoro in esecuzione sullo stesso cluster causano un utilizzo elevato delle risorse. Anche i vincoli o le strategie restrittive relative al posizionamento delle attività potrebbero ridurre le risorse disponibili.
Per monitorare l'utilizzo delle risorse, configura Container Insights sui tuoi cluster Amazon ECS. Puoi anche impostare allarmi CloudWatch per avvisarti quando raggiungi una soglia di utilizzo delle risorse. Per assicurarti che le risorse siano disponibili quando ne hai bisogno, imposta prenotazioni di CPU e memoria per le attività. Potrebbe essere necessario aumentare il numero desiderato per consentire al servizio Amazon ECS di aumentare orizzontalmente il cluster o utilizzare il dimensionamento automatico del cluster.
Esamina i vincoli di posizionamento delle attività esistenti e modificali per renderli meno restrittivi. È consigliabile dare priorità ai carichi di lavoro critici, riprogrammare i carichi di lavoro non essenziali e testare diverse strategie di posizionamento, come spread, binpack o random.
Utilizza i provider di capacità Amazon ECS per riservare capacità per carichi di lavoro importanti. È consigliabile utilizzare le istanze dedicate Amazon Elastic Compute Cloud (Amazon EC2) per carichi di lavoro che richiedono hardware isolato. Utilizza AWS Fargate per attività che richiedono risorse disponibili.
Verifica la presenza di problemi di connettività di rete
Per risolvere i problemi di connettività di rete per le attività pianificate, intraprendi le seguenti azioni:
- Assicurati che le regole del gruppo di sicurezza e della lista di controllo degli accessi alla rete (ACL) consentano il traffico in entrata e in uscita richiesto per le attività.
- Verifica di aver configurato correttamente il gateway Internet o il gateway NAT per il cloud privato virtuale (VPC).
- Controlla le tabelle di routing del gateway.
- Esamina le definizioni delle attività verificando le variabili d’ambiente con indirizzi IP o nomi host codificati. Assicurati che gli indirizzi IP o i nomi host esistenti siano corretti e raggiungibili.
Per testare la connettività di rete dalle istanze di container, completa i seguenti passaggi:
- Utilizza SSH per connetterti all'istanza Amazon EC2.
- Per eseguire comandi in remoto sul container, esegui il seguente comando execute-command:
Nota: sostituisci cluster-name con il nome del tuo cluster, task-id con l'ID della tua attività e container-name con il nome della tua istanza di container.aws ecs execute-command --cluster cluster-name --task task-id --container container-name --command "/bin/bash" --interactive
- Per testare la connettività, esegui uno dei seguenti comandi:
-oppure-curl -v http://example.com
-oppure-nslookup example.com
Nota: sostituisci example.com con il tuo dominio.nc -zv example.com 80
- Controlla la risoluzione e il routing del DNS per individuare i problemi di rete.
Per semplificare la connettività, esegui le attività su Fargate anziché su Amazon EC2. Con Fargate, non è necessario gestire l'infrastruttura sottostante. Oppure utilizza gli endpoint VPC per connetterti ai servizi senza un gateway Internet, un dispositivo NAT, una connessione VPN o una connessione AWS Direct Connect.

Contenuto pertinente
- AWS UFFICIALEAggiornata 6 mesi fa