Etiquetar grupos e instâncias do Auto Scaling - Amazon EC2 Auto Scaling

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etiquetar grupos e instâncias do Auto Scaling

Uma tag é um rótulo de atributo personalizado que você atribui ou AWS atribui a um AWS recurso. Cada tag tem duas partes:

  • Uma chave de etiqueta (por exemplo, costcenter, environment ou project)

  • Um campo opcional conhecido como um valor de etiqueta (por exemplo, 111122223333 ou production)

As tags ajudam a:

  • Acompanhe seus AWS custos. Você ativa essas tags no AWS Billing and Cost Management painel. AWS usa as tags para categorizar seus custos e entregar um relatório mensal de alocação de custos para você. Para obter mais informações, consulte Uso de tags de alocação de custos no Guia do usuário do AWS Billing .

  • Controle o acesso a grupos do Auto Scaling com base em tags. É possível usar condições em suas políticas do IAM para controlar o acesso aos grupos do Auto Scaling com base nas tags desse grupo. Para ter mais informações, consulte Etiquetas para segurança.

  • Filtre e pesquise por grupos do Auto Scaling com base nas tags adicionadas. Para ter mais informações, consulte Usar etiquetas para filtrar grupos do Auto Scaling.

  • Identifique e organize seus AWS recursos. Muitos Serviços da AWS oferecem suporte à marcação, então você pode atribuir a mesma tag a recursos de serviços diferentes para indicar que os recursos estão relacionados.

Você pode marcar grupos do Auto Scaling novos ou existentes. Você também pode propagar tags de um grupo do Auto Scaling para as instâncias do EC2 que ele executa.

As tags não são propagadas para volumes do Amazon EBS. Para adicionar tags a volumes do Amazon EBS, especifique as tags em um modelo de execução. Para ter mais informações, consulte Criar um modelo de execução para um grupo do Auto Scaling.

Você pode criar e gerenciar tags por meio do AWS Management Console, AWS CLI, ou SDKs.

Restrições de nomeação e uso de tags

As restrições básicas a seguir se aplicam a tags:

  • O número máximo de tags por recurso é 50.

  • O número máximo de tags que você pode adicionar ou remover usando uma única chamada é 25.

  • O comprimento máximo da chave é 128 caracteres Unicode.

  • O número máximo de tags que você pode atribuir a um recurso é 50.

  • As chaves e os valores de tags diferenciam maiúsculas de minúsculas. Como melhor prática, adote uma estratégia para letras maiúsculas em tags e implemente-a de forma consistente em todos os tipos de recursos.

  • Não use o aws: prefixo nos nomes ou valores de suas tags, pois ele está reservado para AWS uso. Você não pode editar nem excluir nomes ou valores de tags com esse prefixo, e elas não são contadas em sua quota de tags por recurso.

Ciclo de vida de marcação de instâncias do EC2

Se você tiver optado por propagar tags para suas instâncias do EC2, as tags serão gerenciadas da seguinte forma:

  • Quando um grupo do Auto Scaling executa instâncias, ele adiciona tags às instâncias durante a criação do recurso, e não após o recurso ser criado.

  • O grupo do Auto Scaling adiciona automaticamente uma etiqueta às instâncias com uma chave do aws:autoscaling:groupName e um valor do nome do grupo do Auto Scaling.

  • Se você especificar tags de instância em seu modelo de execução e optar por propagar tags de seu grupo para suas instâncias, todas as tags serão mescladas. Se a mesma chave da etiqueta for especificada para uma etiqueta no modelo de execução e uma etiqueta no grupo do Auto Scaling, então, o valor da etiqueta do grupo terá precedência.

  • Quando você anexa instâncias existentes, o grupo do Auto Scaling adiciona as tags às instâncias substituindo todas as tags existentes pela mesma chave de tag. Ele também adiciona uma etiqueta com uma chave do aws:autoscaling:groupName e um valor do nome do grupo do Auto Scaling.

  • Quando você desvincula uma instância de um grupo do Auto Scaling, ele remove apenas a tag aws:autoscaling:groupName.

Marcar seus grupos do Auto Scaling

Quando você adiciona uma tag a seu grupo do Auto Scaling, você pode especificar se ela deve ser adicionada às instâncias iniciadas no grupo do Auto Scaling. Se você modificar uma tag, a versão atualizada da tag será adicionada às instâncias executadas no grupo do Auto Scaling depois da alteração. Se você criar ou modificar uma tag em um grupo do Auto Scaling, essas alterações não serão feitas em instâncias que já estão em execução no grupo do Auto Scaling.

Adicionar ou modificar tags (console)

Para marcar um grupo do Auto Scaling na criação

Ao usar o console do Amazon EC2 para criar um grupo do Auto Scaling, você pode especificar valores e chaves de tags na página Add tags (Configurar tags) do assistente de criação de grupo do Auto Scaling. Para propagar uma tag às instâncias executadas no grupo do Auto Scaling, mantenha a opção Tag New Instances (Marcar novas instâncias) para essa tag selecionada. Caso contrário, desmarque-a.

Para adicionar ou modificar tags de um grupo do Auto Scaling existente
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/ e escolha grupos do Auto Scaling no painel de navegação.

  2. Marque a caixa de seleção ao lado do grupo do Auto Scaling.

    Um painel dividido é aberto na parte inferior da página Auto Scaling groups (Grupos do Auto Scaling).

  3. Na guia Detalhes escolha Tags, Editar.

  4. Para modificar as tags existentes, edite Chave e Valor.

  5. Para adicionar uma nova tag, escolha Adicionar tag e edite Chave e Valor. É possível manter a opção Tag new instances (Marcar novas instâncias) selecionada para adicionar a tag às instâncias executadas no grupo do Auto Scaling automaticamente e, caso contrário, desmarcá-la.

  6. Ao concluir a inclusão de tags, selecione Update (Atualizar).

Adicionar ou modificar tags (AWS CLI)

Os exemplos a seguir mostram como usar o para adicionar tags AWS CLI ao criar grupos de Auto Scaling e para adicionar ou modificar tags para grupos de Auto Scaling existentes.

Para marcar um grupo do Auto Scaling na criação

Use o create-auto-scaling-groupcomando para criar um novo grupo de Auto Scaling e adicionar uma tag, por exemploenvironment=production, ao grupo Auto Scaling. A tag também é adicionada a todas as instâncias executadas no grupo do Auto Scaling.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-configuration-name my-launch-config --min-size 1 --max-size 3 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --tags Key=environment,Value=production,PropagateAtLaunch=true
Para criar ou modificar tags de um grupo do Auto Scaling existente

Use o comando create-or-update-tags para criar ou modificar uma tag. Por exemplo, o comando a seguir adiciona as tags costcenter=cc123 e Name=my-asg. As tags também são adicionadas a todas as instâncias executadas no grupo do Auto Scaling após essa alteração. Se uma tag com uma dessas chaves já existir, a tag existente será substituída. O console do Amazon EC2 associa o nome de exibição para cada instância ao nome especificado para a chave Name (diferencia maiúsculas de minúsculas).

aws autoscaling create-or-update-tags \ --tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Name,Value=my-asg,PropagateAtLaunch=true \ ResourceId=my-asg,ResourceType=auto-scaling-group,Key=costcenter,Value=cc123,PropagateAtLaunch=true

Descrever as tags para um grupo do Auto Scaling (AWS CLI)

Se você deseja visualizar as tags que são aplicadas à uma função do Auto Scaling específica, pode usar os seguintes comandos:

  • describe-tags — Você fornece o nome do grupo do Auto Scaling para ver uma lista das tags do grupo especificado.

    aws autoscaling describe-tags --filters Name=auto-scaling-group,Values=my-asg

    A seguir, uma exemplo de resposta.

    { "Tags": [ { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "production", "Key": "environment" } ] }
  • describe-auto-scaling-groups— Você fornece o nome do grupo do Auto Scaling para visualizar os atributos do grupo especificado, incluindo quaisquer tags.

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg

    A seguir, uma exemplo de resposta.

    { "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn", "LaunchTemplate": { "LaunchTemplateId": "lt-0b97f1e282EXAMPLE", "LaunchTemplateName": "my-launch-template", "Version": "$Latest" }, "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 1, ... "Tags": [ { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "production", "Key": "environment" } ], ... } ] }

Excluir tags

Você pode excluir uma tag associada a seu grupo do Auto Scaling a qualquer momento.

Excluir tags (console)

Para excluir uma tag
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/ e escolha grupos do Auto Scaling no painel de navegação.

  2. Marque a caixa de seleção ao lado de um grupo existente.

    Um painel dividido é aberto na parte inferior da página Auto Scaling groups (Grupos do Auto Scaling).

  3. Na guia Detalhes escolha Tags, Editar.

  4. Escolha Remove (Remover) ao lado da tag.

  5. Escolha Atualizar.

Excluir tags (AWS CLI)

Use o comando delete-tags para excluir uma tag. Por exemplo, o comando a seguir exclui uma tag com uma chave de environment.

aws autoscaling delete-tags --tags "ResourceId=my-asg,ResourceType=auto-scaling-group,Key=environment"

Você deve especificar a chave da tag, mas você não precisa especificar o valor. Se você especificar um valor e o valor estiver incorreto, a tag não será excluída.

Etiquetas para segurança

Use etiquetas para verificar se o solicitante (como um usuário ou perfil do IAM) tem permissões para criar, modificar ou excluir grupos do Auto Scaling específicos. Forneça informações de tags no elemento de condição de uma política do IAM usando uma ou mais das seguintes chaves de condição:

  • Use autoscaling:ResourceTag/tag-key: tag-value para permitir (ou negar) ações do usuário em grupos do Auto Scaling com tags específicas.

  • Use aws:RequestTag/tag-key: tag-value para exigir que uma tag específica esteja presente (ou ausente) em uma solicitação.

  • Use aws:TagKeys [tag-key, ...] para exigir que chaves de tag específicas estejam presentes (ou ausentes) em uma solicitação.

Por exemplo, você pode negar acesso a todos os grupos do Auto Scaling que incluam uma tag com a chave environment e o valor production, conforme mostrado no exemplo a seguir.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "autoscaling:CreateAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup", "autoscaling:DeleteAutoScalingGroup" ], "Resource": "*", "Condition": { "StringEquals": {"autoscaling:ResourceTag/environment": "production"} } } ] }

Para obter mais informações sobre o uso das chaves de condição para controlar o acesso aos grupos do Auto Scaling, consulte Como o Amazon EC2 Auto Scaling funciona com o IAM.

Controlar o acesso usando etiquetas

Use etiquetas para verificar se o solicitante (como um usuário ou perfil do IAM) tem permissões para adicionar, modificar ou excluir etiquetas de grupos do Auto Scaling.

O exemplo de política do IAM a seguir fornece a permissão principal para remover apenas o tag com a chave temporary dos grupos do Auto Scaling.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "autoscaling:DeleteTags", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": ["temporary"] } } } ] }

Para ver mais exemplos de políticas do IAM que impõem restrições nas tags especificadas para grupos do Auto Scaling, consulte Controlar quais chaves de tag e valores de tag podem ser usados.

nota

Mesmo que você tenha uma política que restrinja os usuários de executar uma operação de marcação (ou desmarcação) em um grupo do Auto Scaling, isso não os impede de alterar manualmente as marcações nas instâncias após elas serem executadas. Para exemplos que controlam o acesso a tags em instâncias do EC2, consulte Exemplo: marcação de recursos no Manual do usuário do Amazon EC2 para instâncias do Linux.

Usar etiquetas para filtrar grupos do Auto Scaling

Os exemplos a seguir mostram como usar filtros com o describe-auto-scaling-groupscomando para descrever grupos de Auto Scaling com tags específicas. A filtragem por tags é limitada ao AWS CLI ou a um SDK e não está disponível no console.

Considerações sobre filtragem

  • É possível especificar vários filtros e vários valores de filtro em uma única solicitação.

  • Não é possível usar curingas com os valores de filtro.

  • Os valores do filtro diferenciam maiúsculas de minúsculas.

Exemplo: descreva grupos do Auto Scaling com um par de chave e valor de etiqueta específicos

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com a chave de etiqueta e o par de valores de environment=production.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-key,Values=environment Name=tag-value,Values=production

A seguir, uma exemplo de resposta.

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn", "LaunchTemplate": { "LaunchTemplateId": "lt-0b97f1e282EXAMPLE", "LaunchTemplateName": "my-launch-template", "Version": "$Latest" }, "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 1, ... "Tags": [ { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "production", "Key": "environment" } ], ... }, ... additional groups ... ] }

Como alternativa, você pode especificar etiquetas usando um filtro tag:<key>. Por exemplo, o comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com a chave de etiqueta e o par de valores de environment=production. Este filtro é formatado da seguinte maneira: Name=tag:<key>,Values=<value>, com <key> e <value> representando uma etiqueta de chave e par de valor.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag:environment,Values=production

Você também pode filtrar a AWS CLI saída usando a --query opção. O exemplo a seguir mostra como limitar a AWS CLI saída do comando anterior somente ao nome do grupo, tamanho mínimo, tamanho máximo e atributos de capacidade desejados.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag:environment,Values=production \ --query "AutoScalingGroups[].{AutoScalingGroupName: AutoScalingGroupName, MinSize: MinSize, MaxSize: MaxSize, DesiredCapacity: DesiredCapacity}"

A seguir, uma exemplo de resposta.

[ { "AutoScalingGroupName": "my-asg", "MinSize": 0, "MaxSize": 10, "DesiredCapacity": 1 }, ... additional groups ... ]

Para obter mais informações sobre filtragem, consulte Filtragem AWS CLI de saída no Guia do AWS Command Line Interface usuário.

Exemplo: descreva grupos do Auto Scaling com etiquetas que correspondam à chave de etiqueta especificada

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com a etiqueta environment, independentemente do valor de etiqueta.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-key,Values=environment
Exemplo: descreva grupos do Auto Scaling com etiquetas que correspondam ao conjunto de chaves de etiquetas especificado

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com etiquetas para environment e project, independentemente dos valores das etiquetas.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-key,Values=environment Name=tag-key,Values=project
Exemplo: descreva grupos do Auto Scaling com etiquetas que correspondam a pelo menos uma das chaves de etiquetas especificadas

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com etiquetas para environment ou project, independentemente dos valores das etiquetas.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-key,Values=environment,project
Exemplo: descreva grupos do Auto Scaling com o valor de etiqueta especificado

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com o valor de etiqueta de production, independentemente da chave de etiqueta.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-value,Values=production
Exemplo: descreva grupos do Auto Scaling com o conjunto de valores de etiquetas especificado

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com os valores de production e development, independentemente da chave de etiqueta.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-value,Values=production Name=tag-value,Values=development
Exemplo: descreva grupos do Auto Scaling com etiquetas que correspondam a pelo menos um dos valores das etiquetas especificados

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com o valor de etiqueta de production ou development, independentemente da chave de etiqueta.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag-value,Values=production,development
Exemplo: descreva grupos do Auto Scaling com etiquetas que correspondam a várias chaves e valores de etiquetas

Você também pode combinar filtros para criar lógicas AND e OR personalizadas para fazer uma filtragem mais complexa.

O comando a seguir mostra como filtrar resultados para mostrar apenas grupos do Auto Scaling com um conjunto específico de etiquetas. Uma chave de tag é environment AND o valor da tag é (production OR development) AND a outra chave de tag é costcenter AND o valor da tag é cc123.

aws autoscaling describe-auto-scaling-groups \ --filters Name=tag:environment,Values=production,development Name=tag:costcenter,Values=cc123