Habilitar Nagiosgraph para Nagios 4 en Centos 8
Llevamos unos días hablando de Nagios 4, tanto sobre su instalación, configuración y diferentes opciones adicionales, como añadirle gráficas MRTG o las herramientas NDOUtils. Pues bien, siguiendo con esta senda, vemos como habilitar el módulo Nagiosgraph.
¿Qué es Nagiosgraph?
Como seguramente ya sabrás por defecto Nagios Core no incluye gráficas. Esto lo podemos solventar con el módulo Nagiosgraph, un complemento muy útil, que amplia la funcionalidad de Nagios Core y muestra gráficos históricos. Analizando los datos de salida y rendimiento recopilados por Nagios y los almacena en archivos RRD (Round Robin Data). Nagiosgraph crea gráficos y genera páginas HTML con informe gráficos de estos datos.
Por lo que, al igual que en las otras ocasiones, vamos a volver a utilizar nuestro VPS creado en nuestro proveedor de confianza Clouding.io, con un sistema operativo Centos 8.
Instalar Nagiosgraph en Centos 8
Cuento con que ya tenéis instalado Nagios 4 en vuestro servidor, si no es así, aquí os explico como:
Instalar Nagios 4 en RHEL 8 y Centos 8
Una vez hecho esto debemos añadir una serie de paquetes necesarios imprescindibles para el buen funcionamiento de este módulo gráfico.
sudo dnf install perl-GD php-gd rrdtool-perl rrdtool perl-CGI perl-Time-HiRes
Además, para evitar problemas con los módulos de PERL, realizamos estos pasos:
sudo dnf install perl-CPAN sudo cpan Nagios::Config
Y ya podemos descargar el código de este complemento.
cd /home/davidochobits #en mi caso wget https://sourceforge.net/projects/nagiosgraph/files/nagiosgraph/1.5.2/nagiosgraph-1.5.2.tar.gz
Descomprimimos y ejecutamos los scripts encargados de revisar que nuestro sistema operativo cumple con los requisitos del producto.
tar xvf nagiosgraph-1.5.2.tar.gz sudo su - cd /home/davidochobits/nagiosgraph-1.5.2 ./install.pl --check-prereq ./install.pl --layout overlay --prefix /usr/local/nagios
Durante la instalación debemos configurar las rutas de la siguiente manera, de esta manera el instalador se encargará de la mayoría de la configuración.
En la parte de requisitos podéis ver la salida en mi servidor:
[root@servnagios nagiosgraph-1.5.2]# ./install.pl --check-prereq checking required PERL modules Carp...1.42 CGI...4.38 Data::Dumper...2.167 Digest::MD5...2.55 File::Basename...2.85 File::Find...1.34 MIME::Base64...3.15 POSIX...1.76 RRDs...1.6999 Time::HiRes...1.9758 checking optional PERL modules GD...2.71 Nagios::Config...36 checking nagios installation found nagios exectuable at /usr/local/nagios/bin/nagios checking web server installation found apache executable at /usr/sbin/httpd
En la las instalación mis contestaciones han sido estas:
Destination directory (prefix)? [/usr/local/nagios] Location of configuration files (etc-dir)? [/usr/local/nagios/etc/nagiosgraph] Location of executables? [/usr/local/nagios/libexec] Location of CGI scripts? [/usr/local/nagios/sbin] Location of documentation (doc-dir)? [/usr/local/nagios/docs/nagiosgraph] Location of examples? [/usr/local/nagios/docs/nagiosgraph/examples] Location of CSS and JavaScript files? [/usr/local/nagios/share] Location of utilities? [/usr/local/nagios/docs/nagiosgraph/util] Location of state files (var-dir)? [/var/nagios] /usr/local/nagios/var Location of RRD files? [/usr/local/nagios/var/rrd] Location of log files (log-dir)? [/var/nagios] /usr/local/nagios/var Path of log file? [/usr/local/nagios/var/nagiosgraph.log] Path of CGI log file? [/usr/local/nagios/var/nagiosgraph-cgi.log] Base URL? [/nagios] URL of CGI scripts? [/nagios/cgi-bin] URL of CSS file? [/nagios/nagiosgraph.css] URL of JavaScript file? [/nagios/nagiosgraph.js] URL of Nagios CGI scripts? [/nagios/cgi-bin] Path of Nagios performance data file? [/tmp/perfdata.log] /usr/local/nagios/var/service-perfdata.log username or userid of Nagios user? [nagios] username or userid of web server user? [apache] Modify the Nagios configuration? [n] Modify the Apache configuration? [n]
Además modificamos el fichero de configuración de Nagios ubicado en /usr/local/nagios/etc/nagios.cfg
y todo lo referido a las opciones de rendimiento. Además establecemos los siguientes parámetros para permitir que Nagios mantenga el historial de los datos de rendimiento.
# process nagios performance data using nagiosgraph process_performance_data=1 service_perfdata_file=/usr/local/nagios/var/service-perfdata.log service_perfdata_file_template=$LASTSERVICECHECK$||$HOSTNAME$||$SERVICEDESC$||$SERVICEOUTPUT$||$SERVICEPERFDATA$ service_perfdata_file_mode=a service_perfdata_file_processing_interval=30 service_perfdata_file_processing_command=process-service-perfdata-for-nagiosgraph
Guardamos y comprobamos que la configuración es correcta y no tiene errores:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Editamos el fichero de configuración de los comandos, ubicado en /usr/local/nagios/etc/objects/commands.cfg
y añadimos:
define command { command_name process-service-perfdata-for-nagiosgraph command_line /usr/local/nagios/libexec/insert.pl }
Y volvemos a comprobar la configuración:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Reiniciamos Apache y Nagios
sudo systemctl restart nagios sudo systemctl restart httpd
En mi caso, si accedemos a la siguiente URL veremos las opciones de configuración: http://servnagios.bitsandlinux.com/nagios/cgi-bin/showconfig.cgi
Como se observa en la imagen:
Para visualizar las gráficas editamos el fichero /usr/local/nagios/etc/objects/templates.cfg
y añadimos:
define service { name graphed-service action_url /nagios/cgi-bin/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$' onMouseOver='showGraphPopup(this)' onMouseOut='hideGraphPopup()' rel='/nagiosgraph/cgi-bin/showgraph.cgi?host=$HOSTNAME$&service=$SERVICEDESC$&period=week&rrdopts=-w+450+-j register 0 }
Además tenemos que agregar el parámetro de servicio graficado, para cada monitor que queramos. Aquí tenéis un ejemplo:
define service{ use local-service,graphed-service ;Añadimos el nombre de la plantilla host_name localhost service_description HTTP check_command check_http notifications_enabled 0 }
Y reiniciamos Nagios
sudo systemctl restart nagios
Y con esto estaría todo. Ya podemos ver el botón de las gráficas en el monitor.
Y se hacemos click con el ratón sobre el botón de la gráfica, se abrirá un nueva pestaña en el navegador, con este resultado:
Desde este menú se puede escoger por ejemplo el periodo de tiempo a graficar.
Y esto es todo, espero que esta información os sea de utilidad en algún momento.
Fuentes consultadas
Centlinux.com – Install Nagiosgraph for Nagios Core on CentOS 7
Comentarios Recientes