Monitoração e coleta de dados de performance de servidores GNU/Linux

Código completo para realizar monitoração e coleta de dados de performance de servidores GNU/Linux através do crontab. Quantas e quantas vezes não fomos surpreendidos com algum filesystem que chegou à 100% de utilização ou o load da máquina subiu demais deixando o seu ambiente lento. Sabemos que há várias ferramentas de monitoração pagas ou open source, porém, muitas vezes precisamos de um simples e-mail informando o evento ou em algum momento consolidar o histórico de utilização de recursos da máquina em um gráfico ou planilha. Foi devido à essas necessidades que desenvolvi um script para coletar informações de uso de CPU, memória, load e uso de filesystems, e também informar através de e-mail, algum threshold que foi violado. Deixarei o código aberto para ajudar os "brothers da tela preta" e permitindo que a comunidade possa alterar e customizá-lo para as suas necessidades. Existem alguns pré-requisitos para poder utilizar o script: - Pacotes mailx, sendmail (ou postfix), sysstat e sudo; - sudo configurado para permitir executar os comandos touch e chown no /etc/threshold.env; - Sendmail ou Postfix com relay devidamente configurado. Após configurado, o script cria um diretório monitora, que por padrão é o home do usuário que está executando, mas que será solicitado mudança na primeira execução. Serão criados arquivos com o histórico da coleta, sendo gravados dentro do subdiretório histórico, e a cada dia é criado um arquivo novo (ex.: HISTORICO_02-03-2015.txt). Este arquivo de texto com campos separados por vírgulas, poderá ser utilizado para gerar um gráfico ou importar em planilha ou banco de dados. Também será criado um arquivo com os parâmetros de threshold (/etc/thresholds.env), que servirá como base de comparação no momento da verificação e irá realizar o alarme se o parâmetro coletado for maior do que o esperado. Será criado uma entrada no crontab, ao qual você irá informar a periodicidade de checagem, em minutos. Basta copiar o texto abaixo, salvar como monitor.sh no seu home e rodar primeiramente com o parâmetro "-configurar" com seu usuário ou root para realizar a criação do diretório, arquivos e configuração. Por Claudio Santos. Contribuinte do Viva o Linux e escrevo o blog: http://pontosh.wordpress.com

Por: Claudio Ferreira dos Santos






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts