Cómo instalar el software de monitorización Icinga 2 en Ubuntu 18.04 LTS
Icinga 2 es una herramienta de monitorización gratuita y de código abierto que puede utilizarse para monitorizar varios servidores o centros de datos enteros desde un único sistema de monitorización. Icinga2 comprobará la disponibilidad de recursos como la red, la actualización del sistema y los servicios.
En este tutorial, te muestro cómo instalar y configurar la herramienta de monitorización Icinga 2 utilizando un servidor Ubuntu 18.04 LTS. Instalaremos Icinga 2 desde el repositorio oficial y luego configuraremos el icingaweb2, la interfaz web ligera y extensible de la herramienta de monitorización icinga2.
Requisitos previos
Para esta guía, instalaremos el icinga2 y el icingaweb2 utilizando el servidor Ubuntu 18.04 con 2GB de memoria RAM. Si se trata de grandes despliegues, puedes usar más que eso.
¿Qué vamos a hacer?
- Instalar icinga2 y los plugins de monitorización
- Instalar y configurar la base de datos MySQL
- Instalar y configurar icingaweb2
- Post-Instalación de icinga2 e icingaweb2
Paso 1 – Instalar Icinga 2 y los plugins de monitorización de Nagios
En primer lugar, instalaremos el icinga2 y los plugins de monitorización en el servidor. Instalaremos el icinga2 desde su repositorio oficial, e instalaremos las Herramientas de Monitorización desde el repositorio de Ubuntu.
Antes de continuar, vamos a añadir la clave de icinga2 al sistema.
curl https://packages.icinga.com/icinga.key | apt-key add -
A continuación, añade el repositorio de icinga2 creando el archivo repo llamado ‘icinga.list’ en el directorio ‘/etc/apt/sources.list.d’.
cd /etc/apt/sources.list.d/
vim icinga2.list
Pega la configuración del repositorio a continuación.
deb http://packages.icinga.com/ubuntu icinga-bionic main
deb-src http://packages.icinga.com/ubuntu icinga-bionic main
Guarda y cierra.
Ahora actualiza el repositorio e instala los paquetes de icinga2 y Herramientas de Monitorización utilizando los comandos apt que aparecen a continuación.
sudo apt update
sudo apt install icinga2 monitoring-plugins
Una vez completada la instalación, inicia el servicio icinga2 y añádelo al tiempo de arranque.
systemctl start icinga2
systemctl enable icinga2
Como resultado, los paquetes de icinga2 se han instalado en el sistema.
Paso 2 – Instalar y configurar MySQL para Icinga
Ahora instalaremos y configuraremos la base de datos MySQL para nuestra instalación de icinga2.
Instala los paquetes de MySQL Server con el siguiente comando.
sudo apt install mysql-server mysql-client
Una vez completada la instalación, inicia el servicio MySQL y añádelo al arranque.
systemctl start mysql
systemctl enable mysql
Ahora tenemos que configurar la contraseña de root de MySQL. Ejecuta el siguiente comando.
mysql_secure_installation
Se ha creado la contraseña del usuario raíz de MySQL.
Ahora vamos a configurar el icinga2 para que utilice la base de datos MySQL. Para ello, necesitamos instalar el ‘Módulo IDO’ para icinga2.
Instala el módulo ‘icinga2-ido-mysql’ con el siguiente comando.
sudo apt install icinga2-ido-mysql
Durante la instalación, se te preguntará por el módulo IDO de icinga2 como se indica a continuación.
Habilita el módulo Icinga ido-mysql, elige‘OK’.
Ahora se te pedirá que crees la base de datos Icinga2 utilizando el dbconfig-common, elige ‘Sí‘.
Ahora escribe la contraseña para la base de datos icinga2.
Repite la contraseña.
Y la instalación del módulo icinga2-ido-mysql está completa. Ahora activa el módulo ‘ido-mysql’ y reinicia el servicio icinga2.
icinga2 feature enable ido-mysql
systemctl restart icinga2
El icinga2 está ahora configurado con la base de datos MySQL.
Paso 3 – Instalar y configurar la interfaz web de Icinga 2
En este paso, instalaremos y configuraremos la interfaz web ligera para icinga2 llamada ‘icingaweb2’. Por defecto, la instalación te permitirá instalar todos los paquetes necesarios como el servidor web Apache2 y los paquetes PHP.
Instala icingaweb2, la herramienta de línea de comandos de Icinga y el paquete PHP GD con el siguiente comando.
sudo apt install icingaweb2 icingacli php-gd -y
Una vez completada la instalación, ve al directorio ‘/etc/php/7.2/apach2/’ y edita el archivo php.ini utilizando el editor vim.
cd /etc/php/7.2/apache2/
vim php.ini
Descomenta la línea de la zona horaria y cambia el valor por el tuyo.
date.timezone = Asia/Jakarta
Guarda y cierra, y luego reinicia el servicio Apache2.
systemctl restart apache2
La configuración básica de icingaweb2 está completada.
A continuación, generaremos el token de configuración de icinga2 y crearemos la base de datos para icingaweb2.
Genera el token de configuración de icinga2 utilizando el comando icingacli como se indica a continuación.
icingacli setup token create
Copia el token de configuración en tu nota.
The newly generated setup token is: 7f963d9ed5a35665
Después, crearemos una nueva base de datos MySQL y un usuario para icingaweb2. Accede al shell de MySQL utilizando el comando mysql que aparece a continuación.
mysql -u root -p
Ahora crea una nueva base de datos y un usuario llamado ‘icingaweb2’ y concede al usuario la base de datos ejecutando las siguientes consultas MySQL.
create database icingaweb2;
grant all privileges on icingaweb2.* to icingaweb2@localhost identified by 'icingaweb2-password';
flush privileges;
quit;
Como resultado, se ha creado el token de instalación de icinga2 y la base de datos y el usuario de MySQL para la instalación de icinga2 e icingaweb2.
Paso 4 – Post-Instalación de Icinga 2 e Icinga Web 2
Abre tu navegador web y escribe la dirección IP del servidor como se indica a continuación. Sustituye la IP por la de tu servidor.
http://10.5.5.20/icingaweb2/setup
Pega el código del token de configuración en la casilla y haz clic en el botón «Siguiente».
Ahora tienes que elegir el módulo de Icinga para tu instalación, deja el módulo de «Monitorización» y haz clic en «Siguiente».
Después, el Icinga comprobará el entorno para su instalación. Asegúrate de que todos los módulos necesarios están en estado verde, excepto los ‘Módulos PostgreSQL’, y luego haz clic en ‘Siguiente’.
Ahora tienes que elegir la autenticación para acceder al icingaweb2, elige ‘Base de datos’ y haz clic en ‘Siguiente’.
Introduce todos los detalles de la base de datos para el ‘icingaweb2’ y haz clic en ‘Validar configuración’ para probar. Una vez que se haya realizado con éxito, haz clic en el botón ‘Siguiente’.
Ahora, para la autenticación del backend, elige el ‘icingaweb2’ y haz clic en ‘Siguiente’.
Escribe el admin y la contraseña de icingaweb2 y vuelve a hacer clic en «Siguiente».
En la configuración de la aplicación, déjala por defecto y haz clic en «Siguiente».
Confirma toda la configuración y haz clic en «Siguiente».
Y obtendrás la página de bienvenida a icingaweb2. Haz clic en ‘Siguiente’ de nuevo para configurar el backend de monitorización.
Establece el nombre del Backend como ‘icinga2’ con el tipo ‘IDO’, y luego haz clic en ‘Siguiente’.
Ahora tienes que configurar el recurso backend IDO de MySQL para la aplicación icinga2. Escribe los detalles de la base de datos para icinga2 y haz clic en «Validar configuración». Una vez que se haya realizado con éxito, haz clic en el botón ‘Siguiente’.
Para el ‘Transporte de comandos’, elige el ‘Archivo de comandos local’ y déjalo por defecto. Luego haz clic en «Siguiente».
Y para la Seguridad de la Monitorización, déjala por defecto y haz clic en «Siguiente».
Confirma toda la configuración y haz clic en el botón «Finalizar».
Ahora que las instalaciones de Icinga 2 e Icinga web 2 están completadas, haz clic en el botón ‘Iniciar sesión en Icinga Web 2’ y serás redirigido a la página de inicio de sesión.
Escribe el usuario que has configurado en la parte superior y haz clic en el botón ‘Iniciar sesión’.
Escribe el usuario que has configurado en la parte superior y haz clic en el botón ‘Iniciar sesión’.
Y finalmente, la instalación y configuración de icinga2 e icingaweb2 en el servidor Ubuntu 18.04 se ha completado con éxito.