

# Marcação de recursos do Amazon ECS
<a name="ecs-using-tags"></a>

Para ajudar a gerenciar os recursos do Amazon ECS, você pode, opcionalmente, atribuir seus próprios metadados a cada recurso usando *etiquetas*. Cada *tag* consiste em uma *chave* e um *valor* opcional.

É possível usar tags para categorizar seus recursos do Amazon ECS de diferentes formas, p. ex., por finalidade, proprietário ou ambiente. Isso é útil quando você tem muitos recursos do mesmo tipo. É possível identificar rapidamente um recurso específico com base nas tags atribuídas a ele. Por exemplo, você pode definir um conjunto de tags para as instâncias de contêiner do Amazon ECS da sua conta. Isso ajuda você a rastrear o proprietário e o nível de pilha de cada instância.

É possível usar tags para seus relatórios de custo e uso. É possível usar esses relatórios para analisar o custo e o uso de seus recursos do Amazon ECS. Para obter mais informações, consulte [Relatórios de uso do Amazon ECS](usage-reports.md).

**Atenção**  
Há muitas APIs que retornam chaves de tag e seus valores. Negar acesso ao `DescribeTags` não nega automaticamente acesso às tags apresentadas por outras APIs. Como uma prática recomendada, sugerimos que você não inclua dados confidenciais nas suas tags.

Recomendamos que você desenvolva um conjunto de chave de tags que atenda suas necessidades para cada tipo de recurso. É possível usar um conjunto consistente de chaves de tags para um gerenciamento mais fácil de seus recursos. É possível pesquisar e filtrar os recursos de acordo com as tags que adicionar.

As etiquetas não têm significado semântico no Amazon ECS e são interpretadas estritamente como uma string de caracteres. É possível editar chaves de tags e valores, e é possível remover as tags de um recurso a qualquer momento. É possível definir o valor de uma tag a uma string vazia, mas não pode configurar o valor de um tag como nula. Se você adicionar uma etiqueta que tenha a mesma chave de uma etiqueta existente nesse recurso, o novo valor substituirá o antigo. Ao excluir um recurso, todas as respectivas tags também são excluídas.

Se você estiver usando o AWS Identity and Access Management (IAM), poderá controlar quais usuários na sua conta da AWS têm permissão para gerenciar etiquetas.

## Como os recursos são marcados
<a name="tag-resources"></a>

Há várias maneiras para marcar as tarefas, serviços, definições de tarefa e clusters do Amazon ECS:
+ Um usuário marca manualmente um recurso usando o Console de gerenciamento da AWS, a API do Amazon ECS, a AWS CLI ou um AWS SDK.
+ Um usuário cria um serviço ou executa uma tarefa autônoma e seleciona a opção de tags gerenciadas pelo Amazon ECS.

  O Amazon ECS marca automaticamente todas as tarefas recém-iniciadas. Para obter mais informações, consulte [Tags gerenciadas pelo Amazon ECS](#managed-tags).
+ Um usuário cria um recurso usando o console. O console marca automaticamente os recursos.

  Essas tags são retornadas nas respostas da AWS CLI e do AWS SDK e são exibidas no console. Você não pode modificar nem excluir essas tags.

  Para obter informações sobre as tags adicionadas, consulte a coluna **Tags adicionadas automaticamente pelo console** na tabela **Suporte à marcação para recursos do Amazon ECS**.

Se você especificar tags ao criar um recurso e não for possível aplicá-las, o Amazon ECS reverterá o processo de criação. Isso garante que os recursos sejam criados com tags ou, então, não criados, e que nenhum recurso seja deixado sem tags. Ao marcar os recursos no momento da criação, você elimina a necessidade de executar scripts personalizados de marcação após a criação do recurso.

A tabela a seguir descreve os recursos do Amazon ECS compatíveis com as marcações.


|  Recurso  |  Compatível com tags  |  Compatível com a propagação de tags  | Tags adicionadas automaticamente pelo console | 
| --- | --- | --- | --- | 
|  Tarefas do Amazon ECS  |  Sim  |  Sim, a partir da definição de tarefa.  | Chave: aws:ecs:clusterName *Valor*: `cluster-name` | 
|  Serviços do Amazon ECS  |  Sim  |  Sim, da definição de tarefa ou do serviço para as tarefas no serviço.  | Chave: ecs:service:stackId *Valor*: `arn:aws:cloudformation:arn` | 
|  Conjuntos de tarefas do Amazon ECS  |  Sim  |  Não  | N/D | 
|  Definições de tarefa do Amazon ECS  |  Sim  |  Não  | Chave: ecs:taskDefinition:createdFrom *Valor*: `ecs-console-v2` | 
|  Clusters do Amazon ECS  |  Sim  |  Não  | Chave: aws:cloudformation:logical-id *Valor*: `ECSCluster` Chave: aws:cloudformation:stack-id*Valor*: `arn:aws:cloudformation:arn`*Chave*: `aws:cloudformation:stack-name`*Valor*: `ECS-Console-V2-Cluster-EXAMPLE` | 
|  Instâncias de contêiner do Amazon ECS  |  Sim  |  Sim, a partir da instância do Amazon EC2. Para obter mais informações, consulte [Adicionar tags a uma instância de contêiner do Amazon EC2 para o Amazon ECS](instance-details-tags.md).   | N/D | 
|  Instâncias externas do Amazon ECS  |  Sim  |  Não  | N/D | 
| Provedor de capacidade do Amazon ECS |  Sim. Não é possível marcar provedores de capacidade `FARGATE` e `FARGATE_SPOT` predefinidos. | Sim, somente de provedores de capacidade para instâncias gerenciadas do Amazon ECS. Você pode propagar tags do provedor de capacidade das instâncias gerenciadas do Amazon ECS para todos os recursos gerenciados pelo provedor, como instâncias do Amazon EC2, modelo de inicialização, interfaces de rede elástica e volumes. | N/D | 

## Atribuição de tags a recursos durante a criação
<a name="tags-on-creation"></a>

Os seguintes recursos oferecem suporte à marcação na criação usando a API do Amazon ECS, a AWS CLI ou o AWS SDK:
+ Tarefas do Amazon ECS
+ Serviços do Amazon ECS
+ Definição de tarefa do Amazon ECS
+ Conjuntos de tarefas do Amazon ECS
+ Clusters do Amazon ECS
+ Instâncias de contêiner do Amazon ECS
+ Provedores de capacidade do Amazon ECS

O Amazon ECS tem a opção de usar a autorização para atribuição de tags para a criação de recursos. Quando a Conta da AWS é configurada para autorização de marcação, os usuários devem ter permissões para ações que criam o recurso, como `ecsCreateCluster`. Se as tags forem especificadas na ação resource-creating, a AWS executará uma autorização adicional para verificar se os usuários ou perfis têm permissões para criar tags. Portanto, é preciso conceder permissões explícitas para usar a ação `ecs:TagResource`. Para obter mais informações, consulte [Conceder permissão para a atribuição de tags a recursos durante a criação](supported-iam-actions-tagging.md). Para obter informações sobre como configurar a opção, consulte [Autorização para atribuição de tags](ecs-account-settings.md#tag-resources-setting).

## Restrições
<a name="tag-restrictions"></a>

As restrições a seguir se aplicam às tags:
+ Podem ser associadas no máximo 50 tags a um recurso.
+ As chaves de tag não podem ser repetidas para um recurso. As chaves de tag devem ser exclusivas, e cada chave só pode ter um valor.
+ As chaves podem ter até 128 caracteres em UTF-8.
+ Os valores podem ter até 256 caracteres em UTF-8.
+ Se vários Serviços da AWS e recursos usam seu esquema de tags, limite os tipos de caracteres que você usa. Alguns serviços podem ter restrições quanto aos caracteres permitidos. Em geral, os caracteres permitidos são letras, números, espaços e os seguintes caracteres: `+` `-` `=` `.` `_` `:` `/` `@`.
+ As chaves e valores das tags diferenciam maiúsculas de minúsculas.
+ Não é possível usar `aws:`, `AWS:` ou qualquer combinação de letras maiúsculas e minúsculas como prefixo para chaves ou valores. Esses são reservados para uso pela AWS. Você não pode editar nem excluir chaves nem valores de tags com esse prefixo. As tags com esse prefixo não contam para seu limite de tags por recurso.

## Tags gerenciadas pelo Amazon ECS
<a name="managed-tags"></a>

Quando você usa tags gerenciadas pelo Amazon ECS, ele marca automaticamente todas as tarefas recém-executadas e quaisquer volumes do Amazon EBS anexados às tarefas com as informações do cluster e as tags de definição de tarefa adicionadas pelo usuário ou as tags de serviço. Veja a seguir uma descrição das tags adicionadas:
+ Tarefas autônomas: uma tag com uma *Chave* como `aws:ecs:clusterName` e um *Valor* definido como o nome do cluster. Todas as tags de definição de tarefa que foram adicionadas pelos usuários. Um volume do Amazon EBS anexado a uma tarefa autônoma recebe a tag com uma *Chave*, como `aws:ecs:clusterName`, e um *Valor* definido para o nome do cluster. Para obter mais informações sobre marcação de volumes do Amazon EBS, consulte [Tagging Amazon EBS volumes](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specify-ebs-config.html#ebs-volume-tagging).
+ Tarefas que fazem parte de um serviço: uma tag com uma *Chave* como `aws:ecs:clusterName` e um *Valor* definido como o nome do cluster. Uma tag com uma *Chave* como `aws:ecs:serviceName` e um *Valor* definido como o nome do serviço. Tags de um dos seguintes recursos:
  + Definições de tarefa: todas as tags de definição de tarefa que foram adicionadas pelos usuários.
  + Serviços: todas as tags de serviço que foram adicionadas pelos usuários.

    Um volume do Amazon EBS anexado a uma tarefa que faz parte de um serviço recebe uma tag com uma *Chave* como `aws:ecs:clusterName` e um *Valor* definido com o nome do cluster, bem como uma tag com uma *Chave* como `aws:ecs:serviceName` e um *Valor* definido com o nome do serviço. Para obter mais informações sobre marcação de volumes do Amazon EBS, consulte [Tagging Amazon EBS volumes](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specify-ebs-config.html#ebs-volume-tagging).

As seguintes opções são necessárias para este recurso:
+ É necessário que aceitar os novos formatos do nome do recurso da Amazon (ARN) e do identificador do recurso (ID). Para obter mais informações, consulte [Nomes de recursos da Amazon (ARNs) e IDs](ecs-account-settings.md#ecs-resource-ids).
+ Ao usar as APIs para criar um serviço ou executar uma tarefa, é necessário definir `enableECSManagedTags` como `true` para `run-task` e `create-service`. Para obter mais informações, consulte [create-service](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html) e [run-task](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html) na *Referência da API do AWS Command Line Interface*.
+ O Amazon ECS usa tags gerenciadas para determinar quando alguns recursos estão habilitados, por exemplo, o ajuste de escala automático de cluster. Recomendamos que você não modifique manualmente as tags para que o Amazon ECS possa gerenciar os recursos com eficiência.

## Usar etiquetas para faturamento
<a name="tag-resources-for-billing"></a>

A AWS fornece uma ferramenta de geração de relatório chamada Cost Explorer. É possível usá-la para analisar o custo e o uso de seus recursos do Amazon ECS.

É possível usar o Cost Explorer para visualizar gráficos de uso e de custo. É possível visualizar dados dos últimos 13 meses e prever o provável valor que você gastará nos próximos 3 meses. É possível usar o Cost Explorer para ver os padrões de quanto você gasta nos recursos da AWS ao longo do tempo. Por exemplo, você pode usar o Cost Explorer para identificar áreas que precisam de uma investigação mais profunda e observar tendências que podem ser usadas para o entendimento dos custos. Também é possível especificar os períodos dos dados e visualizar os dados de tempo por dia ou mês.

É possível usar tags gerenciadas pelo Amazon ECS ou tags adicionadas pelo usuário para seu relatório de custo e uso. Para obter mais informações, consulte [Relatórios de uso do Amazon ECS](usage-reports.md).

Para ver o custo dos recursos combinados, é possível organizar as informações de faturamento com base nos recursos com os mesmos valores da chave da tag. Por exemplo, é possível etiquetar vários recursos com um nome de aplicação específico, e depois organizar suas informações de faturamento para ver o custo total daquela aplicação em vários serviços. Para obter mais informações sobre como configurar um relatório de alocação de custos com etiquetas, consulte [Relatório mensal de alocação de custos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/configurecostallocreport.html) no *Guia do usuário do AWS Billing*.

Além disso, é possível ativar *Dados de alocação de custos divididos* para obter dados de uso de CPU e memória em nível de tarefa em seus relatórios de custo e uso. Para obter mais informações, consulte [Relatórios de custo e uso em nível de tarefa](usage-reports.md#task-cur).

**nota**  
Se a criação de relatórios tiver sido ativada, pode levar até 24 horas até que os dados do mês atual estejam disponíveis para visualização.

# Adição de etiquetas aos recursos do Amazon ECS
<a name="tag-resources-console"></a>

É possível realizar a marcação de tarefas, serviços, definições de tarefas ou clusters novos ou existentes. Para obter informações sobre a marcação de instâncias de contêiner, consulte [Adicionar tags a uma instância de contêiner do Amazon EC2 para o Amazon ECS](instance-details-tags.md).

**Atenção**  
Não adicione informações de identificação pessoal (PII) nem outras informações confidenciais ou sigilosas em tags. As tags são acessíveis a muitos serviços da AWS, incluindo faturamento. As tags não devem ser usadas para dados sensíveis ou privados.

É possível usar os recursos a seguir para especificar tags ao criar o recurso.


|  Tarefa  |  Console  |  AWS CLI  |  Ação API  | 
| --- | --- | --- | --- | 
|  Execute uma ou mais tarefas.  |  [Execução de uma aplicação como uma tarefa do Amazon ECS](standalone-task-create.md)  |  [run-task](https://docs.aws.amazon.com/cli/latest/reference/ecs/run-task.html)  |  [RunTask](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html)  | 
|  Crie um serviço.  |  [Criação de uma implantação de atualização contínua do Amazon ECS](create-service-console-v2.md)  |  [create-service](https://docs.aws.amazon.com/cli/latest/reference/ecs/create-service.html)  |  [CreateService](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html)  | 
|  Crie um conjunto de tarefas.  |  [Implantação de serviços do Amazon ECS usando um controlador de terceiros](deployment-type-external.md)  |  [create-task-set](https://docs.aws.amazon.com/cli/latest/reference/ecs/create-task-set.html)  |  [CreateTaskSet](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html)  | 
|  Registre uma definição de tarefa.  | [Criar uma definição de tarefa do Amazon ECS usando o console](create-task-definition.md) |  [register-task-definition](https://docs.aws.amazon.com/cli/latest/reference/ecs/register-task-definition.html)  |  [RegisterTaskDefinition](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RegisterTaskDefinition.html)  | 
|  Crie um cluster.  |  [Criar um cluster do Amazon ECS para workloads do Fargate](create-cluster-console-v2.md)   |  [create-cluster](https://docs.aws.amazon.com/cli/latest/reference/ecs/create-cluster.html)  |  [CreateCluster](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html)  | 
|  Execute uma ou mais instâncias de contêiner.  |  [Iniciar uma instância de contêiner do Linux do Amazon ECS](launch_container_instance.md)  |  [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html)  |  [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html)  | 
|  Crie um provedor de capacidade para instâncias gerenciadas do Amazon ECS.  |  [Criar um provedor de capacidade para instâncias gerenciadas do Amazon ECS](create-capacity-provider-managed-instances.md)  |  [create-capacity-provider](https://docs.aws.amazon.com/cli/latest/reference/ecs/create-capacity-provider.html)  |  [CreateCapacityProvider](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProvider.html)  | 

## Adicionar etiquetas a recursos existentes (console do Amazon ECS)
<a name="adding-or-deleting-tags"></a>

Você pode adicionar ou excluir tags associadas a clusters, serviços, tarefas e definições de tarefas diretamente da página do recurso.

**Para modificar uma tag de um recurso individual**

1. Abra o console em [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. Na barra de navegação, selecione a Região da AWS a ser usada.

1. No painel de navegação, selecione um tipo de recurso (por exemplo, **Clusters**).

1. Selecione o recurso na lista de recursos, escolha a guia **Tags** e, em seguida, escolha **Manage tags** (Gerenciar tags).

1. Configure suas tags.

   [Adicionar uma etiqueta] Escolha **Add tag** (Adicionar etiqueta) e faça o seguinte:
   + Em **Chave**, insira o nome da chave.
   + Em **Valor** insira o valor da chave.

1. Escolha **Salvar**.

## Adicionar etiquetas a recursos existentes (AWS CLI)
<a name="tag-resources-api-sdk"></a>

É possível adicionar ou substituir uma ou mais etiquetas ao usar a AWS CLI ou uma API.

**nota**  
É possível usar endpoints de serviço de pilha dupla para interagir com o Amazon ECS via AWS CLI, SDKs e API do Amazon ECS sobre IPv4 e IPv6. Para obter mais informações, consulte [Usar endpoints de pilha dupla do Amazon ECS](dual-stack-endpoint.md).
+ AWS CLI - [tag-resource](https://docs.aws.amazon.com/cli/latest/reference/ecs/tag-resource.html)
+ Ação de API: [TagResource](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TagResource.html)

# Tags para instâncias gerenciadas do Amazon ECS
<a name="instance-details-tags-managed-instances"></a>

As instâncias gerenciadas do Amazon ECS oferecem suporte a uma combinação de tags personalizadas e tags adicionadas pela AWS que podem ser usadas para otimização de custos. Para obter mais informações sobre como usar tags para faturamento, consulte [Usar etiquetas para faturamento](ecs-using-tags.md#tag-resources-for-billing).

## Tags adicionadas pela AWS
<a name="instance-details-tags-managed-instances-system"></a>

 A AWS adiciona as seguintes tags a cada instância gerenciada do Amazon ECS criada pelo provedor de capacidade:
+ O Amazon ECS adiciona automaticamente as tags reservadas `AmazonECSCreated` e `AmazonECSManaged` às Instâncias gerenciadas do Amazon ECS.
+ O Amazon ECS adiciona as seguintes tags de sistema a cada instância:
  + Uma tag com uma *Chave* como `aws:ecs:clusterName` e um *Valor* definido com o nome do cluster.
  + Uma tag com uma *Chave* como `aws:ecs:capacityProviderName` e um *Valor* definido com o nome do provedor de capacidade.
  + Uma tag com uma *Chave* como `aws:ecs:containerInstanceId` e um *Valor* como ID da instância de contêiner para a instância gerenciada do Amazon ECS.
+ O Amazon EC2 adiciona a tag de sistema `aws:ec2:managed-launch` com o valor `ecs-managed-instances`. Além disso, o Amazon EC2 adiciona tags de sistema que indicam o modelo de inicialização usado para criar a instância gerenciada e o Amazon EC2 Fleet do qual a instância gerenciada faz parte.

## Tags personalizadas
<a name="instance-details-tags-managed-instances-custom"></a>

Você pode adicionar outras tags personalizadas às instâncias gerenciadas do Amazon ECS adicionando tags ao provedor de capacidade e habilitando a propagação de tags usando a propriedade `propagateTags`. As etiquetas do provedor de capacidade são propagadas para as instâncias gerenciadas que o provedor de capacidade inicia

O exemplo de definição de provedor de capacidade a seguir mostra como as tags podem ser especificadas e propagadas no provedor de capacidade ao criá-lo usando o valor `CAPACITY_PROVIDER` para `propagateTags`.

```
{
    "name": "my-cluster-managed-instances-cp",
    "cluster": "my-cluster",
     "tags": [
                {
                "key":"tag_key",
                "value":"tag_value"
                }
            ],
    "managedInstancesProvider": {
        "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole",
        "propagateTags": "CAPACITY_PROVIDER",
        "instanceLaunchTemplate": {
            "ec2InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile",
            "networkConfiguration": {
                "subnets": [
                    "subnet-abcdef01234567",
                    "subnet-bcdefa98765432"
                ],
                "securityGroups": [ 
                    "sg-0123456789abcdef"
                ]
            }
        }
    }
}
```

**nota**  
Quando você adiciona novas tags a um provedor de capacidade, as tags recém-adicionadas não são propagadas para as instâncias existentes, mas para todas as instâncias recém-criadas.
Os clientes podem adicionar etiquetas diretamente às instâncias do EC2, mas essas etiquetas não são repassadas ao provedor de capacidade
Você também pode aplicar ou remover etiquetas ao provedor de capacidade usando [Adicionar etiquetas a recursos existentes (AWS CLI)](tag-resources-console.md#tag-resources-api-sdk) ou [Adicionar etiquetas a recursos existentes (console do Amazon ECS)](tag-resources-console.md#adding-or-deleting-tags)

Para obter mais informações sobre provedores de capacidade de instâncias gerenciadas do Amazon ECS, consulte [Provedores de capacidade das instâncias gerenciadas do Amazon ECS](managed-instances-capacity-providers-concept.md).

# Adicionar tags a uma instância de contêiner do Amazon EC2 para o Amazon ECS
<a name="instance-details-tags"></a>

É possível associar tags a suas instâncias de contêiner do Amazon EC2 para Amazon ECS usando um dos seguintes métodos:
+ Método 1: ao criar a instância de contêiner usando a API, a CLI ou o console do Amazon EC2, especifique as etiquetas transmitindo os dados do usuário para a instância usando o parâmetro de configuração do agente de contêiner `ECS_CONTAINER_INSTANCE_TAGS`. Isso cria etiquetas que são associadas à instância de contêiner somente no Amazon ECS. Elas não podem ser listadas usando a API do Amazon EC2. Para obter mais informações, consulte [Inicialização de instâncias de contêiner do Linux no Amazon ECS para transmitir dados](bootstrap_container_instance.md).
**Importante**  
Se você iniciar as instâncias de contêiner usando um grupo do Amazon EC2 Auto Scaling, deverá usar o parâmetro de configuração do agente ECS\$1CONTAINER\$1INSTANCE\$1TAGS para adicionar etiquetas. Isso é decorrente da maneira como as etiquetas são adicionadas às instâncias do Amazon EC2 que são iniciadas por meio de grupos do Auto Scaling.

  Veja a seguir um exemplo de um script de dados do usuário que associa tags à sua instância de contêiner:

  ```
  #!/bin/bash
  cat <<'EOF' >> /etc/ecs/ecs.config
  ECS_CLUSTER=MyCluster
  ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"}
  EOF
  ```
+ Método 2: ao criar sua instância de contêiner usando a API, a CLI ou o console do Amazon EC2, especifique primeiramente as tags usando o parâmetro `TagSpecification.N`. Em seguida, transmita os dados do usuário para a instância usando o parâmetro `ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM` de configuração do agente de contêiner. Essa ação propaga os dados do Amazon EC2 para o Amazon ECS.

  Veja a seguir um exemplo de um script de dados do usuário que propaga as tags associadas a uma instância do Amazon EC2 e registra a instância em um cluster denominado `MyCluster`.

  ```
  #!/bin/bash
  cat <<'EOF' >> /etc/ecs/ecs.config
  ECS_CLUSTER=MyCluster
  ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM=ec2_instance
  EOF
  ```

  Para fornecer acesso para permitir que as etiquetas de instância de contêiner se propaguem do Amazon EC2 para o Amazon ECS, adicione manualmente as seguintes permissões, como uma política alinhada, à função do IAM da instância de contêiner do Amazon ECS. Para obter mais informações, consulte [Adicionar e remover políticas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).
  + `ec2:DescribeTags`

  Veja a seguir um exemplo de política usada para adicionar essas permissões.

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
              	"ec2:DescribeTags"
              ],
              "Resource": "*"
          }
      ]
  }
  ```

------

# Adicionar tags a instâncias de contêiner externas para o Amazon ECS
<a name="instance-details-tags-external"></a>

É possível associar tags às instâncias de contêiner externas para o Amazon ECS usando um dos seguintes métodos:
+ Método 1: antes de executar o script de instalação para registrar a instância externa no cluster, crie ou edite o arquivo de configuração do agente de contêiner do Amazon ECS em `/etc/ecs/ecs.config` e adicione o parâmetro `ECS_CONTAINER_INSTANCE_TAGS` de configuração do agente de contêiner. Isso cria etiquetas associadas à instância externa.

  Veja a seguir um exemplo de sintaxe.

  ```
  ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"}
  ```
+ Método 2: depois que a instância externa for registrada no cluster, será possível usar o Console de gerenciamento da AWS para adicionar tags. Para obter mais informações, consulte [Adicionar etiquetas a recursos existentes (console do Amazon ECS)](tag-resources-console.md#adding-or-deleting-tags).

# Relatórios de uso do Amazon ECS
<a name="usage-reports"></a>

A AWS fornece uma ferramenta de geração de relatório chamada Cost Explorer. É possível usá-la para analisar o custo e o uso de seus recursos do Amazon ECS.

É possível usar o Cost Explorer para visualizar gráficos de uso e de custo. É possível visualizar dados dos últimos 13 meses e prever o provável valor que você gastará nos próximos 3 meses. É possível usar o Cost Explorer para ver os padrões de quanto você gasta nos recursos da AWS ao longo do tempo. Por exemplo, você pode usar o Cost Explorer para identificar áreas que precisam de uma investigação mais profunda e observar tendências que podem ser usadas para o entendimento dos custos. Também é possível especificar os períodos dos dados e visualizar os dados de tempo por dia ou mês.

Os dados de medição do seu relatório de uso e de custo mostram o uso em todas as tarefas do Amazon ECS. Os dados de medição incluem o uso da CPU como `vCPU-Hours` e o uso da memória como `GB-Hours` para cada tarefa executada. A forma como os dados são apresentados depende da opção de computação da tarefa.

Para tarefas que usam o Fargate, a coluna `lineItem/Operation` mostra `FargateTask` e você verá o custo associado a cada tarefa.

Para tarefas que usam o EC2, a coluna `lineItem/Operation` mostra `ECSTask-EC2` e as tarefas não têm um custo direto associado a elas. Os dados de medição exibidos no relatório, como uso de memória, representam o total de recursos que a tarefa reservou durante o período de faturamento que você especificou. É possível usar esses dados para determinar o custo do cluster subjacente das instâncias do Amazon EC2. Os dados de custo e de uso das instâncias do Amazon EC2 serão listados separadamente no serviço do Amazon EC.

Também é possível usar as tags gerenciadas do Amazon ECS para identificar o serviço ou o cluster ao qual cada tarefa pertence. Para obter mais informações, consulte [Usar etiquetas para faturamento](ecs-using-tags.md#tag-resources-for-billing).

**Importante**  
Os dados de medição só podem ser visualizados para tarefas iniciadas a partir de 16 de novembro de 2018. Tarefas iniciadas antes dessa data não mostram dados de medição.

Veja a seguir um exemplo de alguns campos que você pode usar para classificar dados de alocação de custos no Cost Explorer.
+ Nome do cluster
+ Nome do serviço
+ Tags de recursos
+ Tipo de inicialização
+ Região da AWS
+ Tipo de uso

Para obter mais informações sobre como criar um Relatório de uso e de custos da AWS, consulte [Relatório de uso e de custos da AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage.html) no *Guia do usuário do AWS Billing*.

## Relatórios de custo e uso em nível de tarefa
<a name="task-cur"></a>

O AWS Cost Management pode fornecer dados de uso de CPU e memória no AWS Cost and Usage Report para cada tarefa no Amazon ECS, incluindo tarefas no Fargate e tarefas no EC2. Esses dados são chamados de *Dados de alocação de custos divididos*. É possível usar esses dados para analisar os custos e o uso das aplicações. Além disso, é possível dividir e alocar os custos para unidades de negócios e equipes individuais com tags de alocação de custos e categorias de custo. Para obter mais informações sobre *Dados de alocação de custos divididos*, consulte [Understanding split cost allocation data](https://docs.aws.amazon.com/cur/latest/userguide/split-cost-allocation-data.html) no Guia do usuário do AWS Cost and Usage Report.

É possível optar por *Dados de alocação de custos divididos* em nível de tarefa para a conta no AWS Cost Management Console. Se você tiver uma conta de gerenciamento (pagador), poderá optar pela conta do pagador para aplicar essa configuração a todas as contas vinculadas.

Depois de configurar os *Dados de alocação de custos divididos*, haverá colunas adicionais no cabeçalho **splitLineItem** no relatório. Para obter mais informações, consulte [Split line item details](https://docs.aws.amazon.com/cur/latest/userguide/split-line-item-columns.html) no Guia do usuário do AWS Cost and Usage Report

Para tarefas no EC2, esses dados dividem o custo da instância do EC2 com base no uso ou nas reservas dos recursos e nos recursos restantes na instância.

Confira a seguir os pré-requisitos:
+ Defina o parâmetro de configuração do agente `ECS_DISABLE_METRICS` do Amazon ECS como `false`.

  Quando essa configuração for `false`, o agente do Amazon ECS enviará métricas para o Amazon CloudWatch. No Linux, essa configuração é `false` por padrão, e as métricas são enviadas para o CloudWatch. No Windows, essa configuração é `true` por padrão, então você deve alterá-la para `false` para enviar as métricas ao CloudWatch para uso do AWS Cost Management. Para obter mais informações sobre a configuração do agente do ECS, consulte [Configuração do agente de contêiner do Amazon ECS](ecs-agent-config.md). 
+ A versão mínima do Docker para métricas confiáveis é o Docker versão v20.10.13 e posteriores, que está incluída na AMI otimizada para o Amazon ECS 20220607 e posteriores.

Para usar *Dados de alocação de custos divididos*, você deve criar um relatório e selecionar **Dados de alocação de custos divididos**. Para obter mais informações, consulte [Creating Cost and Usage Reports](https://docs.aws.amazon.com/cur/latest/userguide/cur-create.html) no Guia do usuário do AWS Cost and Usage Report.

O AWS Cost Management calcula os *Dados de alocação de custos divididos* com o uso da CPU e da memória da tarefa. O AWS Cost Management pode usar a reserva de CPU e memória da tarefa em vez do uso, se o uso não estiver disponível. Se você perceber que o CUR está usando as reservas, verifique se suas instâncias de contêiner atendem aos pré-requisitos e se as métricas de uso dos recursos da tarefa aparecem no CloudWatch.