Nagios es uno de los más famosos sistemas de monitorización en las tecnologías de la información. Tiene una gran cantidad de plugins y una comunidad muy grande detrás.
Anteriormente instalamos proxmox en un mini-pc, puedes ver la entrada aquí. Aprovechando este mini-pc, vamos a crear un servidor web, una base de datos y paralelamente nagios captará la información que le envíe el agente.
En la actualidad, encontrarás gran cantidad de sistemas de monitorización, prácticamente casi todos se basan en una comunicación mediante un agente, que se debe instalar en cada servidor que queremos monitorizar.
Nagios es un sistema de monitorización de uso empresarial, aunque cuenta con una versión core y una web básica para poder desplegar una infraestructura de monitorización bastante completa además de eficiente.
Para empezar, partimos de que tenemos los dos servidores montados, el servidor web ya correctamente configurado. Instalamos el nagios-core en el servidor, lo podemos descargar mediante el siguiente comando:
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gz apt-get install sendmail apt-get install build-essential apt-get install unzip apt-get install apache2 apt-get install php a2enmod rewrite headers cgi
Habilitamos el siguiente mod de apache2. Una vez descargado lo descomprimimos con tar -xvf en la carpeta /usr/local/etc
root@nagios:/usr/local/etc/nagios# useradd nagios root@nagios:/usr/local/etc/nagios# groupadd nagcmd root@nagios:/usr/local/etc/nagios# usermod -a -G nagios,nagcmd www-data
Creamos el usuario grupos y los añadimos al usuario.
Una vez hecho esto ejecutamos el siguiente comando, nos debería dar una salida final igual a esta:
root@nagios: ./configure --with-nagios-group=nagios --with-command-group=nagcmd *** Configuration summary for nagios 4.3.4 2017-08-24 ***: General Options: ------------------------- Nagios executable: nagios Nagios user/group: nagios,nagios Command user/group: nagios,nagcmd Event Broker: yes Install ${prefix}: /usr/local/nagios Install ${includedir}: /usr/local/nagios/include/nagios Lock file: /run/nagios.lock Check result directory: ${prefix}/var/spool/checkresults Init directory: /etc/init.d Apache conf.d directory: /etc/apache2/sites-availables Mail program: /bin/mail Host OS: linux-gnu IOBroker Method: epoll Web Interface Options: ------------------------ HTML URL: http://localhost/nagios/ CGI URL: http://localhost/nagios/cgi-bin/ Traceroute (used by WAP): /usr/sbin/traceroute Review the options above for accuracy. If they look okay, type 'make all' to compile the main program and CGIs.
Ejecutamos los siguientes comandos en el orden indicado:
make all make install make install-init make install-config make install-commandmode make install-webconf cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/ chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Añadir el siguiente texto al fichero /etc/init.d/nagios
DESC=»Nagios»
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS=»-d /usr/local/nagios/etc/nagios.cfg»
PIDFILE=/usr/local/nagios/var/$NAME.lock
root@nagios:/etc/init.d# touch /usr/local/nagios/etc/htpasswd.users root@nagios:/etc/init.d# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin New password: Re-type new password: Adding password for user nagiosadmin update-rc.d nagios defaults
Nos solicitará la contraseña a poner, ahora solo queda instalar los plugins y copiarlos al directorio de nagios, lo podemos hacer rápidamente mediante el siguiente comando:
root@nagios: apt-get install nagios-plugins root@nagios: cp /usr/lib/nagios/plugins/check_* /usr/local/nagios/libexec
Si rebotamos la máquina, Nagios debería ser accesible desde la siguiente dirección: http://IP_DEL_SERVIDOR/nagios
Deberíamos ver un solo host, localhost, añadido al directorio y monitorizándose a si mismo. Toda la información en esta guía se ha seguido en la página oficial de nagios, puedes ver el manual aquí, hay pequeñas variaciones ya que mi sistema es Debian 9.
En la siguiente entrada añadiremos un host a nagios y crearemos servicios de monitorización personalizados.
No os lo perdáis.
¡Hasta la próxima!