Executando a Amazon Linux AMI. Parece que o CloudWatch não verifica se há espaço livre em disco. Eu tenho vários servidores e, idealmente, não quero configurar cada um com um servidor de email, script para verificar o espaço em disco etc.
Existe uma maneira mais simples de fazer isso?
linux
amazon-ec2
disk-space-utilization
DaBeeeenster
fonte
fonte
Não há como as ferramentas de controle e monitoramento do EC2 fornecerem esses dados, porque o sistema de arquivos de suas instâncias é SOMENTE acessível pela própria instância . Tanto a arquitetura básica do hardware quanto o modelo de segurança exigem essa limitação. Pense em como seria ruim se um software fora do seu computador pudesse vasculhar os arquivos nos seus discos rígidos!
Aqui está uma maneira discreta de fazer com que o cron (instalado na maioria dos sistemas de qualquer maneira) verifique esses dados periodicamente. Seus sistemas devem ter os requisitos mínimos para lidar com as notificações de email raiz de qualquer maneira. Eu recomendo ter pelo menos um agente de correio de saída materialista e configurar o alias raiz ou administrador para encaminhar a você em todos os sistemas que você administra. Muitos programas, inclusive,
cron
esperam essa configuração.Você pode adicionar isso ao seu crontab:
Para quebrar isso, isso
test
comando configura uma comparação simples do shell usando o-lt
operador less than e um valor fixo equivalente ao espaço livre de 1Gb.df
comando testa espaço livre no/
sistema de arquivosgrep
você fica apenas a linha de saída que você precisa, em vez dos cabeçalhosdf
inclui.awk
get é apenas a quarta coluna na saída, o número do espaço livre.&&
comando diz para executar o próximo comando somente se o primeiro (otest x -lt y
) retornar verdadeiro.fonte
Escrevi um script conforme necessário para verificar vários servidores no meu grupo EC2. Ele precisa de um arquivo com uma lista de cada nome de IP / domínio do servidor em uma única linha.
fonte
Instruções passo a passo para configurar isso em uma instância do EC2 com CloudWatch:
http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts.html
fonte
Eu uso este script: http://nixcraft.com/shell-scripting/3238-shell-script-check-disk-space-remote-systems.html
fonte
Cron é seu amigo. Coloque esse arquivo no diretório /etc/cron.daily e ele será executado uma vez por dia:
NOTA: Este script indica que os CDROMs montados estão cheios.
fonte
Este é um script rápido do PowerShell que escrevi que é executado em nosso controlador de domínio na AWS e envia um email a um grupo de destinatários se uma unidade estiver cheia. É necessário um csv com 2 colunas - um nome intitulado com um nome de computador e um drive intitulado com uma letra de unidade. Como não temos um servidor de email em nosso ambiente da AWS, configurei-o para enviar através do SES. Você também pode modificar levemente o script para enviar um relatório de vez em quando sobre a utilização da unidade, se desejar. Apenas pensei em publicar isso aqui, já que todas as soluções que encontrei foram para instâncias do Linux.
fonte