Bienvenido a Tecnohackers

Tecnohackers » Sistemas Operativos » Servidores
 » 

Script para monitorear los servicios en un servidor



Autor Tema: Script para monitorear los servicios en un servidor  (Leído 4446 veces)

Desconectado merovingio

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2795
  • IN HOC SIGNO VINCES
Script para monitorear los servicios en un servidor
« en: Febrero 26, 2016, 10:52:46 am »
Script que permite monitorear e iniciar el servicio que nosotros le indiquemos. Los servicios que deseamos monitorizar se indican en un archivo de texto, validando el servicio que deseamos controlar en nuestro servidor, para el caso de distribuciones basadas en Debian, como es Ubuntu, entramos al directorio /etc/init.d y determinamos cuales queremos chequear. Se obtiene la fecha y hora del sistema, para registrar en un log que maneja el script, las incidencias del servicio.

Y si el servico se encuentra inactivo. Al momento de determinar el servicio inactivo, se inicia y se envía un email al administrador, para que valide el error puntual que origino la caída del servicio.

Código: You are not allowed to view links. Register or Login
#! / bin / bash
FILE=servicios.txt
TIME='date +%Y-%m-%d_%H-%m-%S'
 
while read linea; do
 
if ps ax | grep -v grep | grep $linea > /dev/null
    then
        echo "Servicio $linea esta ejecutandose"
    else
        echo "El Servicio $linea ,estaba DETENIDO, a las $TIME" >> Servicios.log
    service $linea start
    echo "Validar el estado del servicio, si esta down, puede ser iniciado con:  service $linea status, estaba down a las $TIME" | mail -s "Servicio $linea Detenido " usuario@dominio.com
fi
 
done < "$FILE"

Se debe tener en cuenta, crear el archivo de servicios.txt en la misma ruta donde coloquemos el script, por aquello del tema de las rutas. El archivo de Servicios.log podemos enviarlo a la ruta que deseamos, por solo mencionar /var/log/, para este caso, quedó en la misma ruta del script.

Ahora solo queda colocarlo en un cron. Al ser un proceso de corto tiempo de procesamiento del servidor, podemos programarlo cada 3 minutos, para que valide el estado del servicio. ¿ Como hacerlo ? editamos el vim /etc/crontab y agregamos la siguiente linea:

Código: You are not allowed to view links. Register or Login
*/3 * * * * /ruta/del/script/script.sh
visto en la mirada del replicante

No respondo dudas por IM, usa el FORO

Tags:
Tags:

 


SMF 2.0.19 | SMF © 2016, Simple Machines
Paginas Afiliadas
Twitter - FaceBook - Daraxblog
Designed by Smf Personal