Monitorización de servicios en Linux
Si administras un servidor web posiblemente te hayas encontrado alguna vez en la situación en la que alguno de los servicios haya fallado sin percatarte durante horas. Estos fallos la mayoría de las veces tienen una sencilla solución que se basa en relanzar nuevamente el servicio, pero si no te das cuenta de la caída no hay nada que hacer. Estas caídas pueden afectarte a los ingresos generados por los webs, a perdidas de correos, o al descontento de tus clientes si estás ofreciendo algún tipo de hosting. Como nadie tiene los recursos para estar 24 horas al día, todos los días del año, conectado y comprobando que todo funciona correctamente, existen herramientas que te permiten monitorizar los servicios fundamentales del servidor y actuar cuando alguno falla.
Una de estas soluciones, la cual me ha resuelto multitud de problemas, es SIM (System Integrity Monitor). Esta solución ha sido diseñada por una empresa de nombre R-fx Networks especializada en el desarrollo de soluciones de seguridad en Internet. Dispone de diferentes servicios y aparte, algunas de sus soluciones se ofrecen a la comunidad como desarrollos GPL.
SIM funciona realizando monitorización del sistema y de determinados servicios en sistemas basados en SysVinit. Para ello comprueba que los servicios estén online, comprueba la carga media de la máquina, así como el tamaño de los logs, entre otras cosas. Más en detalle, sus principales características son:
- Monitorización de servicios HTTP, FTP, DNS, SSH, MYSQL entre otros
- Tracking de eventos y sistema de alertas
- Reinicio automático de los servicios caídos
- Comprobación de servicios usando sockets de red y listados de procesos
- Control del tamaño de log de HTTP
- Comprobación de que HTTP funciona utilizando además una URL
- Monitorización de la carga (uptime) del sistema con niveles configurables y acciones
- Archivo de configuración sencillo de utilizar
- Script de auto configuración
- Auto configuración como proceso cron
- Sencilla instalación
- Actualizaciones automáticas
Instalación
La instalación y configuración de la aplicación es realmente sencilla. Tras descargar la aplicación es necesario descomprimirla y ejecutar el script de instalación.
bash# tar -xzvf sim-current.tar.gz bash# ./setup -i |
Tras esto entraremos en un programa interactivo en el cual, paso a paso, iremos configurando la aplicación. Una vez terminada la instalación dispondremos, normalmente en /usr/local/sim
, de la versión instalada y de un archivo de nombre conf.sim
el cual podremos modificar bien a mano, o bien mediante la utilidad de autoconfiguración /usr/local/sim/autoconf
, como prefiramos. Normalmente la configuración inicial es conveniente hacerla con el asistente, pero para cambiar algún parámetro a posteriori es preferible, por velocidad, editar directamente el archivo de configuración que, por otra parte, explica a la perfección cada una de las opciones y parámetros de configuración disponibles.
En la misma carpeta se irá almacenando el log que genera SIM cada vez que se ejecuta. Estas ejecuciones se lanzarán por defecto cada 5 minutos mediante un proceso cron añadido automáticamente al archivo /etc/crontab
. Podemos activar y desactivar estos procesos mediante el comando sim -j
.
Ejecutando simplemente sim
obtendremos una lista de los comandos disponibles:
[root@server root]# sim SIM 2.5-3 <sim@r-fx.org> ======================== usage /usr/local/sbin/sim -q Quiet mode -v Verbose mode -c Clear data & log files -l Display log file -s Display status information -u Check for SIM updates -j Install/Remove SIM cronjob |
De estos los más habituales son sim -j
para activar y desactivar el proceso cron, y sim -s
para obtener un resumen del estado actual del servidor.
Si encuentras algún problema instalando o utilizando la aplicación no dudes en utilizar los comentarios para ponerte en contacto.
como hago para que el sim se ejecute automaticamente al iniciar el sistema operativo, y luego como puedo monitorearla o tener una pantalla para revisar los mensajes?
Al instalar sim se configura automáticamente para que actué cada 5 minutos. Puedes activarlo o desactivarlo con sim -j. Para ver los mensajes puedes abrir la consola y ejecutar un tail -f sobre el archivo de log, por ejemplo.
SIM permite monitorear el proceso de mono?