Watch Dog para Nagios

Publicado por Rodrigo Garcia (última atualização em 26/06/2013)

[ Hits: 3.471 ]

Homepage: www.unix4life.blogspot.com

Download watch_dog.sh




Olá a todos!!!

Como todos já sabem, é possível fazer infinitas customizações no Nagios. Eu mesmo já criei meus próprios plugins usando shell script. Dessa vez, eu tentei algo um pouco mais ousado, que é a criação de um watch dog (sistema automático que detecta falhas e tenta corrigir sozinho) para serviços monitorados pelo Nagios. Na verdade é bem simples, um shell script básico que é executado pelo plugin NRPE. No tutorial que está nesse mesmo blog (link abaixo), vemos que quando utilizamos o NRPE nós configuramos comandos a serem executados no host monitorado através do arquivo nrpe.cfg:

command[check_http]=/usr/lib/nagios/plugins/check_http -I localhost

O que eu fiz foi criar um script que chama cada comando, ex.:

command[check_http]=/usr/lib/nagios/plugins/watch_dog.sh "check_http -I localhost" apache2

Caso o serviço não esteja rodando, ele executa o comando para iniciar o serviço no sistema operacional. Simples, não?

O script também está publicado em: http://www.unix4life.blogspot.com

  



Esconder código-fonte

#!/bin/bash
# Watch Dog para Nagios 1.0
# Desenvolvido por Rodrigo Garcia em 25/06/2013
# Informe em PDIR="" o caminho para os plugins do Nagios
PDIR="/usr/local/nagios/libexec"
SERV=$(which service)
# O script deve ser chamado colocando como primeiro argumento ($1) o nome do plugin do Nagios e seus argumentos entre aspas
# O segundo argumento ($2) é o nome do serviço a ser executado caso o mesmo não esteja rodando.
$PDIR/$1 $2 > /dev/null
case $? in
"0")
        $PDIR/$1 $2
        ;;
"1")
        $PDIR/$1 $2
        ;;
"2")
        $SERV $2 restart
        if [ $? != "0" ]
        then
                $PDIR/$1 $2
        fi
   $PDIR/$1 $2
        ;;
esac

Scripts recomendados

PC Report - Coleta lista de dispositivos instalados e logs

Script que converte maiúsculas em minúsculas e retira branco do nome.

rc.local para Debian

User manager - o gerenciador de usuários para Slackware Linux

Script de Backup em Fita DAT


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts