>_Nagios – nsca

Checagens passivas

O NSCA amplia as capacidades do Nagios, de forma que ele possa trabalhar numa plataforma de monitoração distribuída.

Vamos para sua configuração

No servidor

Passo -1: Faça o Download do nsca e compile o pacote.

[root@swu-monitoramento opt]# wget http://ufpr.dl.sourceforge.net/sourceforge/nagios/nsca-2.4.tar.gz
[root@swu-monitoramento opt]# tar -xvf nsca-2.4.tar.gz
[root@swu-monitoramento opt]# cd nsca-2.4/
[root@swu-monitoramento nsca-2.4]# ./configure
[root@swu-monitoramento nsca-2.4]# make all

Passo -2: Instale os pacotes abaixo no servidor

[root@swu-monitoramento nsca-2.4]# yum install libmcrypt.x86_64 libmcrypt-devel.x86_64 xinetd.x86_64

Passo -3: siga os comandos abaixo

[root@swu-monitoramento nsca-2.4]# cp src/nsca /usr/share/nagios/bin/
-rwxr-xr-x 1 nagios nagios 81391 Jan 20 08:40 nsca
[root@swu-monitoramento nsca-2.4]# cp nsca.cfg /etc/nagios/
-rw------- 1 nagios nagios  5098 Jan 20 15:46 nsca.cfg
[root@swu-monitoramento nsca-2.4]# cd /etc/nagios/
[root@swu-monitoramento nagios]# vim nsca.cfg

Edite as linhas abaixo:



server_address=IP-DO-SERVIDOR
allowed_hosts=0.0.0.0
password=SENHA-AQUI-PARA-COMUNICAÇÃO-ENTRE-OS-SERVIDORES

Passo -4: Configure o xinetd.d/nsca

[root@swu-monitoramento nagios]# cd /etc/xinetd.d/

[root@swu-monitoramento xinetd.d]# vim nsca

service nsca
{
        flags           = REUSE
        type            = UNLISTED
        port            = 5667
        socket_type     = stream
        wait            = no
        user            = nagios
        group           = nagios
        server          = /usr/share/nagios/bin/nsca
        server_args     = -c /etc/nagios/nsca.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = 127.0.0.1 0.0.0.0
}

Passo 5: Inicie o xinetd

[root@swu-monitoramento xinetd.d]# /etc/init.d/xinetd restart

Passo 6: Faça a configuração do Firewall – MUITO IMPORTANTE ISSO

[root@swu-monitoramento xinetd.d]# iptables -A INPUT -p tcp -s IP-SERVIDOR-NAIOGS --dport 5667 -d IP-DO- CLIENTE -j ACCEPT

Passo 7: Agora crie ou edite os arquivos de host.cfg, commands.cfg e nagios.cfg

[root@swu-monitoramento xinetd.d]# cd /etc/nagios/objects/

Passo 8: Editando o arquivo commands.cfg

[root@swu-monitoramento objects]# vim commands.cfg

define command{
        command_name    check_dummy
        command_line    /usr/lib/nagios/plugins/check_dummy $ARG1$ $ARG2$
        }

Passo 9: Configure o host.cfg. No meu caso esta sendo hobby2.cfg

[root@swu-monitoramento objects]# vim hobby2.cfg
# HOST HOBBY2
define host{
        use             gnulinux_temp1-host
        host_name       hobby2
        address         IP-DO-CLIENTE
        active_checks_enabled         1
        passive_checks_enabled        1
        flap_detection_enabled        0
        }

define service{
        use                             gnulinux_temp1-service
        host_name                       hobby2
        service_description             PING
        check_command                   check_dummy
        }

Passo 10: Configure o arquivo nagios.cfg

[root@swu-monitoramento objects]# vim /etc/nagios/nagios.cfg
cfg_file=/etc/nagios/objects/hobby2.cfg

Passo 11: Execute o comando abaixo

[root@swu-monitoramento objects]# nagios -v /etc/nagios/nagios.cfg

Passo 12: Copie os arquivos para o Cliente

[root@swu-monitoramento nsca-2.4]# scp send_nsca.cfg root@192.168.3.3:/etc/nagios/
[root@swu-monitoramento nsca-2.4]# scp send_nsca root@192.168.3.3:/usr/local/bin/

Pronto Servidor Configurado!

No Cliente

Passo -1: Instale os pacotes abaixo

# apt-get install mcrypt libmcrypt-dev

Passo 2: Edite o arquivo send_nsca.cfg

hobby:/etc/nagios# cd /etc/nagios

hobby:/etc/nagios# vim send_nsca.cfg
password=SENHA-AQUI-A-MESMA-DO-SERVIDOR
encryption_method=1

Passo 3: Crie o script abaixo para monitorar o ping do Cliente

hobby:/D2D/scripts# vim ping_hobby.sh

#!/bin/bash

SERVER="IP-DO-SERVIDOR-NAGIOS"
SERVER_PORT="5667"
SERVER_TIMEOUT="10"

# NSCA CCONFIG FILE
SEND_NSCA_CFG_FILE="/etc/nagios/send_nsca.cfg"
SEND_NSCA="/usr/local/bin/send_nsca"

OK=0
WARNING=1
CRITICAL=2
UNKNOWN=3
GREP="/bin/grep"
ECHO="/bin/echo"

        PLUGIN="`/usr/lib/nagios/plugins/check_fping IP-DO-CLIENTE`"
        $ECHO $PLUGIN | $GREP "OK"
        if [ $? = 0 ]; then
                RESULTADO="hobby2;PING;0;$PLUGIN"
                /bin/echo $RESULTADO | /usr/local/bin/send_nsca -H $SERVER -d ';' -c $SEND_NSCA_CFG_FILE
                exit 0
        fi

        $ECHO $PLUGIN | $GREP "WARNING"
        if [ $? = 0 ]; then
               RESULTADO="hobby2;PING;1;$PLUGIN"
                $ECHO $RESULTADO | $SEND_NSCA -H $SERVER -d ';' -c $SEND_NSCA_CFG_FILE
                exit 1
        fi

        $ECHO $PLUGIN | $GREP "CRITICAL"
        if [ $? = 0 ]; then
               RESULTADO="hobby2;PING;2;$PLUGIN"
                $ECHO $RESULTADO | $SEND_NSCA -H $SERVER -d ';' -c $SEND_NSCA_CFG_FILE
                exit 2
        fi

Passo 4: Agora é só executar o Script e verificar o log no servidor Nagios

hobby:/D2D/scripts# ./ping_hobby.sh
FPING OK - 192.168.3.3 (loss=0%, rta=0,000000 ms)|loss=0%;;;0;100 rta=0,000000s;;;0,000000
1 data packet(s) sent to host successfully.

Exemplo do log no Servidor Nagios.

[root@swu-monitoramento objects]# tail -f /var/log/nagios/nagios.log | grep hobby
[1327090368] EXTERNAL COMMAND: PROCESS_SERVICE_CHECK_RESULT;hobby2;PING;0;FPING OK - 192.168.3.3 (loss=0%, rta=0,000000 ms)|loss=0%;;;0;100 rta=0,000000s;;;0,000000

Pronto tudo configurado!
Até.

>_Nagios – nsca
Tagged on:

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

%d blogueiros gostam disto: