Monitorización: Instalacion de Icinga con NagVis en Ubuntu

Para monitorizar los servidores, servicios y demás actividades, y presentarlo de una manera gráfica, hay una combinación explosiva que te permite tener resultados increíbles.

Se trata de utilizar Icinga (Nagios) con NagVis (para mostrar los resultados de Icinga en un panel) mediante ndomy como backend, que coge la información que pone IDOUtils en la BBDD. Me explico:

  1. Icinga busca o recibe la información
  2. IDOUtils la mete en una BBDD
  3. ndomy la pone a disposición
  4. NagVis la muestra en su frontend

Pues aquí va la instalación paso a paso en un Ubuntu 13.04:

Instala Icinga

  • su
  • apt-get install dbconfig-common
  • apt-get install python-software-properties
  • add-apt-repository ppa:formorer/icinga
  • apt-get update
  • apt-get install icinga icinga-idoutils mysql-server libdbd-mysql mysql-client

Ahora nos aparecen unas pantallas de configuración de MySQL si no estaba instalado, y de la BBDD icinga-idoutils. Apuntar la contraseña.

Probar que entra en http://192.168.1.2/icinga (introducir la IP del servidor) con usuario icingaadmin y el pass introducido.

Configura IDOUtils

  • nano /etc/icinga/modules/idoutils.cfg

Añade las siguientes líneas:

  • define module{
  •         module_name     idomod
  •         module_type     neb
  •         path            /usr/lib/icinga/idomod.so
  •         args            config_file=/etc/icinga/idomod.cfg
  •         }

Y continúa...

  • ln -s /usr/lib/icinga/idomod.so /usr/sbin/
  • nano /etc/default/icinga
  • Cambia la línea IDO2DB=no a IDO2DB=yes
  • /etc/init.d/ido2db start
  • /etc/init.d/icinga restart

Instala NagVis

  • apt-get install g++ make libc6-dev php-net-socket php5-sqlite sqlite3 graphviz
  • wget http://sourceforge.net/projects/nagvis/files/NagVis%201.7/nagvis-1.7.10.tar.gz
  • tar zxvf nagvis-1.7.10.tar.gz
  • cd nagvis-1.7.10
  • ./install.sh -p /usr/local/nagvis -b ido2db -u www-data -g www-data -w /etc/apache2/conf.d/ -a y -F

Configura NagVis con IDOUtils

  • nano /usr/local/nagvis/etc/nagvis.ini.php
  • Descomenta la línea base="/usr/local/nagvis/"
  • Descomenta la línea htmlbase="/nagvis"
  • Descomenta la línea htmlcgi="/nagios/cgi-bin", y cambia la ruta por esta "/cgi-bin/icinga"
  • Comenta la línea ;backendtype="mklivestatus"

Finalmente, configura el backend para que utilice IDOUtils

  • [backend_ndomy_1] ; type of backend - MUST be set
  • backendtype="ndomy"
  • dbname="icinga" 
  • dbuser="icinga-idoutils"
  • dbpass="icinga"  ;(la contraseña que has apuntado antes)
  • dbprefix="icinga_"

Más configuraciones: rotación. Para cambiar los conjuntos de rotación y la lista de mapas en rotación, revisar la sección "Rotation pool definitions" en este fichero (para más adelante).

Ahora reinicia el equipo, y disfruta:

  • http://192.168.1.2/icinga
  • http://192.168.1.2/nagvis

Rutas y comandos varios:

  • Configuraciones de objetos en icinga: /etc/icinga/objects/
  • Configuración de NagVis: /usr/local/nagvis/share/userfiles/
  • Chequear la configuración: /usr/sbin/icinga -v /etc/icinga/icinga.cfg
  • Recargar la configuración: /etc/init.d/icinga reload

Bibliografía