você está aqui: Home  → Arquivo de Mensagens Programação Shell Linux: Inscrições Abertas

monit e m/monit - softwares para monitoração

Colaboração: Ali Faiez Taha

Data de Publicação: 21 de novembro de 2011

De muitos Softwares para monitoramento de Rede, Servidores, CPU, Memória e etc, o Monit é bastante interessante.

Monitora processos, programas, arquivos, diretórios e Sistemas de Arquivos num sistema Unix. Permite também fazer reparos e manutenção dos serviços em execução.

Além de monitorar os processos que se iniciam no boot, por exemplo no Linux (/etc/init.d) e no FreeBSD (/usr/local/etc/rc.d e /etc/rc.d, etc.), permite reiniciar processos que pararam e enviar mensagens de alerta.

A monitoração pode ser feita baseada em parâmetros pré-estabelecidos, por exemplo se a CPU está com 45% de uso um e-mail de alerta pode ser enviado ao responsável pelo servidor.

Os processos podem ser reiniciados automaticamente pois é especificado o comando para isso.

Pode também monitorar o locahost e hosts remotos, serviços de rede TCP e UDP, Unix Domains Sockets e os protocolos de Rede HTTP, SMTP, FTP e outros. Se o protocolo não é suportado pelo Monit, pode-se fazer os testes a partir do Monit, enviando dados e verificando as respostas do servidor.

O Monit é bastante autônomo e não depende de plugins ou bibliotecas extras para funcionar devidamente. Os resultados podem ser vistos via WEB, a porta padrão é a 2812.

A configuração é bem simples. Um exemplo de arquivo de configuração para um servidor FreeBSD:

Arquivo /usr/local/etc/monitrc

set logfile syslog facility log_daemon
set idfile /var/.monit.id
set statefile /var/.monit.state
set mmonit http://monit:monit@servidor.com.br:8080/collector
allow servidor.com.br
allow usuario:senhasecreta

check system servidor.com.br
if loadavg (1min) > 4 then alert
if loadavg (5min) > 2 then alert
if memory usage > 75% then alert
if swap usage > 25% then alert
if cpu usage (user) > 70% then alert
if cpu usage (system) > 60% then alert
if cpu usage (wait) > 20% then alert

check process Apache with pidfile /var/run/httpd.pid
start "/usr/local/etc/rc.d/apache22 start"
stop "/usr/local/etc/rc.d/apache22 stop"

check process SSH with pidfile /var/run/sshd.pid
check process NTP with pidfile /var/run/ntpd.pid
check process CRON with pidfile /var/run/cron.pid
check process SYSLOG with pidfile /var/run/syslog.pid

Se for executar o Monit em mais de um servidor, use o MMonit (www.mmonit.com) Em suma, deve-se instalar o Monit em cada servidor ou host, agrupá-los usando o MMonit, acompanhar os resultados via WEB e monitorar os serviços.

O MMonit usa a porta padrão 8080 e é disponível via pacote TGZ e está disponível para FreeBSD, Linux OpenBSD, Mac-OS e Solaris-SPARC

A instalação é bem simples e pode ser integrado com um Banco de Dados MySQL ou PostgreSQL, caso use muitos hosts ou servidores a serem monitorados.

Pode-se também configurar o MMonit para uso do SSL. O WIKI do projeto traz muitas dicas e FAQs. É bem completo e possui muitos exemplos de configuração.

Enfim, é uma excelente ferramenta de monitoração.



Veja a relação completa dos artigos de Ali Faiez Taha