Salta al contenuto

Come posso assegnare tag a risorse Amazon ECS per il monitoraggio di costi e conformità?

6 minuti di lettura
0

Desidero assegnare tag alle mie risorse Amazon Elastic Container Service (Amazon ECS) per monitorare costi e conformità.

Breve descrizione

Utilizza i tag per assegnare metadati personalizzati alle tue risorse Amazon ECS.

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.

Attiva l'autorizzazione all'assegnazione di tag delle risorse a livello di account

Per utilizzare e creare un tag quando crei un cluster o un servizio, è necessario che tu disponga delle autorizzazioni ecs:TagResource. È inoltre necessario che tu disponga delle autorizzazioni per eseguire le azioni necessarie al fine di creare la risorsa, come ad esempio ecsCreateCluster.

Per visualizzare lo stato attuale dell'autorizzazione all’assegnazione di tag a livello di account AWS, esegui il seguente comando list-account-settings:

aws ecs list-account-settings --effective-settings

Nell'output del comando, controlla se hai attivato l'autorizzazione all’assegnazione di tag. Se non hai attivato l'autorizzazione all’assegnazione di tag, esegui il seguente comando put-account-setting-default per attivarla:

 aws ecs put-account-setting-default --name tagResourceAuthorization --value on --region regionname

Nota: sostituisci regionname con la tua regione AWS.

Utilizza il formato ARN corretto

Per assegnare tag a risorse Amazon ECS, è necessario utilizzare i nuovi formati ARN e ID. Potrebbe essere necessario migrare la distribuzione di Amazon ECS al nuovo formato ARN e ID risorsa.

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

Se non riesci ad aggiungere tag al tuo servizio Amazon ECS, assicurati che la tua entità AWS Identity and Access Management (IAM) disponga delle autorizzazioni richieste. Per informazioni, consulta la sezione Verifica che l'entità IAM disponga delle autorizzazioni richieste e controlla le restrizioni relative ai tag in Come posso risolvere i problemi relativi ai tag delle attività Amazon ECS?

Utilizza i tag gestiti da Amazon ECS per la fatturazione

Attiva il parametro EnableECSManagedTags

Quando utilizzi i tag gestiti da Amazon ECS, Amazon ECS assegna automaticamente tag a tutte le attività appena avviate con le informazioni sul cluster e i tag della definizione dell’attività o del servizio. Amazon ECS assegna tag anche ai volumi Amazon Elastic Block Service (Amazon EBS) collegati alle attività. Il parametro PropagateTags non è attivato per impostazione predefinita. Per copiare i tag dalla definizione dell'attività o dal servizio all'attività, è necessario attivare il parametro.

Per attivare il parametro enableECSManagedTags quando crei un servizio, esegui il seguente comando create-service:

aws ecs create-service \
 --cluster clustername \
 --service-name servicename \
 --task-definition taskdefinitionname \
 --desired-count 1 \
 --launch-type FARGATE \
 --enable-ecs-managed-tags \
 --network-configuration "awsvpcConfiguration={subnets=[subnet-ABCD],securityGroups=[sg-ABC],assignPublicIp=ENABLED}"

Nota: sostituisci clustername con il nome del tuo cluster, servicename con il nome del tuo servizio e taskdefinitionname con il nome della tua definizione dell'attività. Aggiungi la tua configurazione di rete all'opzione**--network-configuration**.

Per attivare il parametro enableECSManagedTags quando esegui un'attività, esegui il seguente comando run-task:

aws ecs run-task \
 --cluster clustername \
 --task-definition taskdefinitionname  \
 --launch-type FARGATE \
 --enable-ecs-managed-tags \
 --network-configuration "awsvpcConfiguration={subnets=[subnet-ABC],securityGroups=[sg-ABC]}"

Nota: sostituisci clustername con il nome del tuo cluster e taskdefinitionname con il nome della tua definizione dell'attività. Aggiungi la tua configurazione di rete all'opzione**--network-configuration**.

**Attiva i tag gestiti da Amazon ECS **

Utilizza la console Amazon ECS o l'interfaccia della lina di comando AWS per attivare i tag gestiti.

Console Amazon ECS

Completa i seguenti passaggi:

  1. Apri la console Amazon ECS.
  2. Seleziona la regione per la tua risorsa Amazon ECS.
  3. Nel pannello di navigazione, seleziona Definizioni di attività.
  4. Seleziona la definizione dell'attività dall'elenco delle risorse, quindi scegli Operazioni.
  5. Seleziona Crea servizio o Esegui attività.
  6. In Configurazione dell'assegnazione di tag delle attività, seleziona Abilita tag gestiti da ECS.
    Nota: per copiare i tag dalla definizione dell'attività o dal servizio all'attività, seleziona la tua risorsa in Propaga i tag da, . Per impostazione predefinita, il parametro PropagateTags è impostato su Non propagare.

Interfaccia della linea di comando AWS

Esegui il seguente comando update-service:

aws ecs update-service --cluster clustername --service servicename --enable-ecs-managed-tags --force-new-deployment

Nota: sostituisci servicename con il nome del tuo servizio e clustername con il nome del tuo cluster.

Imposta la propagazione dei tag

La propagazione dei tag è disattivata per impostazione predefinita. Per verificare se hai attivato PropagateTags in un servizio specifico, esegui il seguente comandodescribe-services:

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

Nota: sostituisci servicename con il nome del tuo servizio, clustername con il nome del tuo cluster e region con la tua regione.

Per aggiungere la propagazione dei tag quando crei un servizio, esegui il seguente comando create-service:

aws ecs create-service \
--cluster clustername \
--service-name servicename \
--task-definition taskdefinitionname \
--desired-count 1 \
--launch-type FARGATE \
--enable-ecs-managed-tags \
--propagate-tags TASK_DEFINITION-SERVICE \
--network-configuration "awsvpcConfiguration={subnets=[subnet-ABCD],securityGroups=[sg-ABC],assignPublicIp=ENABLED}"

Nota: sostituisci clustername con il nome del tuo cluster, servicename con il nome del tuo servizio e taskdefinitionname con la tua definizione dell'attività. Inoltre, sostituisci FARGATE con il tuo tipo di avvio e TASK_DEFINITION-SERVICE con TASK_DEFINITION o SERVICE in base a dove desideri effettuare la propagazione. Aggiungi la tua configurazione di rete all'opzione**--network-configuration**.

Per aggiungere la propagazione dei tag quando esegui un'attività, esegui il seguente comando run-task:

aws ecs run-task \
--cluster clustername \
--task-definition taskdefinitionname \
--launch-type FARGATE \
--enable-ecs-managed-tags \
--propagate-tags TASK_DEFINITION-SERVICE \
--network-configuration "awsvpcConfiguration={subnets=[subnet-ABC],securityGroups=[sg-ABC]}"

Nota: sostituisci clustername con il nome del tuo cluster e taskdefinitionname con la tua definizione dell'attività. Inoltre, sostituisci FARGATE con il tuo tipo di avvio e TASK_DEFINITION-SERVICE con TASK_DEFINITION o SERVICE in base a dove desideri effettuare la propagazione. Aggiungi la tua configurazione di rete all'opzione**--network-configuration**.

Per aggiungere la propagazione dei tag a un servizio esistente, esegui il seguente comando update-service:

aws ecs update-service --cluster clustername --service servicename --propagate-tags servicetagdefinition --force-new-deployment

Nota: sostituisci servicename con il nome del tuo servizio, clustername con il nome del tuo cluster e servicetagdefinition con la tua definizione del tag o del servizio.

È necessario attivare i tag di allocazione dei costi in modo che compaiano nel rapporto di fatturazione.

Nota: l'attivazione dei tag può richiedere fino a 24 ore.

Informazioni correlate

Report sull'utilizzo di Amazon ECS

AWS UFFICIALEAggiornata 2 anni fa