Quero enviar métricas de memória e disco das minhas instâncias do Amazon Elastic Compute Cloud (Amazon EC2) para o Amazon CloudWatch Metrics.
Breve descrição
Por padrão, o Amazon EC2 fornece um conjunto de métricas relacionadas à sua instância para o CloudWatch no namespace AWS/EC2. Isso inclui a utilização da CPU e um conjunto de métricas NetworkIn e NetworkOut.
O Amazon EC2 não fornece métricas relacionadas ao uso da memória no nível do sistema operacional (SO) ou às métricas de uso do disco. Para encontrar essas métricas e enviá-las ao CloudWatch como métricas personalizadas, instale o agente unificado do CloudWatch. Em seguida, defina essas métricas no arquivo de configuração do agente.
Observação: a AWS cobra pelas métricas personalizadas de acordo com seu armazenamento e uso da API.
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Use a AWS CLI para baixar e instalar o agente do CloudWatch manualmente. Ou integre o agente do CloudWatch com o AWS Systems Manager Agent (SSM Agent).
Observação: o agente do CloudWatch é compatível com sistemas Windows e Linux.
Para instalar o agente do CloudWatch, conclua as seguintes etapas:
-
Crie perfis ou usuários do AWS Identity and Access Management (AWS IAM) que concedam permissões ao agente que coleta métricas do servidor. Também é possível fazer a integração com o Systems Manager. Anexe esse perfil do IAM à instância do EC2 na qual você deseja instalar o agente.
-
Baixe e instale o pacote do agente.
-
Crie o arquivo de configuração do agente CloudWatch e, em seguida, especifique as métricas que você deseja coletar.
Veja a seguir exemplos de código para um arquivo básico de configuração do agente que registra o uso da memória e as métricas de uso do disco:
Linux
{
"metrics": {
"metrics_collected": {
"mem": {
"measurement": [
"mem_used_percent"
]
},
"disk": {
"measurement": [
"used_percent"
],
"resources": [
"*"
]
}
},
"append_dimensions": {
"InstanceId": "${aws:InstanceId}"
}
}
}
Windows
{
"metrics": {
"metrics_collected": {
"LogicalDisk": {
"measurement": [
"% Free Space"
],
"resources": [
"*"
]
},
"Memory": {
"measurement": [
"% Committed Bytes In Use"
]
}
},
"append_dimensions": {
"InstanceId": "${aws:InstanceId}"
}
}
}
-
Inicie o agente em sua instância do EC2.
Por padrão, o agente ativo reporta métricas da sua instância para o namespace CWAgent no CloudWatch. Se você receber erros, consulte Solução de problemas do agente do CloudWatch.
Informações relacionadas
Monitorar instâncias usando o CloudWatch