Gestión y vigilancia de Servidores
Es importante que un sistema de vigilancia funcione, todo el tiempo, con la confianza de que así lo hace. Una herramienta de supervisión del sistema no debe ser intrusiva, es más, uno mismo debería olvidarse que se encuentra instalada. Eso ocurre hasta que, por ejemplo, el “proceso demonio” sshd se cae en un servidor co-ubicado a 200 kilómetros de distancia y no se puede acceder de manera remota ya que sshd no se encuentra “vivo”. Cuando esto sucede, es bueno saber que se cuenta con esta capa extra de vigilancia automática que además de alertar que algo sucedió, también toma una acción para solucionar el error.
Monit es particularmente útil para controlar “procesos demonio”, como los iniciados al momento de arranque del sistema.
ls -la /etc/init.d/
Demasiado útil para vigilar y mantener de manera automática un Servidor altamente disponible. Con Monit también se pueden vigilar servicios como: Apache, MySQL, SSH, Postfix y muchos otros más.
Alerta y acción inmediata
A diferencia de muchos otros sistemas de vigilancia, con Monit se puede actuar de inmediato si se produce una situación de error, por ejemplo, si no se está ejecutando Postfix, se puede automatizar el inicio de Postfix en caso de no estar activo. De la misma manera, por ejemplo, si Apache por alguna razón empieza a utilizar demasiados recursos (es probable, producto de un ataque DoS en curso) con Monit se puede detener o reiniciar Apache, también alertar o avisar por medio de correo electrónico. Con Monit es posible controlar características de procesos, tales como, la cantidad de memoria o la cantidad de cliclos CPU que un proceso se encuentra consumiendo.
Detectar cambios que no deberían pasar
Monit también se puede utilizar para supervisar archivos, directorios y sistemas de archivos. Permite detectar si ocurren cambios, tales como: “timestamps”, “checksums” o cambios de tamaño de archivos. Lo cual es útil de supervisar por razones de seguridad. Por ejemplo, se puede controlar la suma de control MD5 o SHA1 de los archivos que no deberían cambiar. De la misma manera se puede alertar o se puede realizar una acción si algo cambia.
Instalación
apt-get install monit dpkg-query -L monit
Archivo de configuración
vi /etc/monit/monitrc
Archivo de configuración de vigilancia a la medida
ls -la /etc/monit/conf.d/ Por ejemplo: vi /etc/monit/conf.d/custom.conf
Iniciar, parar y re-iniciar
/etc/init.d/monit start /etc/init.d/monit stop /etc/init.d/monit restart
Archivo log
tail -f /var/log/monit.log du -sh /var/log/monit*
Estado de la red y conexiones
Monit puede controlar las conexiones de red a varios servidores, tanto en el servidor local como en servidores remotos. Es capaz de manejar “Sockets” del tipo TCP, UDP y Unix Domain. La prueba de red se puede realizar en un nivel de protocolo; Monit tiene funciones propias para probar los principales protocolos de Internet, como HTTP, SMTP, etc. Incluso si un protocolo no se encuentra soportado, se puede ir configurando en la marcha para enviar datos de prueba y probar la respuesta del servidor.
Monit puede ser utilizado para probar programas o “scripts” en ciertos momentos, al igual que cron, pero, además, se puede probar el valor de salida de un programa y realizar una acción o enviar una alerta si el valor de salida indica un error. Esto significa que usted puede utilizar Monit para vigilar cualquier tipo de “script” que se pueda crear.
Cabe destacar que Monit se puede utilizar para vigilar los recursos generales del sistema, como el uso de CPU, la memoria y la carga media.