Y Ripper dijo… «monit»

Filed under:Software Libre — posted by freud on 9 noviembre 2006 @ 17:52

En casa tengo un pequeño ordenador (AthlonXP 1700+ con 768MB RAM y 40 GB de HD en LVM) dedicado a las labores de servidor (sobre el que corre la web, el blog, el wiki, todas las descargas P2P, Seti@Home,…)

Por falta de espacio lo tengo temporalmente (a ver si sigo con el proyecto de «mini-granja» en el trastero) en el salón, con lo que lo tengo conectado vía wifi.

Como todos sabemos cómo va el tema wifi de cuando en cuando (1 día, 1 semana, 1 mes,…) la conexión se va al carajo y, como no tengo ni monitor, ni teclado ni manera remota que acceder a él, me veo obligado a apagar y encender (acpi rules).

Estaba ideando alguna manera de detectar que había ocurrido la desconexión, incluso había pensado en un cron con una shell programada por mí que hiciese comprobaciones, etc etc, pero anoche hablando con Ripper me dijo: «eso ya existe, y se llama Monit».

Sorprendido todo yo me dispuse a instalarlo y configurarlo para esa pequeña tarea de tirar las conexiones y volver a levantarlas (que es lo único que hace falta para que la wifi vuelva a conectarse correctamente):

1º.- apt-get install monit (mi servidor está en GNU/Linux Debian «Sarge»… más estable imposible ;) )

2º.- vi /etc/monit/monitrc (con el siguiente contenido):

set daemon 60
set logfile «/var/log/monit.log»

check host routeradsl with address 172.26.0.1
if failed icmp type echo with timeout 10 seconds then exec «/root/shells/levanta_redes»

3º.- vi /etc/defaults/monit (hacer cambios dejándolo de la siguiente manera):

startup=1

CHECK_INTERVALS=60

4º.- Crear el archivo /root/shells/levanta_redes con permisos de ejecución y el siguiente contenido:

#!/bin/bash
echo «Detectado servidor caido. Intentando recuperacion…» | gnokii –sendsms 6**20**2* -C 0
/etc/init.d/networking restart

5º.- /etc/init.d/monit restart
De esta manera lo que hará es un ping cada 60 segundos al router. En caso de que detecte que no responde en 10 segundos ejecutará el script que me enviará un sms para avisarme y levantará la conexión de nuevo.

Lo he probado y va de lujo. Luego lo aplicaré a varias cosas más, ya que las posibilidades son enormes.



image: detail of installation by Bronwyn Lace