Utilização de disco CloudWatch
A partir de hoje, 3 de julho de 2013, o Amazon CloudWatch não oferece métricas de disco por padrão. Felizmente, você pode adicionar métricas personalizadas usando esses scripts .
Instalação
Faça login na máquina a ser monitorada e execute o seguinte:
sudo apt-get install unzip libwww-perl libcrypt-ssleay-perl
wget http://ec2-downloads.s3.amazonaws.com/cloudwatch-samples/CloudWatchMonitoringScripts-v1.1.0.zip
unzip CloudWatchMonitoringScripts-v1.1.0.zip
rm CloudWatchMonitoringScripts-v1.1.0.zip
cd aws-scripts-mon
O envio de uma métrica personalizada para o CloudWatch requer uma chave / segredo de API ou um papel IAM do CloudWatch atribuído à máquina monitorada.
Caso 1: usando credenciais (chave / segredo de API)
Dentro da ~/aws-scripts-mon
pasta:
cp awscreds.template awscreds
vim awscreds
crontab -e
Adicione a seguinte linha ao crontab, salve e saia.
*/5 * * * * $HOME/aws-scripts-mon/mon-put-instance-data.pl --mem-util --disk-space-util --swap-util --disk-path=/ --from-cron --aws-credential-file=$HOME/aws-scripts-mon/awscreds
Caso 2: usando a função IAM
Nota: Você deve selecionar a função IAM apropriada ao iniciar a instância EC2, você não pode alterá-la depois.
crontab -e
Adicione a seguinte linha ao crontab, salve e saia.
*/5 * * * * $HOME/aws-scripts-mon/mon-put-instance-data.pl --mem-util --disk-space-util --swap-util --disk-path=/ --from-cron
Importante
Certifique-se de que sua chave / segredo de API tenha acesso de gravação ao CloudWatch, caso contrário, você poderá ver uma mensagem como esta em seu syslog ( /var/log/syslog
no ubuntu):
Failed to call CloudWatch: HTTP 403. Message: User: ... is not authorized to perform: cloudwatch:PutMetricData
Você pode adicionar a permissão da política de acesso total do CloudWatch ao seu usuário para corrigi-lo.
Usando as métricas
Depois de alguns minutos (pelo menos 5), você poderá adicionar alarmes com suas novas métricas personalizadas com o nome “Sistema / Linux …”