Instalar o agente do CloudWatch em novas instâncias usando o AWS CloudFormation - Amazon CloudWatch

Instalar o agente do CloudWatch em novas instâncias usando o AWS CloudFormation

Esta seção descreve como instalar o agente do CloudWatch em novas instâncias do Amazon EC2 usando o AWS CloudFormation.

nota

A Amazon fez o upload de diversos modelos do AWS CloudFormation no GitHub que podem ajudar você a instalar e a atualizar o agente do CloudWatch em novas instâncias do Amazon EC2. Para obter mais informações sobre como usar o AWS CloudFormation, consulte O que é o AWS CloudFormation?.

O local do modelo é Implantar o atendente do Amazon CloudWatch em instâncias do EC2 usando o AWS CloudFormation. Esse local inclui os diretórios inline e ssm. Cada um desses diretórios contém modelos de ambas as instâncias do Linux e do Windows.

  • Os modelos no diretório inline têm a configuração do atendente do CloudWatch incorporada ao modelo do AWS CloudFormation. Por padrão, os modelos do Linux coletam as métricas mem_used_percent e swap_used_percent, e os modelos do Windows coletam Memory % Committed Bytes In Use e Paging File % Usage.

    Para modificar esses modelos para coletar métricas diferentes, modifique a seção a seguir do modelo. O exemplo a seguir é do modelo para servidores do Linux. Siga o formato e a sintaxe do arquivo de configuração do atendente para fazer essas alterações. Para ter mais informações, consulte Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch.

    { "metrics":{ "append_dimensions":{ "AutoScalingGroupName":"${!aws:AutoScalingGroupName}", "ImageId":"${!aws:ImageId}", "InstanceId":"${!aws:InstanceId}", "InstanceType":"${!aws:InstanceType}" }, "metrics_collected":{ "mem":{ "measurement":[ "mem_used_percent" ] }, "swap":{ "measurement":[ "swap_used_percent" ] } } } }
    nota

    Nos modelos em linha, todas as variáveis de espaço reservado devem ter um ponto de exclamação (!) antes delas como um caractere de escape. Veja isso no modelo de exemplo. Se você adicionar outras variáveis de espaço reservado, adicione um ponto de exclamação antes do nome.

  • Os modelos no diretório ssm carregam um arquivo de configuração do atendente do Parameter Store. Para usar esses modelos, é necessário primeiro criar um arquivo de configuração e carregá-lo no Parameter Store. Em seguida, dê o nome Parameter Store do arquivo no modelo. Crie o arquivo de configuração manualmente ou usando o assistente. Para ter mais informações, consulte Criar o arquivo de configuração do atendente do CloudWatch.

Use ambos os tipos de modelos para instalar o atendente do CloudWatch e atualizar a configuração do atendente.

Tutorial: instalar e configurar o atendente do CloudWatch usando um modelo em linha do AWS CloudFormation

Esse tutorial mostra como usar o AWS CloudFormation para instalar o atendente do CloudWatch em uma nova instância do Amazon EC2. Esse tutorial faz a instalação em uma nova instância que esteja executando o Amazon Linux 2 usando os modelos em linha, que não exigem o uso do arquivo de configuração JSON nem o Parameter Store. O modelo em linha inclui a configuração do atendente no modelo. Neste tutorial, você usa a configuração do atendente padrão contida no modelo.

Após o procedimento para instalar o atendente, o tutorial continua com como atualizar o atendente.

Para usar o AWS CloudFormation para instalar o atendente do CloudWatch em uma nova instância
  1. Faça download do modelo do GitHub. Neste tutorial, baixe o modelo em linha do Amazon Linux 2 da seguinte forma:

    curl -O https://raw.githubusercontent.com/aws-cloudformation/aws-cloudformation-templates/main/Solutions/AmazonCloudWatchAgent/inline/amazon_linux.yaml
  2. Abra o console do AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  3. Selecione Criar pilha.

  4. Em Choose a template (Escolher um modelo), selecione Upload a template to Amazon S3 (Fazer upload de um modelo no Amazon S3), escolha o modelo obtido por download e Next (Avançar).

  5. Na página Specify Details (Especificar detalhes), preencha os parâmetros a seguir e escolha Next (Próximo):

    • Stack name (Nome da pilha): escolha um nome de pilha para a pilha do AWS CloudFormation.

    • IAMRole: escolha um perfil do IAM que tenha permissões para gravar métricas e logs e rastreamentos do CloudWatch. Para ter mais informações, consulte Criar funções do IAM a serem usadas com o atendente do CloudWatch em instâncias do Amazon EC2.

    • InstanceAMI: escolha uma AMI que seja válida na região onde você pretende iniciar a pilha.

    • InstanceType: escolha um tipo de instância válido.

    • KeyName: para habilitar o acesso SSH à nova instância, escolha um par de chaves do Amazon EC2 existente. Se ainda não tiver um par de chaves do Amazon EC2, você poderá criar um no AWS Management Console. Para obter mais informações, consulte Pares de chaves do Amazon EC2 no Guia do usuário do Amazon EC2.

    • SSHLocation: especifica o intervalo de endereços IP que podem ser usados para se conectar à instância usando SSH. O padrão permite o acesso de qualquer endereço IP.

  6. Na página Options (Opções), você pode optar por marcar seus recursos de pilha. Escolha Próximo.

  7. Na página Review (Revisão), revise as informações, confirme se a pilha pode criar recursos do IAM e selecione Create (Criar).

    Se atualizar o console, você verá que a nova pilha tem o status CREATE_IN_PROGRESS.

  8. Quando a instância é criada, é possível vê-la no console do Amazon EC2. Também é possível se conectar ao host e verificar o progresso.

    Use o seguinte comando para confirmar se o atendente está instalado:

    rpm -qa amazon-cloudwatch-agent

    Use o seguinte comando para confirmar se o atendente está em execução:

    ps aux | grep amazon-cloudwatch-agent

O próximo procedimento demonstra como usar o AWS CloudFormation para atualizar o atendente do CloudWatch usando um modelo em linha. O modelo em linha padrão coleta a métrica mem_used_percent. Neste tutorial, altere a configuração do atendente para interromper a coleta dessa métrica.

Para usar o AWS CloudFormation para atualizar o atendente do CloudWatch
  1. No modelo obtido por download no procedimento anterior, remova as seguintes linhas e salve o modelo:

    "mem": { "measurement": [ "mem_used_percent" ] },
  2. Abra o console do AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  3. No painel do AWS CloudFormation, selecione a pilha criada e escolha Update Stack (Atualizar pilha).

  4. Em Select Template (Selecionar modelo), selecione Upload a template to Amazon S3 (Fazer upload de um modelo para o Amazon S3), escolha o modelo modificado e Next (Avançar).

  5. Na página Options (Opções), escolha Next (Próximo) e, depois, Next (Próximo).

  6. Na página Review (Revisar), revise as informações e escolha Update (Atualizar).

    Depois de algum tempo, você verá UPDATE_COMPLETE.

Tutorial: instalar o atendente do CloudWatch usando o AWS CloudFormation e Parameter Store

Esse tutorial mostra como usar o AWS CloudFormation para instalar o atendente do CloudWatch em uma nova instância do Amazon EC2. Este tutorial instala em uma nova instância na qual o Amazon Linux 2 esteja em execução usando um arquivo de configuração do atendente que você criou e salvo no Parameter Store.

Após o procedimento para instalar o atendente, o tutorial continua com como atualizar o atendente.

Para usar o AWS CloudFormation para instalar o atendente do CloudWatch em uma nova instância usando uma configuração do Parameter Store
  1. Se ainda não o fez, baixe o pacote do atendente do CloudWatch em um de seus computadores para poder criar o arquivo de configuração do atendente. Para obter mais informações mais detalhadas e baixar o atendente com o Parameter Store, consulte Baixar, configurar e executar o agente do CloudWatch usando o SSM. Para obter mais informações sobre o download do pacote usando a linha de comando, consulte Baixar e configurar o atendente do CloudWatch usando a linha de comando.

  2. Crie o arquivo de configuração do atendente e salve-o no Parameter Store. Para ter mais informações, consulte Criar o arquivo de configuração do atendente do CloudWatch.

  3. Faça download do modelo do GitHub da seguinte forma:

    curl -O https://raw.githubusercontent.com/awslabs/aws-cloudformation-templates/master/aws/solutions/AmazonCloudWatchAgent/ssm/amazon_linux.template
  4. Abra o console do AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  5. Selecione Criar pilha.

  6. Em Choose a template (Escolher um modelo), selecione Upload a template to Amazon S3 (Fazer upload de um modelo no Amazon S3), escolha o modelo obtido por download e Next (Avançar).

  7. Na página Specify Details (Especificar detalhes), preencha os seguintes parâmetros conforme necessário e, depois, escolha Next (Próximo):

    • Stack name (Nome da pilha): escolha um nome de pilha para a pilha do AWS CloudFormation.

    • IAMRole: escolha um perfil do IAM que tenha permissões para gravar métricas e logs e rastreamentos do CloudWatch. Para ter mais informações, consulte Criar funções do IAM a serem usadas com o atendente do CloudWatch em instâncias do Amazon EC2.

    • InstanceAMI: escolha uma AMI que seja válida na região onde você pretende iniciar a pilha.

    • InstanceType: escolha um tipo de instância válido.

    • KeyName: para habilitar o acesso SSH à nova instância, escolha um par de chaves do Amazon EC2 existente. Se ainda não tiver um par de chaves do Amazon EC2, você poderá criar um no AWS Management Console. Para obter mais informações, consulte Pares de chaves do Amazon EC2 no Guia do usuário do Amazon EC2.

    • SSHLocation: especifica o intervalo de endereços IP que podem ser usados para se conectar à instância usando SSH. O padrão permite o acesso de qualquer endereço IP.

    • SSMKey: especifica o arquivo de configuração do atendente que você criou e salvou no Parameter Store.

  8. Na página Options (Opções), você pode optar por marcar seus recursos de pilha. Escolha Próximo.

  9. Na página Review (Revisão), revise as informações, confirme se a pilha pode criar recursos do IAM e selecione Create (Criar).

    Se atualizar o console, você verá que a nova pilha tem o status CREATE_IN_PROGRESS.

  10. Quando a instância é criada, é possível vê-la no console do Amazon EC2. Também é possível se conectar ao host e verificar o progresso.

    Use o seguinte comando para confirmar se o atendente está instalado:

    rpm -qa amazon-cloudwatch-agent

    Use o seguinte comando para confirmar se o atendente está em execução:

    ps aux | grep amazon-cloudwatch-agent

O procedimento a seguir demonstra como usar o AWS CloudFormation para atualizar o atendente do CloudWatch com uma configuração do atendente salva no Parameter Store.

Para usar o AWS CloudFormation para atualizar o atendente do CloudWatch com uma configuração no Parameter Store
  1. Altere o arquivo de configuração do atendente armazenado no Parameter Store para a nova configuração desejada.

  2. No modelo do AWS CloudFormation obtido por download no tópico Tutorial: instalar o atendente do CloudWatch usando o AWS CloudFormation e Parameter Store, altere o número da versão. Por exemplo, você poderia alterar VERSION=1.0 para VERSION=2.0.

  3. Abra o console do AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  4. No painel do AWS CloudFormation, selecione a pilha criada e escolha Update Stack (Atualizar pilha).

  5. Em Select Template (Selecionar modelo), selecione Upload a template to Amazon S3 (Fazer upload de um modelo para o Amazon S3), selecione o modelo recém-modificado e Next (Avançar).

  6. Na página Options (Opções), escolha Next (Próximo) e, depois, Next (Próximo).

  7. Na página Review (Revisar), revise as informações e escolha Update (Atualizar).

    Depois de algum tempo, você verá UPDATE_COMPLETE.

Solução de problemas de instalação do atendente do CloudWatch com o AWS CloudFormation

Esta seção ajuda a solucionar problemas na instalação e na atualização do atendente do CloudWatch usando o AWS CloudFormation.

Detectar quando uma atualização falha

Se você usar o AWS CloudFormation para atualizar a configuração do atendente do CloudWatch e usar uma configuração inválida, o atendente deixará de enviar métricas para o CloudWatch. Uma maneira rápida de verificar se uma atualização da configuração do atendente foi bem-sucedida é procurar no arquivo cfn-init-cmd.log. Em um servidor do Linux, o arquivo está localizado em /var/log/cfn-init-cmd.log. Em uma instância do Windows, o arquivo está localizado em C:\cfn\log\cfn-init-cmd.log.

As métricas não foram encontradas

Se você não vir métricas que deveria ver depois de instalar ou atualizar o atendente, confirme se o atendente está configurado para coletar essa métrica. Para fazer isso, verifique o arquivo amazon-cloudwatch-agent.json para garantir que a métrica esteja listada e que você esteja procurando no namespace de métrica correto. Para ter mais informações, consulte Arquivos e locais do atendente do CloudWatch.