Añadir hosts a monitorizar en Icinga2

Tal y como vimos en el anterior apartado con Icinga2 podemos monitorizar hosts y servicios, igual que hacíamos con Nagios, con la ventaja de una interfaz web muy amigable, adaptada a los nuevos tiempos de la Web 2.0, utilizando Icinga Web. Hoy veremos como añadir hosts y servicios a monitorizar, además de añadir resaltado de sintaxis, adaptado a Icinga2, para el editor nano.

icinga-logo

Añadir resaltado de sintaxis

El resaltado de sintaxis nos ayudará a la hora de editar los ficheros de configuración, los pasos son bastantes simples, lo único que haremos es canviar los ficheros de configuración por defecto del editor, por lo que nos proporciona el programa.

Copiamos el fichero de configuración de nano, llamado .nanorc, a nuestra home:

  1. cp /etc/nanorc ~/.nanorc

Creamos el directorio /etc/nano

  1. mkdir -p /etc/nano

Y copiamos el fichero icinga2.nanorc al directorio:

cp /usr/share/icinga2-common/syntax/nano/icinga2.nanorc /etc/nano/

Incluimos la ubicación en el fichero de configuración ~/.nanorc :

  1. vim ~/.nanorc

Y añadimos:

  1. ## Icinga 2
  2. include "/etc/nano/icinga2.nanorc"

Podemos comprobar que efectivamente el resaltado es efectivo:

  1. nano /etc/icinga2/conf.d/templates.conf

La vista será la siguiente:

icinga-add-host-001

Añadiendo hosts y servicios

Una vez ya tenemos el editor nano con resaltado de sintaxis, podemos comenzar a trabajar. A medida que añadimos hosts también añadimos sus servicios:

  • Servicios de red (HTTP,HTTPS,SMTP,SNMP, SSH, etcétera)
  • Impresoras
  • Switches y Routers
  • Sensores de temperatura
  • Entre otros

A modo de ejemplo voy a añadir un servidor de mi red, donde tengo instalado un servicio de relay de correo, con un servicio POSTFIX, que también monitorizo con Nagios. Por lo que ya tiene el agente instalado. Para ver como instalarlo aquí, utilizando el plugin NRPE.

Tenemos que tener en cuenta que los ficheros de configuración que debemos modificar están ubicados en la carpeta /etc/icinga2/conf.d, y son:

  • hosts.conf , contiene los datos de nuestro «NodeName«, esto es, el servidor donde tenemos ubicado Icinga2, con los parámetros generales.
  • services.conf, en el fichero definimos los servicios a utilizar. Por defecto tiene configurados los del servidor.
  • users.conf, contiene los datos de los usuarios y sus direcciones de correo electrónico.
  • notificacions.conf, incluye las definiciones de las alertas.
  • command.conf, contiene la definición de los comandos.
  • groups.conf, definición de los grupos a utilizar, por defecto contiene dos, unos para los servidores Linux y otro para los Windows.
  • templates.conf, ejemplos de configuración de objetos.
  • downtimes.conf, definición de los tiempo con los que tienen que trabajar los servicios.
  • timeperiods.conf, aquí están definidos los tiempos de servicio, por ejemplo, por defecto trabajan con 24×7.
  • satellite.conf, incluye las plantillas por defecto para los clientes remotos.

Para añadir nuestro servidor, añadiremos las siguientes líneas al fichero ubicado en /etc/icinga2/conf.d/hosts.cfg

  1. nano /etc/icinga2/conf.d/hosts.conf

Y añadimos:

  1. object Host "ServidorPostfix" {
  2.   address = "192.168.nuestra.ip"
  3.   address6 = "::1"
  4.   vars.os = "Linux"
  5.   check_command = "hostalive"
  6. }

Se pueden controlar la mayoría de servicios, para ellos debemos instalar un cliente en host en cuestión.

Reiniciamos el servicio:

  1. service icinga2 restart
  2. #o bien:
  3. /etc/init.d/icinga2 restart

Con esto ya podemos ver al nuevo host en el panel web:

icinga-web-01

 

En próximas entregas veremos la forma de añadir más servicios a monitorizar.