vServers con alta disponibilidad con Monit


([N1] cristianvg2003) #1

Hola creo que esto puede serle realmente útil a la comunidad:

http://velnex.wordpress.com/2012/06/18/vservers-con-alta-disponibilidad-con-monit/

un saludo,


([N4] innovadb) #2

Hola Cristian

Tiene buena pinta el monit, no lo conocía, pero nosotros hicimos algo mucho mas simple que monitoriza múltiples vservers y tambien avisa por mail, en esta caso esta configurado para 800, y con un pequeño cambio podemos decirle que levante el que esté caido.

Solo lanzamos este script con CRON cada 10 minutos, que comprueba si existe el usuario, y si existe comprobamos el vserver. En nuestro caso el nombre de usuario es el mismo que el puerto.

#!/bin/bash

contador=1
nombre=12201
mensaje=“LISTADO DE SERVIDORES CAIDOS”
enviar=0

while [ $contador -lt 800 ]; do

#Si existe el usuario verificamos el vserver
if grep -e "$nombre:.*" /etc/passwd > /dev/null
then
#Si esta parado guardamos el mensaje para enviar.
if netcat -z 127.0.0.1 $nombre &>/dev/null
then
echo “NO” > /dev/null
else
mensaje="$mensaje $nombre"
enviar=1
fi
fi
#Aumentamos el contador
((contador++))
((nombre++))
done

#Si hay algun servidor parado, enviamos un mail de aviso
if [[ $enviar = 1 ]]
then
echo $mensaje | mail -s “Atencion: Hay servidores parados.” info@innovadb.com
fi


([N1] cristianvg2003) #3

jejeje efectivamente innovadb como tal la tarea en si no es super-compleja y considere escribir el script tambien pero ya había utilizado Monit en otro proyecto con un resultado excepcional y con overhead ridículo (2Mb en Ram), me gustó particularmente el “itentalo x veces dentro de x ciclos de checkeo” (excelente para aumentar la disponibilidad), la vigilancia de directorios (Interesante para las instalaciones Express ) y la interfaz web que provee.


([N1] samuelblanquez.net) #4

Muchas gracias por el aporte, tomo nota.