Páginas

martes, 27 de septiembre de 2011

Cliente Nagios para monitorizar máquina Linux

Hola a tod@s!

¡¡Ya estamos de vuelta del periodo de vacaciones!!.

Para empezar la nueva temporada, quiero hablaros en esta ocasión sobre: "NRPE".


NRPE, es un cliente Linux para monitorizar nuestro host en un servidor NAGIOS

Seré conciso y directo en el nuevo post sobre la instalación y configuración de NRPE en host remoto y en el server.
Nuestro escenario será sobre "Ubuntu server 10.04", tanto en host remoto como en el Servidor Nagios. Versión de Nagios es 3.2.1.

Empezamos!!!!

- Instalación en el host remoto

1. Tenemos que crear el usuario "nagios" y el grupo "nagios", para ello lo hacemos todo desde "root".

#sudo -s
#adduser nagios (password, por ejemplo "nagios")
#adduser nagios nagios (para añadirlo al grupo, sabemos que cuando creamos un usuario, automáticamente se crea el grupo).

2. Descargarmos los plugins de nagios. Creamos un directorio donde descargaremos el plugin e instalaremos.

#mkdir /opt/nagios/nrpe
#cd /opt/nagios/nrpe
root@remote:/opt/nagios/nrpe#wget http://sourceforge.net/projects/nagiosplug/files/nagiosplug/1.4.15/nagios-plugins-1.4.15.tar.gz/download
root@remote:/opt/nagios/nrpe#tar xzf nagios-plugins-1.4.15.tar.gz
root@remote:/opt/nagios/nrpe#cd /nagios-plugins.1.4.15
root@remote:/opt/nagios/nrpe/nagios-plugins.1.4.15#./configure
root@remote:/opt/nagios/nrpe/nagios-plugins.1.4.15#make
root@remote:/opt/nagios/nrpe/nagios-plugins.1.4.15#make install

3. Instalamos "Xinetd" para el Dameon del nuevo servicio NRPE

root@remote:/opt/nagios/nrpe/nagios-plugins.1.4.15#apt-get install xinetd

4. Descargamos e instalamos el plugin "NRPE".

root@remote:/opt/nagios/nrpe#wget  http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz/download
root@remote:/opt/nagios/nrpe#tar xzf nrpe-2.12.tar.gz
root@remote:/opt/nagios/nrpe#cd nrpe-2.12
root@remote:/opt/nagios/nrpe/nrpe-2.12#./configure
root@remote:/opt/nagios/nrpe/nrpe-2.12#make all
root@remote:/opt/nagios/nrpe/nrpe-2.12#make install-plugin
root@remote:/opt/nagios/nrpe/nrpe-2.12#make install -daemon
root@remote:/opt/nagios/nrpe/nrpe-2.12#make install-daemon-config
root@remote:/opt/nagios/nrpe/nrpe-2.12#make install-xinetd

Editamos en ficheros "/etc/xinetd.d/nrpe" para añadir la ip del servidor nagios en el apartado "only_from".

# default: on
# description: NRPE (Nagios Remote Plugin Executor)
service nrpe
{
        flags           = REUSE
        socket_type     = stream
        port            = 5666
        wait            = no
        user            = nagios
        group           = nagios
        server          = /usr/local/nagios/bin/nrpe
        server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = ip_servidor_nagios
}



Agregamos la sentencia NRPE en el fichero "/etc/services", lo podemos añadir al final del fichero

# Local services
nrpe            5666/tcp                        #NRPE Nagios

Reiniciamos el servicio Xinietd

root@remote:/opt/nagios/nrpe/nrpe-2.12#service xinietd restart


Para podemos modificar los elementos a monitorizar debemos de editar el fichero : "/usr/local/nagios/etc/nrpe.cfg".

- INSTALACIÓN DEL PLUGIN NRPE EN EL SERVIDOR NAGIOS

1. Descargar e instalar el plugin nrpe.

#mkdir /opt/nagios/nrpe
#cd /opt/nagios/nrpe
root@servernagios:/opt/nagios/nrpe#wget  http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz/download
root@servernagios:/opt/nagios/nrpe#tar xzf nrpe-2.12.tar.gz
root@servernagios:/opt/nagios/nrpe#cd nrpe-2.12
root@servernagios:/opt/nagios/nrpe/nrpe-2.12#./configure
root@servernagios:/opt/nagios/nrpe/nrpe-2.12#make all
root@servernagios:/opt/nagios/nrpe/nrpe-2.12#make install-plugin

Para hacer una prueba de testeo, así:

# sudo /usr/local/nagios/libexec/check_nrpe -H ip_remote_host

Nos devolverá (si todo ha ido bien ;)) la versión del plugin NRPE.

NRPE v2.12

2. Tenemos que añadir el command para el plugin nrpe, para ello editamos el fichero "/usr/local/nagios/etc/commads.cfg" y escribimos al final:

# Plugin nrpe para remote host linux
define command{
        command_name  check_nrpe
        command_line  $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }


3. Para definir los objetos a monitorizar debemos de añadirlos en nuestro fichero de configuración de nagios. Cada persona es un mundo, por lo tanto cada uno de nosotros tenemos una instalación de nagios enfocada a nuestras necesidades, por lo tanto debemos de añadir los objetos en el fichero que tengamos para ello. Por lo tanto un ejemplo, sería en el fichero "localhost.cfg".


#SERVICIOS REMOTE HOST LINUX###################

define service {
        use                                generic-service
        host_name                    remote
        service_description      CPU Load
        check_command          check_nrpe!check_load
        }

define service{
        use                                generic-service
        host_name                    remote
        service_description      Current Users
        check_command           check_nrpe!check_users
         }

define service{
        use                                generic-service
        host_name                    remote
        service_description      /dev/sda1 Free Space
        check_command           check_nrpe!check_hda1
        }

define service{
        use                                generic-service
        host_name                     remote
       service_description        Total Processes
        check_command           check_nrpe!check_total_procs
}

define service{
        use                                 generic-service
        host_name                     remote
        service_description       Zombie Processes
        check_command           check_nrpe!check_zombie_procs
        }



Podemos añadir muchos más, os he dejado unos ejemplos

Para comprobar que todo está OK, debemos de chequear la configuración de nagios, para ello ejecutamos:

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

Devolverá un "chorro" de info, pero lo más importante tenemos que tener el resultado en "0".

Checking for circular paths between hosts...
Checking for circular host and service dependencies...
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Despúes reinciamos nagios

#sudo /etc/init.d/nagios restart

Ya hemos finalizado la instalación del plugin nrpe, tanto en el host remoto como en el servidor.

Os invito a buscar más info para customizar la monitorización de nuestro host remoto ( un ejemplo, la menoria...etc) con nuestro servidor NAGIOS

Hasta la próxima!!

9 comentarios:

  1. en este apartado Descargamos e instalamos el plugin "NRPE".
    cuando pongo ./configure me sale un error:

    checking for SSL libraries... configure: error: Cannot find ssl libraries

    alguna ayuda??

    ResponderEliminar
  2. Hola,

    Te recomiendo que abras el fichero "Readme" del cliente "nrpe" y veas las dependencias que necesitas.

    Gracias por seguir el blog!

    ResponderEliminar
  3. No es estoy seguro si en Debian/Ubuntu el paquete para solucionar la dependencia SSL es openssl-devel o libssl-devel pero cuestión de tirar de apt/aptitude y hacer pruebas..

    ResponderEliminar
  4. Buenas,

    Hemos instalado tanto en el server como en el host a monitorizar el NRPE y ahora desde Nagios nos muestra el sieuigente mensaje.


    CPU Load

    CRITICAL 2012-05-22 16:32:17 0d 2h 35m 50s 4/4 (Return code of 127 is out of bounds - plugin may be missing)

    ¿Alguna idea de por qué ha fallado el proceso de CPU Load? Decir que únicamente hemos definido ese servicio para probar el cliente NRPE.

    ResponderEliminar
  5. http://neipool.blogspot.com/2012/05/instalacion-de-agente-nrpe-de-nagios.html

    ResponderEliminar
  6. Hola Dinamizadores,

    Perdón por responderte tan tarde, lo siento. Es muy importante que compruebes la versión de los clientes de los agentes, empieza por ahí.

    Muchas gracias por seguir el Blog...:)

    ResponderEliminar
  7. hola, tengo error al instalar los plugins de nagios,
    make[3]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/gl»
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/gl»
    Making all in tap
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/tap»
    make[2]: No se hace nada para «all».
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/tap»
    Making all in lib
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib»
    Making all in .
    make[3]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib»
    make[3]: No se hace nada para «all-am».
    make[3]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib»
    Making all in tests
    make[3]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib/tests»
    make[3]: No se hace nada para «all».
    make[3]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib/tests»
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/lib»
    Making all in plugins
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins»
    make[2]: No se hace nada para «all».
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins»
    Making all in plugins-scripts
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins-scripts»
    make[2]: No se hace nada para «all».
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins-scripts»
    Making all in plugins-root
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins-root»
    make[2]: No se hace nada para «all».
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/plugins-root»
    Making all in po
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/po»
    make[2]: No se hace nada para «all».
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15/po»
    make[2]: se ingresa al directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15»
    make[2]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15»
    make[1]: se sale del directorio «/opt/nagios/nrpe/nagios-plugins-1.4.15»

    que puedo hacer en este caso?,de antemano gracias. saludos!!

    ResponderEliminar
    Respuestas
    1. Hola,

      Perdona por el retraso. Puedes solucionarlo de las siguiente manera:

      - Comprueba que tienes la última versión de los plugins y tener instaladas todas las dependecias de los mismos.

      - Prueba el paquete .deb de los plugins.

      Te recomiendo que lo instales de la forma que estás siguiendo pero comprueba las dependencias.

      Gracias por seguir el Blog...;)

      Eliminar
  8. Buenas,

    En el apartado 2 de la configuracion en el servicod nagios el archivo commands.cfg esta en /usr/local/nagios/etc/objects/commands.cfg

    No es una queja, es una aportacion... jeje Suerte

    ResponderEliminar