Blog

Entendendo o funcionamento dos plugins no Nagios

Este é um tópico que causa muita confusão na cabeça do iniciante, para entender a estrutura do Nagios requer um pouco de estudo, vou tentar simplificar e ser bem direto neste assunto.
O Nagios é basicamente um programa que manipula comandos de checagem nos tempos programados, podendo notificar caso ocorra a falha.

Bookmark and Share

A estrutura do Nagios funciona da seguinte forma, o binário lê o arquivo nagios.cfg onde possui seus principais parâmetros de configuração (/usr/local/nagios/etc/nagios.cfg), através dele, você pode encontrar o caminho dos demais arquivos de configuração.

Estão configurados no nagios.cfg

cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg
cfg_file=/usr/local/nagios/etc/commands.cfg

Então o entendimento aqui fecha assim.

1 – Fluxo:

1.1 – O serviço é iniciado ( service nagios start ) (no CentOS)

1.2 – O binário lê o arquivo de configuração principal (nagios.cfg)

1.3 – Quando a leitura é feita, ele busca os hosts, serviços e comandos configurados neste arquivo.

1.4 – Ele executa o check (vou explicar como funciona):

Quando falamos em “ Vamos instalar o plugin?” devemos seguir os seguintes passos:

2 – Instalando o plugin, imagine que estamos instalando um plugin para monitorar a disponibilidade do webserver:

Os plugins ficam armazenados no diretório /usr/local/nagios/libexec/ você deve descompactar os plugins nesta pasta, neste caso o check_http.

Antes de configurar, você deve testar na mão se o plugin está funcionando:

/usr/local/nagios/libexec/check_http -H webserver01 -p 80
Resposta: HTTP OK HTTP/1.1 200 OK – 1831 bytes in 0.002 seconds|time=0.001658s;;;0.000000 size=1831B;;;0

Esta é a principal dica para quem está implementando o plugin.

Agora, você deve configurar como o plugin deve ser executado no arquivo commands.cfg

Ex:

define command{

name check_webserver

command_name check_http

command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$

}

Já sabemos que o plugin está funcionando corretamente, está faltando apenas configurar no services.cfg ou hosts.cfg para checar o host.

Você deve configurar conforme o exemplo:

define service{
use generic-service
host_name webserver01
service_description Web Server
check_command check_http!webserver01!80
}

Agora você deve rodar o comando abaixo para verificar se não houve erro anter de reiniciar e parar com o sistema.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Guarde este comando, ele vai ser útil um dia.

Caso não possua erro, agora você pode reiniciar o Nagios, no caso do CentOS é o “service nagios reload

fwefwe

Cool 🙂

Posted in: Plugin

Leave a Comment (1) ↓

1 Comment

  1. kennedy March 21, 2014

    Muito bom,

    Obrigado

    reply

Leave a Comment