AWS CloudFormation: como definir tags para instâncias EC2 no YAML

Olá pessoal!

Definir tags para instâncias EC2 no AWS CloudFormation permite identificar os recursos desde sua criação. No template YAML, essa configuração é feita pela propriedade Tags, com pares de chave (Key) e valor (Value).

As tags ajudam a organizar o ambiente por aplicação, finalidade ou responsável. Padronizar esses campos no template facilita a identificação dos recursos criados por diferentes stacks.

Como definir tags para EC2 no YAML

A propriedade Tags deve ficar dentro de Properties do recurso AWS::EC2::Instance. Cada item da lista representa uma tag:

Resources:
MinhaInstancia:
Type: AWS::EC2::Instance
Properties:
ImageId: ami-xxxxxxxxxxxxxxxxx
InstanceType: t3.micro
Tags:
- Key: Name
Value: servidor-aplicacao
- Key: Ambiente
Value: Homologacao
- Key: Projeto
Value: portal-interno
- Key: Responsavel
Value: equipe-infraestrutura

Nesse exemplo, a instância recebe quatro tags. A chave identifica a informação, enquanto o valor registra o conteúdo correspondente.

O trecho deve ser adaptado ao seu template. Informe uma AMI (Amazon Machine Image ou Imagem de Máquina da Amazon) válida na região utilizada e mantenha as propriedades de rede, segurança e acesso necessárias ao ambiente.

Como aplicar as tags aos volumes EBS

As tags definidas para a instância não são aplicadas aos volumes do Amazon Elastic Block Store (EBS) por padrão. Para propagá-las aos volumes criados pelos mapeamentos de dispositivos da instância, acrescente:

PropagateTagsToVolumeOnCreation: true

A propriedade fica dentro de Properties, no mesmo nível de Tags:

Resources:
MinhaInstancia:
Type: AWS::EC2::Instance
Properties:
ImageId: ami-xxxxxxxxxxxxxxxxx
InstanceType: t3.micro
PropagateTagsToVolumeOnCreation: true
Tags:
- Key: Name
Value: servidor-aplicacao
- Key: Ambiente
Value: Homologacao

Esse comportamento se aplica na criação dos volumes associados aos mapeamentos de dispositivos. Volumes criados separadamente e anexados por AWS::EC2::VolumeAttachment precisam ter suas próprias tags configuradas.

Padronização e atualização das tags

Defina um conjunto de chaves que faça sentido para sua operação e reutilize a mesma nomenclatura nos templates. Por exemplo, mantenha Ambiente, Projeto e Responsavel como campos comuns, em vez de criar variações para cada stack.

Para alterar as tags de uma instância já gerenciada pelo CloudFormation, edite a propriedade Tags e atualize a stack. Segundo a referência oficial, a atualização dessa propriedade não exige interrupção da instância; avalie separadamente outras alterações incluídas na mesma atualização.

Após o deploy, confira as tags no console do EC2 e, quando houver propagação, também nos volumes EBS.

Para maiores informaçòes, consulte a referência oficial de AWS::EC2::Instance.

Até a próxima!

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.