Icinga 2 es una herramienta de supervisión gratuita y de código abierto lo que lo ayuda a monitorear los recursos de la red, recibir una alerta sobre interrupciones y también poder generar los datos de rendimiento.
Icinga 2 es muy escalable y puede monitorear entornos pequeños o más grandes y complejos en varias ubicaciones.
Icinga 2 es compatible con todas las principales distribuciones, como Debian , Ubuntu , CentOS/RHEL , Fedora , openSUSE, SLES, Gentoo, FreeBSD y ArchLinux.
Esta publicación cubre brevemente la instalación y configuración de Icinga 2 en CentOS 7 / RHEL 7 .
Cambie al usuario root.
$ sudo su -
Los paquetes de Icinga dependen de otros paquetes (por ejemplo, complementos de Nagios) que se distribuyen en el repositorio de EPEL. Entonces, configure el repositorio EPEL en CentOS 7 / RHEL 7 .
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Además de esto, habilite los repositorios opcionales y extras en RHEL 7.
subscription-manager repos --enable rhel-7-server-optional-rpms subscription-manager repos --enable rhel-7-server-extras-rpms
Añadir repositorio Icinga 2
Icinga proporciona su repositorio oficial por sus paquetes. Entonces, instala el repositorio rpm
rpm --import https://packages.icinga.com/icinga.key yum install https://packages.icinga.com/epel/icinga-rpm-release-7-latest.noarch.rpm
Instalar Icinga 2
yum -y install icinga2
Para iniciar el servicio Icinga2, ejecute:
systemctl start icinga2
Para configurar el servicio Icinga 2 para que se inicie automáticamente al iniciar el sistema, ejecute:
systemctl enable icinga2
SELinux
Si el sistema tiene habilitado SELinux, instale el siguiente paquete para tener una política específica para Icinga 2.
yum install -y icinga2-selinux
Instalar complementos de Nagios
Sin los complementos, Icinga 2 no sabe cómo monitorear los servicios externos. Así que instala complementos de Nagios encima de Icinga 2.
yum -y install nagios-plugins-all
Configuración de la base de datos IDO MySQL
El módulo DB IDO para Icinga 2 se encarga de exportar toda la información de configuración y estado a la base de datos; necesitamos tener un servidor de base de datos para este requisito.
En la actualidad, se admiten MySQL y PostgreSQL. Aquí, usaremos el servidor MySQL como servidor de base de datos.
Si ya tiene un servidor MySQL en su sistema, puede omitir el siguiente paso.
yum -y install mariadb-server mariadb
Inicie y habilite el servicio MariaDB.
systemctl start mariadb systemctl enable mariadbRealice la configuración inicial de MariaDB mediante mysql_secure_installation dominio.
Instalar módulos IDO para MySQL
Ahora, instale los módulos IDO para MySQL usando el siguiente comando. Puede encontrar el paquete icinga2-ido-mysql en el repositorio de Icinga 2.
yum -y install icinga2-ido-mysql
Crear base de datos para Icinga 2
Inicie sesión en MariaDB usando el siguiente comando.
mysql -u root -p
Cree una base de datos para los módulos IDO, y esto se usa cuando configura la interfaz web Icinga2.
CREATE DATABASE icinga2; grant all privileges on icinga2.* to icinga2@localhost identified by 'icinga123'; FLUSH PRIVILEGES; quit
Después de crear la base de datos, debe importar el esquema IDO de Icinga 2 con el siguiente comando.
mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Habilitar módulo IDO MySQL
Hagamos una lista de las funciones disponibles y habilitadas en Icinga 2.
icinga2 feature list
Salida:
Disabled features: api command compatlog debuglog elasticsearch gelf graphite influxdb livestatus opentsdb perfdata statusdata syslog Enabled features: checker ido-mysql mainlog notification
Puedes ver que ido-mysql ya está habilitado.
Si ido-mysql no está habilitado en su sistema, luego habilítelo usando el siguiente comando.
icinga2 feature enable ido-mysql
Además, habilite el comando característica que ayuda a la interfaz web de Icinga y otros complementos de Icinga a enviar comandos a Icinga 2 a través de la tubería de comando externa.
icinga2 feature enable command
Configurar módulo IDO DB MySQL
Una vez que haya habilitado los módulos IDO en Icinga 2, Icinga 2 coloca el nuevo archivo de configuración en /etc/icinga2/features-enabled/ido-mysql.conf en el que debe actualizar las credenciales de la base de datos manualmente.
vi /etc/icinga2/features-enabled/ido-mysql.conf
Actualice el archivo anterior que se muestra a continuación.
user = "icinga2", password = "icinga123", host = "localhost", database = "icinga2"
Reinicie la instancia de Icinga 2 para que estas funciones habilitadas surtan efecto.
systemctl restart icinga2
Consulta el estado del servicio Icinga 2.
systemctl status icinga2
Salida:
● icinga2.service - Icinga host/service/network monitoring system Loaded: loaded (/usr/lib/systemd/system/icinga2.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2018-09-04 05:00:38 UTC; 23h ago Main PID: 11656 (icinga2) CGroup: /system.slice/icinga2.service ├─ 4520 /usr/lib64/nagios/plugins/check_ping -H 10.142.0.4 -c 5000,100% -w 3000,80% ├─ 4521 /usr/bin/ping -n -U -W 30 -c 5 10.142.0.4 ├─11656 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e └─11690 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e Sep 05 04:43:10 rhicinga2server icinga2[11656]: mail not found in $PATH. Consider installing it. Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:29 +0000] information/WorkQueue: #10 (Json...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:30 +0000] information/WorkQueue: #7 (IdoMy...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:38 +0000] information/ConfigObject: Dumpin...ate' Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #6 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #5 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:38 +0000] information/ConfigObject: Dumpin...ate'
Cortafuegos
Configure el firewall para permitir que los clientes de Icinga 2 se comuniquen con el servidor de Icinga 2.
firewall-cmd --permanent --add-port=5665/tcp firewall-cmd --reload
Configuraremos la interfaz web de Icinga 2 en nuestro próximo tutorial.
LEER :Cómo configurar Icinga Web 2 en CentOS 7/RHEL 7
Eso es todo.