No les ha pasado que en ocasiones por razones ajenas a ustedes, los servicios se mueren de repente a pesar de que la configuracion es perfecta?.

 

En esta ocasion les traigo una herramienta que nos ayudara a monitorear estos servicios importantes de manera local y sin mucho esfuerzo. Estoy hablando de monit; monit es una herramienta de monitoreo local que cuenta con su propia interfaz grafica para que la puedas manejar sin necesidad de tener que hacer ssh a tu servidor, claro que tambien se puede hacer de esta manera pero si lo que quieres es que alguien menos avanzado tenga acceso y pueda solucionar esos problemas por si solo esta es la mejor alternativa.

 

Instalando el servicio de monit

sudo yum install monit

 

habilitando el servicio para que inicie al reiniciar el servidor

sudo chkconfig monit on

 

Revisa que se haya habilitado

chkconfig 

mongod         	0:off	1:off	2:off	3:on	4:off	5:on	6:off
monit          	0:off	1:off	2:on	3:on	4:on	5:on	6:off
mysqld         	0:off	1:off	2:on	3:on	4:on	5:on	6:off

 

Edita el archivo de configuracion

vim /etc/monit.conf


Agrega lo siguiente: 

set daemon 60
include /etc/monit.d/*
set logfile /var/log/monit.log
set httpd port 2812 use address 127.0.0.1 allow monit:monit

 

esta configuracion te permitira conectarte utilizando en tu navegador web con la direccion localhost:2812

 

Desde esta interfaz puedes iniciar, detener, monitorear algun servicio, ahora pasemos a la configuracion para que se muestren los servicios en la pagina anterior.

 

Creamos un archivo de configuracion

vim /etc/monit.d/collector.cfg

agregamos lo siguiente:

check process collector with pidfile /opt/collector.pid
   start program = "/sbin/service collector start"
   stop  program = "/sbin/service collector stop"


Nota* Necesitas tener instalado el colector de sumologic para que esto funcione, esta es la configuracion mas basica.

 

Pero puedes tener una configuracion tan compleja como sea necesario por ejemplo:

sudo yum install httpd

check process apache with pidfile /opt/apache_misc/logs/httpd.pid
   group www
   start program = "/etc/init.d/apache start"
   stop  program = "/etc/init.d/apache stop"
   if failed host localhost port 80 
        protocol HTTP request "/~hauk/monit/token" then restart
   if failed host 192.168.1.1 port 443 type TCPSSL 
        certmd5 12-34-56-78-90-AB-CD-EF-12-34-56-78-90-AB-CD-EF
	protocol HTTP request http://localhost/~hauk/monit/token  then restart
   depends on apache_bin
   depends on apache_rc

 check file apache_bin with path /opt/apache/bin/httpd
   group www
   if failed checksum then unmonitor
   if failed permission 755 then unmonitor
   if failed uid root then unmonitor
   if failed gid root then unmonitor

 check file apache_rc with path /etc/init.d/apache
   group www
   if failed checksum then unmonitor
   if failed permission 755 then unmonitor
   if failed uid root then unmonitor
   if failed gid root then unmonitor

 

Espero esto les ayude con esos servicios molestos que se caen seguido y tienen que estar atentos para ponerlos en servicio nuevamente.

Cual es tu opinion?

Envianos feedback!