Grafana

Datasource que habilita la posibilidad de obtener tus métricas de PandoraFMS en Grafana.

Introducción

Este plugin tiene como finalidad poder integrar en Grafana tus datos de PandoraFMS, pudiendo visualizar estos datos o crear alertado con ellos.

El plugin es un componente React que hace uso de los Dashboard de Grafana para visualizar los datos, y requiere el uso de una extension API en Pandora para poder hacer uso de ellos.

Prerrequisitos

Para ver mas detalles sobre los requisitos y poder configurar la integración vea el apartado  "Configurar la integración".

Configurar la integración

1) Añadiendo la extensión de Pandora FMS

Lo primero de todo será cargar en nuestra consola de Pandora FMS la extensión que nos permitirá obtener los datos a representar en los dashboard de Grafana.

Para ello, solo tendremos que descargar el paquete ZIP que podemos encontrar en nuestra librería y subirlo a la consola de Pandora FMS desde el menú: Admin tools > Extension manager > Extension uploader:

imagen.png

Es importante no marcar la opción de “Upload enterprise extension”.

En definitiva, lo que estamos haciendo es ubicar el contenido del fichero ZIP en el directorio de extensiones de la consola de Pandora FMS, lo que resultará en la creación del directorio:

/var/www/html/pandora_console/extensions/grafana

Si, como en nuestro caso, la instalación parte de una ISO de Pandora FMS, también será necesario modificar un parámetro de la configuración del servidor Apache.

Basta con editar el fichero /etc/httpd/conf/httpd.conf, y poner el parámetro “AllowOverride none” como “AllowOverride All”, dentro de las directivas del bloque ‘<directory “/var/www/html”>’ ya que es donde se ubica nuestra consola de Pandora FMS. Tendría que quedar por lo tanto de esta manera:

<Directory "/var/www/html">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.4/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All

#
# Controls who can get stuff from this server.
#
Require all granted
</Directory>

También añadiremos un parámetro en la configuración de PHP. Tendremos que agregar la siguiente línea al final del fichero /etc/php.ini:

serialize_precision = -1

Y para que estos cambios tengan efecto se debe reiniciar el servicio de Apache:

systemctl restart httpd

2) Cargando el plugin de Pandora FMS para Grafana

Tendremos que subir al servidor de Grafana el fichero ZIP con todos los ficheros del plugin y ubicarlo en la ruta “/var/lib/grafana/plugins”. Descomprimimos el fichero en esta ruta con el comando “unzip” y reiniciamos el servicio de Grafana para que lo cargue:

cd /var/lib/grafana/plugins
unzip pandorafms_grafana_datasource.zip
service grafana-server restart

3) Configurando Pandora FMS como origen de datos de los dashboard de Grafana

Agregar las siguientes líneas al final del fichero de configuración de Grafana (/etc/grafana/grafana.ini):

[plugins]
allow_loading_unsigned_plugins = "pandorafms-pandorafmsgrafana-datasource"

Después de este cambio se deberá volver a reiniciar el servicio de Grafana mediante el siguiente comando:

service grafana-server restart

En este punto lo que tenemos que hacer es configurar el plugin subido en Grafana para que se conecte con la extensión cargada en Pandora FMS y nos permita usar sus datos en los dashboard de Grafana.

Tenemos que acceder en Grafana al menú “Configuration > Datasources” y hacer click en el botón “Add datasource”:

imagen.png

Nos aparecerán distintos plugins que podremos configurar, y en la parte inferior del listado veremos el plugin que acabamos de cargar para Pandora FMS. Hacemos click en él:

Esto nos llevará a un formulario donde solo necesitaremos rellenar 3 campos para la conexión con la extensión de Pandora FMS:

Con estos campos completados, podremos hacer click en el botón “Save & Test” para verificar el funcionamiento de nuestro nuevo origen de datos:

imagen.png

¿Qué pasa si no funciona correctamente? En configuración podríamos ver distintos errores, como por ejemplo:

Crea tu primer Dashboard

Primero tenemos que ir al menú “Create > Dashboard”, y en el panel que nos aparecerá hacer click en el botón “Add visualization”:

imagen.png

Esto nos llevará a un formulario donde, en el desplegable “Query”, elegiremos nuestro origen de datos de “Pandora FMS”. Esto hará que la parte inferior del formulario cambie y veamos una consulta para elegir un módulo del que mostrar los datos en el panel:

Y con esto ya tendríamos nuestros primeros datos de Pandora FMS en Grafana.

Podemos incluir más de una consulta en un mismo panel, lo que nos permite comparar los datos de distintos módulos:

imagen.png

Y también podemos añadir más paneles dentro de un mismo dashboard de Grafana, de modo que tengamos en una misma pantalla toda la información necesaria.

Crea tu primer alerta

Podremos crear una alerta desde el menu "Alert" , en la visualización del dashboard (una vez guardado el Dashboard).

imagen.png

En este menu deberemos ajustar unas cuantas reglas, para configurar nuestra alerta:

1 . Establecer el nombre de la regla de alerta.

imagen.png


2. Definir la consulta y la condición de alerta

imagen.png


3. Establecer el comportamiento de evaluación de alertas

imagen.png


4. Añadir anotaciones

imagen.png


5. Configurar notificaciones

imagen.png

Una vez configurada y guardada la alerta, podremos verla en el dashboard:

imagen.png