Come posso risolvere i problemi relativi all'assegnazione di tag nelle attività ECS?

Ultimo aggiornamento: 01/04/2022

Ho un problema con i tag delle attività di Amazon Elastic Container Service (Amazon ECS). In che modo posso risolvere il problema?

Risoluzione

Potresti avere i seguenti problemi durante l'impostazione dei tag con Amazon ECS:

  • I tag non vengono propagati dalla definizione del servizio o dell'attività alle attività.
  • I tuoi tag hanno un Amazon Resource Name (ARN) e un formato ID risorsa obsoleti.
  • Non riesci ad aggiungere i tag alle risorse ECS a causa della mancanza di autorizzazioni o limitazioni applicate ai di AWS Identity and Access Management (IAM).
  • Non riesci a vedere i tag ECS nel pannello di controllo di fatturazione AWS.

Per risolvere questi problemi, completa le seguenti operazioni:

Verifica che il parametro PropagateTags venga utilizzato per la propagazione dalle definizioni dei servizi o delle attività alle attività

Il parametro PropagateTags può essere utilizzato per copiare i tag dalla definizione dell'attività o dal servizio all'attività. Questa operazione può essere eseguita quando stai esegui un'attività o crei un servizio. Questo parametro non è attivato di default.

Puoi verificare se PropagateTags viene utilizzato in un servizio specifico eseguendo il seguente comando in AWS CLI e sostituendo servicename, clustername e region con i valori appropriati:

aws ecs describe-services --services <servicename> --cluster <clustername> --region <region> --query 'services[*].propagateTags' --output text

Per configurare i tag per la propagazione dalla definizione del servizio o dell'attività tramite la CLI, consulta le API RunTask e CreateService.

Per attivare la propagazione dei tag utilizzando la console:

  1. Apri la console di Amazon ECS.
  2. Seleziona la Regione AWS per la tua risorsa ECS.
  3. Nel pannello di navigazione, seleziona Task Definitions (Definizioni di attività).
  4. Seleziona la definizione dell'attività dall'elenco delle risorse e scegliActions (Azioni). Quindi, scegliCreate Service (Crea servizio) o Run Task (Esegui attività).
  5. In Task tagging configuration (Configurazione dell'assegnazione di tag delle attività), accanto a Propagate tags from (Propaga tag da), scegli Service (Servizio) o Task definitions (Definizioni di attività).
    Nota: l'opzione di default è Do not propagate (Non propagare).

Per utilizzare i tag in ECS usando AWS CloudFormation, devi dichiarare l'entità AWS::ECS::Service utilizzando le proprietà EnableECSManagedTags e PropagateTags con il valore: SERVICE o TASK _DEFINITION.

Nota:

  • l'utilizzo delle proprietà correlate ai tag di servizio ECS dopo la creazione dello stack in CloudFormation richiederà un aggiornamento dello stack e la sostituzione delle risorse. Ciò significa che il servizio verrà eliminato e creato nuovamente tramite CloudFormation.
  • Il parametro PropagateTags può essere utilizzato solo quando esegui un'attività o crei un servizio. Per ulteriori informazioni, consulta le API RunTask e CreateService.
  • Hai accesso alle stesse configurazioni per le attività programmate che hai per le attività avviate direttamente utilizzando l'API RunTask di Amazon ECS.

Verifica di utilizzare il nuovo formato ARN

Per poter assegnare tag alle risorse Amazon ECS, devi utilizzare i nuovi formati ID e Amazon Resource Name (ARN) .

Esempio dei due formati:

  • Vecchio formato: arn:aws:ecs:region:aws_account_id:service/service-name
  • Nuovo formato: arn:aws:ecs:region:aws_account_id:service/nome-cluster/nome-servizio

Per migrare l'implementazione di ECS nel nuovo formato ARN e ID risorsa, consulta Migrating your Amazon ECS deployment to the new ARN and resource ID format.

Nota: le risorse esistenti non riceveranno il nuovo formato ARN durante l'assegnazione di tag finché non verranno ricreate.

Verifica che l'entità IAM disponga delle autorizzazioni richieste e controlla le limitazioni applicate ai tag

Se non riesci ad aggiungere tag al servizio ECS, procedi come segue:

  1. Controlla gli eventi CloudTrail nella console di CloudTrail per gli eventi TagResource.
  2. Se vedi uno dei seguenti errori: AccessDenied o I tag non possono essere aggiornati in questo momento. Attendi qualche minuto e riprova, quindi l'entità IAM non dispone delle autorizzazioni ecs:TagResource.
  3. Per risolvere questo problema, aggiungi le autorizzazioni ecs:TagResource alle entità IAM.
  4. Una volta aggiunte le autorizzazioni, prova nuovamente ad aggiungere i tag al cluster ECS.

Verifica che i tag ECS rientrino nelle limitazioni applicate ai tag. Per esaminare le restrizioni dei tag, consulta Limitazioni applicate ai tag.

Verifica se si tratta di un problema relativo alla Gestione costi e fatturazione AWS

Per verificare che i tag richiesti siano presenti a livello di attività ECS, esegui il seguente comando in AWS CLI e sostituisci value con l'ARN:

aws ecs list-tags-for-resource --resource-arn <value>

Per verificare che i tag richiesti siano presenti a livello di attività ECS utilizzando la console:

  1. Apri la console di Amazon ECS.
  2. Seleziona la Regione AWS per la tua risorsa ECS.
  3. Nel pannello di navigazione, seleziona un tipo di risorsa (ad esempio, Cluster).
  4. Seleziona la risorsa dall'elenco delle risorse e scegli Tag.
    Se esistono tag, questi verranno elencati.

Se stai cercando tag gestiti, allora l'opzione gestito da ECS deve essere attivata. Verifica lo stato gestito da ECS eseguendo il seguente comando e sostituendo servicename,clustername e region con i valori adeguati:

aws ecs describe-services --services <servicename> --cluster <clustername> --region <region> --query 'services[*].enableECSManagedTags' --output text

L'output del comando conterrà il valore EnableECSManagedTags.

Puoi attivare i tag gestiti da ECS durante la creazione del servizio o l'esecuzione di attività utilizzando la CLI. Per ulteriori informazioni, consulta le APIRunTask e CreateService.

Per attivare i tag gestiti da ECS utilizzando la console:

  1. Apri la console di Amazon ECS.
  2. Seleziona la Regione AWS per la tua risorsa ECS.
  3. Nel pannello di navigazione, seleziona Task Definitions (Definizioni di attività).
  4. Seleziona la definizione dell'attività dall'elenco delle risorse e scegliActions (Azioni). Quindi, scegliCreate Service (Crea servizio) o Run Task (Esegui attività).
  5. NellaTask tagging configuration (Configurazione dell'assegnazione di tag delle attività), scegli Enable ECS managed tags (Abilita tag gestiti da ECS).

Se i tag utilizzati per la fatturazione sono elencati ma non possono essere visualizzati in AWS Cost Explorer, assicurati che i tag siano attivati dalla console di Gestione costi e fatturazione. Per attivare i tag per l'allocazione dei costi, consulta Attivazione dei tag per l'allocazione dei costi definiti dall'utente.
Nota: ogni tag che deve essere visualizzato come filtro nel Cost Explorer deve essere attivato. L'attivazione dei tag può richiedere fino a 24 ore.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?