Búsqueda de sitios web

Icinga: una herramienta de 'monitoreo de servidores Linux' de código abierto de próxima generación para RHEL/CentOS 7.0


Icinga es una moderna herramienta de monitoreo de código abierto que se originó a partir de una bifurcación de Nagios y ahora tiene dos ramas paralelas, Icinga 1 e Icinga. 2. Lo que hace esta herramienta no es muy diferente de Nagios debido al hecho de que todavía usa complementos y complementos de Nagios e incluso archivos de configuración para verificar y monitorear los servicios de red y los hosts, pero se pueden detectar algunas diferencias en las interfaces web, especialmente en Nueva interfaz web, capacidad de generación de informes y fácil desarrollo de complementos.

Este tema se concentrará en una instalación básica de la herramienta de monitoreo Icinga 1 desde archivos binarios en CentOS o RHEL 7, usando RepoForge (anteriormente conocido como RPMforge) repositorios para CentOS 6, con la interfaz web clásica del servidor web Apache y el uso de complementos de Nagios que se instalarán en su sistema.

Lea también: Instale la herramienta de monitoreo Nagios en RHEL/CentOS

Requisitos

Una instalación básica de LAMP en RHEL/CentOS 7.0 sin MySQL y PhpMyAdmin, pero con estos módulos PHP: php-cli
php-pear php-xmlrpc php-xsl php-pdo php-soap php-gd.

  1. Instalación de LAMP básica en RHEL/CentOS 7.0

Paso 1: Instalar la herramienta de monitoreo Icinga

1. Antes de continuar con la instalación de Icinga desde archivos binarios, agregue los repositorios RepoForge a su sistema emitiendo el siguiente comando, dependiendo de su máquina.

Para 86-64 bits
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Para 32 bits
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

2. Después de agregar los repositorios de RepoForge a su sistema, comience con la instalación básica de Icinga sin la interfaz web todavía, ejecutando el siguiente comando.

yum install icinga icinga-doc

3. El siguiente paso es intentar instalar la interfaz web de Icinga proporcionada por el paquete icinga-gui. Parece que por el momento este paquete tiene algunos problemas sin resolver con CentOS/RHEL 7 y generará algunos errores de verificación de transacciones, pero puede intentar instalar el paquete, tal vez mientras tanto el problema se resolvió.

Aún así, si recibe los mismos errores en su máquina que muestran las imágenes a continuación, utilice el siguiente método, como se describe con más detalle, para poder instalar la interfaz web de Icinga.

yum install icinga-gui

4. El procedimiento para instalar el paquete icinga-gui que proporciona la interfaz web es el siguiente. Primero descargue el paquete binario del sitio web de RepoForge usando el comando wget.

Para 86-64 bits
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.x86_64.rpm
Para 32 bits
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.i686.rpm

5. Después de que wget termine de descargar el paquete, cree un directorio llamado icinga-gui (puede elegir otro nombre si lo desea), mueva icinga-gui b> binario RPM a esa carpeta, ingrese a la carpeta y extraiga el contenido del paquete RPM emitiendo la siguiente serie de comandos.

mkdir icinga-gui
mv icinga-gui-* icinga-gui
cd icinga-gui
rpm2cpio icinga-gui-* | cpio -idmv

6. Ahora que tiene el paquete icinga-gui extraído, use el comando ls para visualizar el contenido de la carpeta; debería resultar en tres directorios nuevos: < b>etc, usr y var. Comience ejecutando una copia recursiva de los tres directorios resultantes en el diseño del sistema de archivos raíz de su sistema.

cp -r etc/* /etc/
cp -r usr/* /usr/
cp -r var/* /var/

Paso 2: Modificar el archivo de configuración de Icinga Apache y los permisos del sistema

7. Como se presenta en la introducción de este artículo, su sistema necesita tener el servidor HTTP Apache y PHP instalados para poder ejecutar la interfaz web Icinga.

Una vez que haya completado los pasos anteriores, debería aparecer un nuevo archivo de configuración en la ruta conf.d de Apache denominada icinga.conf. Para poder acceder a Icinga desde una ubicación remota desde el navegador, abra este archivo de configuración y reemplace todo su contenido con las siguientes configuraciones.

nano /etc/httpd/conf.d/icinga.conf

Asegúrese de reemplazar todo el contenido del archivo con lo siguiente.

ScriptAlias /icinga/cgi-bin "/usr/lib64/icinga/cgi"

<Directory "/usr/lib64/icinga/cgi">
 SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
    </IfModule>
 </Directory>

Alias /icinga "/usr/share/icinga/"

<Directory "/usr/share/icinga/">

 SSLRequireSSL
   Options None
   AllowOverride All
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
   </IfModule>
</Directory>

8. Después de haber editado el archivo de configuración httpd de Icinga, agregue el usuario del sistema Apache al grupo del sistema Icinga y use los siguientes permisos del sistema en las siguientes rutas del sistema.

usermod -aG icinga apache
chown -R icinga:icinga /var/spool/icinga/*
chgrp -R icinga /etc/icinga/*
chgrp -R icinga /usr/lib64/icinga/*
chgrp -R icinga /usr/share/icinga/*

9. Antes de iniciar el proceso del sistema Icinga y el servidor Apache, asegúrese de deshabilitar también el mecanismo de seguridad SELinux ejecutando el comando setenforce 0 y haga que los cambios sean permanentes. editando el archivo /etc/selinux/config, cambiando el contexto SELINUX de enforzado a deshabilitado.

nano /etc/selinux/config

Modifique la directiva SELINUX para que se vea así.

SELINUX=disabled

También puede utilizar el comando getenforce para ver el estado de SELinux.

10. Como último paso antes de iniciar el proceso de Icinga y la interfaz web, como medida de seguridad ahora puede modificar la contraseña de administrador de Icinga ejecutando el siguiente comando y luego iniciar ambos procesos.

htpasswd -cm /etc/icinga/passwd icingaadmin
systemctl start icinga
systemctl start httpd

Paso 3: instale los complementos de Nagios y acceda a la interfaz web de Icinga

11. Para comenzar a monitorear servicios públicos externos en hosts con Icinga, como HTTP, IMAP, POP3, SSH, DNS, ping ICMP y muchos otros servicios accesibles desde Internet o LAN, necesita instalar < b>Paquete Nagios Plugins proporcionado por los repositorios EPEL.

rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
yum install yum install nagios-plugins nagios-plugins-all

12. Para iniciar sesión en la Interfaz Web de Icinga, abra un navegador y apúntelo a la URL http://system_IP/icinga/. Utilice icingaadmin como nombre de usuario y la contraseña que cambió anteriormente y ahora podrá ver el estado de su sistema localhost.

¡Eso es todo! Ahora tienes Icinga básico con la interfaz web clásica, como Nagios, instalado y ejecutándose en tu sistema. Al utilizar los complementos de Nagios, ahora puede comenzar a agregar nuevos hosts y servicios externos para verificar y monitorear editando los archivos de configuración de Icinga ubicados en la ruta /etc/icinga/. Si necesita monitorear los servicios internos en hosts remotos, debe instalar un agente en hosts remotos como NRPE, NSClient++, SNMP para recopilar datos y enviarlos al proceso principal de Icinga.

Leer también

  1. Instale el complemento NRPE y supervise hosts Linux remotos
  2. Instale el agente NSClient++ y supervise hosts remotos de Windows