Nagvis en Naemon. Instalación y configuración.

En este artículo seguimos probando otro de los programas habituales en toda instalación de Nagios para ver si funciona correctamente con Naemon. Probaremos la configuración de Nagvis usando como backend el Livestatus de Naemon (fork del original de cmk preparado para Nagios Core 4 / Naemon). No es tan obvio que vaya a funcionar correctamente pero ya te adelanto que parece que si… 🙂
Para las pruebas seguiremos con la configuración ya realizada en el artículo previo “PN4Nagios en Naemon”, para ir teniendo todos los componentes…
Ya puestos a probar instalaremos la versión más actual de Nagvis en este momento (aún en beta), la 1.8b2.

Instalación

Instalamos como siempre unos paquetes necesarios para Nagvis. (Esto es para Redhat / CentOS, en Debian los paquetes a instalar serán los mismos que los mencionados en este artículo):

yum install php-mbstring php-pdo yum graphviz

Descomprimos e instalamos:

tar zxfv nagvis-1.8b2.tar.gz
cd nagvis-1.8b2
./install.sh

Se marcan las opciones relevantes para la instalación:

+------------------------------------------------------------------------------+
| Welcome to NagVis Installer 1.8b2 |
+------------------------------------------------------------------------------+
| This script is built to facilitate the NagVis installation and update |
| procedure for you. The installer has been tested on the following systems: |
| - Debian, since Etch (4.0) |
| - Ubuntu, since Hardy (8.04) |
| - SuSE Linux Enterprise Server 10 and 11 |
| |
| Similar distributions to the ones mentioned above should work as well. |
| That (hopefully) includes RedHat, Fedora, CentOS, OpenSuSE |
| |
| If you experience any problems using these or other distributions, please |
| report that to the NagVis team. |
+------------------------------------------------------------------------------+
| Do you want to proceed? [y]:
+------------------------------------------------------------------------------+
| Starting installation of NagVis 1.8b2 |
+------------------------------------------------------------------------------+
| OS : CentOS release 6.5 (Final) |
| |
+--- Checking for tools -------------------------------------------------------+
| Using packet manager /bin/rpm found |
| |
+--- Checking paths -----------------------------------------------------------+
| Please enter the path to the nagios base directory [/usr/local/nagios]: /etc/naemon
| nagios path /etc/naemon found |
| Please enter the path to NagVis base [/usr/local/nagvis]:
| |
+--- Checking prerequisites ---------------------------------------------------+
| PHP 5.3 found |
| PHP Module: gd php found |
| PHP Module: mbstring php found |
| PHP Module: gettext compiled_in found |
| PHP Module: session compiled_in found |
| PHP Module: xml compiled_in found |
| PHP Module: pdo php found |
| Apache mod_php found |
| Checking Backends. (Available: mklivestatus,ndo2db,ido2db,merlinmy) |
| Do you want to use backend mklivestatus? [y]:
Do you want to use backend ndo2db? [n]:
| Do you want to use backend ido2db? [n]:
| Do you want to use backend merlinmy? [n]:
| Livestatus Socket (/etc/naemon/var/rw/live) MISSING |
| Valid socket formats are: tcp:127.0.0.1:7668 or unix:/path/to/live |
| Please enter your MKLivestatus socket: unix:/var/cache/naemon/live | PHP Module: sockets compiled_in found |
| Graphviz 2.26 found |
| Graphviz Module dot 2.26.0 found |
| Graphviz Module neato 2.26.0 found |
| Graphviz Module twopi 2.26.0 found |
| Graphviz Module circo 2.26.0 found |
| Graphviz Module fdp 2.26.0 found |
| SQLite 3.6 found |
| |
+--- Trying to detect Apache settings -----------------------------------------+
| Please enter the web path to NagVis [/nagvis]:
| Please enter the name of the web-server user [apache]:
| Please enter the name of the web-server group [apache]:
| create Apache config file [y]: y
| |
…
…
+------------------------------------------------------------------------------+
| Installation complete |
| |
| You can safely remove this source directory. |
| |
| For later update/upgrade you may use this command to have a faster update: |
| ./install.sh -n /etc/naemon -p /usr/local/nagvis -l "unix:/var/cache/naemon/live" -b mklivestatus -u apache -g apache -w /etc/httpd/conf.d -a y
| |
| What to do next? |
| - Read the documentation |
| - Maybe you want to edit the main configuration file? |
| Its location is: /usr/local/nagvis/etc/nagvis.ini.php |
| - Configure NagVis via browser |
| <http://localhost/nagvis/config.php> |
| - Initial admin credentials: |
| Username: admin |
| Password: admin |

Reiniciamos nuestro apache:

service httpd restart

Configuración

Nos conectamos a la página:
http://server_nameon/nagvis/config.php      (admin / admin)

1.- Establecer el backend por defecto a nuestro check_mk livestatus para que obtenga los datos de nuestro Naemon. Nagvis trae un montón de mapas de demo con un backend demo que muestra equipos de no se donde (puedes bucear en los ficheros de configuración de /usr/local/nagvis/etc si quieres saber más).

nagvis_naemon_backend

 

2.- Crear un mapa.
Usaremos de fondo uno existente “demo-host” para una prueba rápida.

nagvis_naemon_new_map

3.- En el  menú “Open” abrimos nuestro mapa. En “Edit Map” podemos añadir un host, servicio , grupos,… soltando la cruz en el punto que queramos.

nagvis_naemon_new_host

Al seleccionar el listbox de host_name nos aparecerá ya nuestros Hosts de Naemon ya que  el backend que usa el mapa es el backend por defecto “live_1” que hemos configurado previamente.

nagvis_naemon_new_service_localhost

 

Nos aparecerá ya en nuestro mapa el punto que representa nuestro servicio (y su estado). Al pasar el ratón por este nos dará información.

nagvis_naemon_new_service_localhost_show

Ajustes

Ajuste 1: Cuando pinchamos en un icono de Nagvis para que nos mande al servicio correspondiente en Naemon, en la URL pone nagios. Para resolverlo debemos editar el fichero /usr/local/nagvis/etc/nagvis.ini.php y cambiar (y eliminar comentario) la variable “htmlcgi” de la sección [paths]:

; Path definitions
[paths]
htmlcgi="/naemon/cgi-bin"

Ajuste 2: Para que Nagvis use mejor el mismo fichero de autentificación de usuarios que el entorno de Naemon (Thruk) editamos el fichero /etc/naemon/nagvis.conf y descomentamos y modificamos las líneas:

AuthName "Naemon Access"
AuthType Basic
AuthUserFile /etc/naemon/htpasswd
Require valid-user

Conclusión

Como vemos, a falta de hacerle pruebas más intensivas, parece que Nagvis funciona con normalidad con el Livestatus de Naemon. Buenas noticias. En mi opinión el éxito de Naemon está en que las aplicaciones habituales en torno a Nagios Core funcionen correctamente con este y que las que no lo hacen las adapten cuanto antes. Conscientes de esto parece que han hecho un buen trabajo para facilitar la conexión de estas con el Livestatus.

Bajate el artículo en PDF.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Comment moderation is enabled. Your comment may take some time to appear.