Instalação do agente de métricas personalizadas – Linux Ubuntu

Você está em:
← Voltar aos tópicos

Aprenda a instalar o CWAgent de métricas personalizadas e melhore o monitoramento da nuvem AWS.

Não há nenhuma configuração necessária na CleanCloud, ou seja, todos os passos devem ser feitos a partir no painel AWS.

1.Acesse a página de Armazenamento de Parâmetros do AWS System Manager para criar um parâmetro. 

2.Clique no botão Criar parâmetro. 

3.Defina AmazonCloudWatch-linux como nome, selecione Standard e tipo String.

4.Insira o conteúdo JSON descrito abaixo e, por fim, clique em Criar parâmetro.

{ 
  "metrics":{ 
    "append_dimensions":{ 
      "AutoScalingGroupName":"${aws:AutoScalingGroupName}",
      "ImageId":"${aws:ImageId}",
      "InstanceId":"${aws:InstanceId}",
      "InstanceType":"${aws:InstanceType}"
    },
    "metrics_collected":{
      "disk":{ 
        "measurement":[ 
          "disk_total",
          "disk_used"
        ],
        "metrics_collection_interval":300,
        "ignore_file_system_types":[ 
          "tmpfs",
          "devtmpfs",
          "rootfs",
          "sysfs"
        ],
        "resources":[ 
          "*"
        ]
      },
      "mem":{ 
        "measurement":[ 
          "mem_total",
          "mem_used"
        ],
        "metrics_collection_interval":300
      },
      "swap":{ 
        "measurement":[ 
          "swap_used",
          "swap_used_percent"
        ],
        "metrics_collection_interval":300
      }
    }
  }
}

5.Assim que for criado irá aparecer na tela de Parâmetros.  

6.Para que o CWAgent envie dados para o CloudWatch é necessário criar uma função e incluir duas permissões: AmazonEC2RoleforSSM e CloudWatchAgentServerPolicy através das políticas gerenciadas da AWS na Função IAM para instâncias EC2

Esta Função IAM deve ser anexada às instâncias EC2. Caso já possua alguma Função IAM em uso para EC2, é necessário apenas adicionar as permissões AmazonEC2RoleforSSM e CloudWatchAgentServerPolicy.

7.Na tela de Criar função selecione Serviço da AWS e em seguida EC2 como serviço. Clique em Próximo. 

8.Selecione primeiramente a política AmazonEC2RoleforSSM. 

9.Em seguida selecione a política CloudWatchAgentServerPolicy e clique em Próximo.

10.Após esta etapa, há a tela de tags. Não é necessário adicionar tags, sugerimos que apenas clique em Avançar.

11.Na tela de revisão, verifique se as políticas corretas estão sendo aplicadas e por fim clique em Criar função. 

12.É necessário realizar a instalação do CWAgent em todas as máquinas que deseja coletar as métricas. Para isso é possível realizar o processo a partir do acesso individual de cada uma das máquinas ou automatizar essa etapa através da instalação do script bash na rotina de devops

13.Segue o script abaixo para realizar a instalação. 

#!/bin/bash

cd /home/ubuntu
wgethttps://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo rm -rf amazon-ssm-agent.deb

mkdir cwAgentPackage
cd cwAgentPackage
wgethttps://s3.amazonaws.com/amazoncloudwatch-agent/linux/amd64/latest/AmazonCloudWatchAgent.zip
sudo apt-get install -y --force-yes unzip
unzip AmazonCloudWatchAgent.zip
sudo chmod +x install.sh
sudo ./install.sh
cd ..
sudo rm -rf cwAgentPackage

## JSON file stored via ParameterStore called AmazonCloudWatch-linux
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c ssm:AmazonCloudWatch-linux -s
sudo service amazon-ssm-agent restart

PARABÉNS! 

Agora o agente envia métricas para o CloudWatch e essas são coletadas pela CleanCloud e estarão disponíveis em até 12h para serem usadas nos dashboards e insights.

 

Ficou com dúvida? 

O que é CloudWatch? 

https://aws.amazon.com/pt/cloudwatch/

O que é SSM? 

https://docs.aws. amazon.com/systems-manager/ latest / userguide / ssm-agent. html

O que é CWAgent? 

https://docs.aws.amazon.com/ systems-manager / latest / userguide / sysman-manual-agent- install.html