Añadir gráficas a Icinga2 con pnp4nagios
Hace un tiempo os hablé de Icinga2, un sistema de monitorización avanzado, que podía cumplir con todos las funcionalidades necesarias para una pequeña y mediana empresa, en lo que respecta a la monitorización de sistemas. Desde la publicación de dicho artículo ya pasado bastante tiempo, aún así todavía os puede servir como introducción, guía de instalación y primeros pasos, aunque la versión ya no es la misma. En la entrada de hoy os voy a enseñar como añadir gráficas, utilizando pnp4nagios. Herramienta que tal y como dice su nombre está pensada para Nagios pero que también puede servir perfectamente para Icinga2, que como sabéis es un fork del famoso sistema de monitorización.
Sobre pnp4nagios
Tal y como indican en su página web, se trata de un complemento que analiza los datos de rendimiento obtenidos por los plugins y los almacena en basos de datos RRD (Round Robin Databases)
Una de la prioridades del producto es facilitar su instalación y un mínimo de mantenimiento mientras esté en producción. Al desarrollarlo han utilizado los principales estándares.
Su documentación es muy completa y está traducida a diversos idiomas, entre los que se encuentra el castellano.
Plugin pnp para Icinga2
Para poder utilizar la herramienta primero debemos instalar y habilitar el módulo pnp para Icinga2. Su instalación no es nada complicada. Lo primero es irnos a su página web de GitHub y descargar el fichero zip. Pero antes de esto, debemos instalar pnp4nagios, esto lo haremos utilizando los repositorios de nuestra distribución, en este caso CentOS 7.
yum update
#Añadimos el repositorio epel, si no lo tenemos ya
yum install epel-release
yum install pnp4nagios
#Tambén habilitamos perfdata en icinga2
icinga2 feature enable perfdata
Ahora ya podemos descargar el fichero zip del módulo pnp. Una vez descargado lo movemos a la carpeta /usr/share/icingaweb2/modules, que es donde se guardan los ficheros de los módulos. Una vez hecho esto creamos una carpeta llamada pnp, y descomprimimos los ficheros en dicha ubicación.
En mi caso el listado de directorios es el siguiente:
[root@localhost modules]# pwd
/usr/share/icingaweb2/modules
[root@localhost modules]# ls -la
total 4
drwxr-xr-x. 9 root root 109 feb 25 12:44 .
drwxr-xr-x. 7 root root 80 feb 25 10:22 ..
drwxr-xr-x. 9 root root 216 feb 25 11:25 director
drwxr-xr-x. 6 root root 124 feb 25 10:22 doc
drwxr-xr-x. 7 root root 121 feb 25 10:22 monitoring
drwxr-xr-x. 4 root root 131 feb 25 12:54 pnp
drwxr-xr-x. 8 root root 4096 feb 25 13:02 reports
drwxr-xr-x. 5 root root 71 feb 25 10:22 setup
drwxr-xr-x. 5 root root 70 feb 25 10:22 translation
Ya tenemos esto listo, pero aún no hemos terminado. Para que todo funcione debemos modificar la configuración de pnp4nagios, su fichero de configuración principal es /etc/pnp4nagios/npcd.cfg, en esto fichero debemos hacer los siguientes cambios:
user = icinga
group = icinga
#perfdata_spool_dir = /var/spool/pnp4nagios
perfdata_spool_dir = /var/spool/icinga2/perfdata
Guardamos y salimos. Ahora modificamos el propietario y el grupo de la ubicación /var/lib/pnp4nagios, que es donde se guardarán los ficheros con los datos que utilizará el sistema para generar los gráficos.
cd /var/lib
chown -R icinga:icinga pnp4nagios
Ya he hablado antes del servicio esencial npcd, que debemos encender y añadir al arranque, de la siguiente manera:
cd /etc/init.d/
systemctl enable npcd
systemctl start npcd
systemctl restart icinga2
Abadonamos la consola y nos vamos a la web, en el apartado módulos, habilitamos el nuevo módulo pnp.
Al habilitarlo, ya tendríamos que poder visualizar las gráficas.
Se observa que junto a la información del servicio monitorizado aparece una miniatura de la gráfica, si marcamos sobre ella con el ratón la veremos con más detalle:
Por último os quería comentar que podemos acceder directamente al frontend de pnp4nagios, escribiendo el nombre en vez de icingaweb2, en el navegador. Tanto en dicho frontal como para visualizar las gráficas el sistema, nos pedirá una usuario y contraseña, para saber que usuario es o bien cambiarlo, debemos seguir los siguiente pasos. Primero de todo localizar el fichero de configuración del proyecto web de pnp4nagios, ubicado en el caso de CentOS /etc/httpd/conf.d/pnp4nagios.conf, en dicho fichero veremos la ruta del fichero de claves. Solo nos quedará buscarlo y ver el usuario por defecto. Por normal general suele ser como usuario ‘nagiosadmin’ y como contraseña ‘nagios’
Pues bien, esto es todo por hoy, espero que os haya parecido insteresante. Nos vamos leyendo.