Pular para o conteúdo

Watch Dog para Nagios

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
Rodrigo Garcia r.garcia
Hits: 3.936 Categoria: Shell Script Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

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
Download watch_dog.sh Enviar nova versão

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

Backup em HD Externa com Rsync

del_user - cuida dos 4 passos para remover um usuário do sistema

Importar vários Emolticons de uma vez para amsn

Script para geração de relatórios do sarg

Backup

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.