Cómo instalar Nagios en RHEL, Rocky y AlmaLinux
Nagios es una increíble herramienta de monitoreo de código abierto, que proporciona un entorno de monitoreo más completo para vigilar siempre todas sus máquinas/redes ya sea que esté en su centro de datos o simplemente sus pequeños laboratorios.
Con Nagios, puedes monitorear tus hosts remotos y sus servicios de forma remota en una sola ventana. Muestra advertencias e indica si algo sale mal en sus servidores, lo que eventualmente nos ayuda a detectar algunos problemas antes de que ocurran. Nos ayuda a reducir el tiempo de inactividad y las pérdidas comerciales.
Recientemente, Nagios lanzó su última versión Nagios Core 4.4.9 y su última versión estable de Complementos de Nagios 2.3.3 el 4 de octubre de 2022. .
Este artículo tiene como objetivo guiarlo con instrucciones sencillas sobre cómo instalar y configurar la última versión de Nagios Core desde el código fuente (tarball) en RHEL y distribuciones basadas en RHEL como CentOS Stream., Rocky Linux, AlmaLinux y Fedora.
En 30 minutos estará monitoreando su máquina local, sin ningún procedimiento de instalación avanzado, solo una instalación básica que funcionará 100% en la mayoría de los servidores Linux actuales.
Nota: Las instrucciones de instalación que se muestran aquí están escritas en base a la distribución de Linux RHEL 9.0.
Instalación de Nagios Core y el complemento Nagios en Linux
Si sigue estas instrucciones correctamente, obtendrá la siguiente información.
- Nagios y sus complementos se instalarán en el directorio /usr/local/nagios.
- Nagios se configurará para monitorear algunos servicios de su máquina local (Uso del disco, Carga de CPU, Usuarios actuales, Procesos totales , etc.)
- La interfaz web de Nagios estará disponible en http://localhost/nagios
Paso 1: instale los paquetes Apache y PHP
Necesitamos instalar Apache, PHP y algunas bibliotecas como gcc, glibc, glibc-common. , y las bibliotecas GD y sus bibliotecas de desarrollo antes de instalar Nagios con el código fuente. Y para ello podemos utilizar el instalador del paquete yum.
yum install -y httpd httpd-tools php gcc glibc glibc-common gd gd-devel make net-snmp
Paso 2: crear usuario y grupo de Nagios
Cree un nuevo usuario nagios usando el comando useradd y la cuenta de grupo nagcmd y establezca una contraseña.
[root@tecmint]# useradd nagios
[root@tecmint]# groupadd nagcmd
A continuación, agregue el usuario nagios y el usuario apache al grupo nagcmd usando el comando usermod.
[root@tecmint]# usermod -G nagcmd nagios
[root@tecmint]# usermod -G nagcmd apache
Paso 3: descargue Nagios Core y el complemento Nagios
Crea un directorio para tu instalación de Nagios y todas sus descargas futuras.
[root@tecmint]# mkdir /root/nagios
[root@tecmint]# cd /root/nagios
Ahora descargue los últimos paquetes de Nagios Core y Nagios Plugins con el comando wget.
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.9.tar.gz
wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
Paso 4: extraiga los complementos de Nagios Core y Nagios
Necesitamos extraer los paquetes descargados con el comando tar de la siguiente manera.
tar -xf nagios-4.4.9.tar.gz
tar -xf nagios-plugins-2.3.3.tar.gz
Cuando extraiga estos archivos comprimidos, aparecerán dos carpetas nuevas en ese directorio.
ls -l
total 13804
drwxrwxr-x 21 root root 4096 Nov 17 02:22 nagios-4.4.9
-rw-r--r-- 1 root root 11339450 Nov 17 03:08 nagios-4.4.9.tar.gz
drwxr-xr-x 15 root root 4096 Mar 11 2020 nagios-plugins-2.3.3
-rw-r--r-- 1 root root 2782610 Mar 11 2020 nagios-plugins-2.3.3.tar.gz
Paso 5: Instalar y configurar Nagios Core
Ahora, primero, configuraremos Nagios Core y para hacerlo debemos ir al directorio Nagios y ejecutar el archivo de configuración. Si todo va bien, mostrará el resultado en el final como salida de muestra.
cd nagios-4.4.9/
./configure --with-command-group=nagcmd
Creating sample config files in sample-config/ ...
*** Configuration summary for nagios 4.4.9 2022-11-16 ***:
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 the result directory: /usr/local/nagios/var/spool/checkresults
Init directory: /lib/systemd/system
Apache conf.d directory: /etc/httpd/conf.d
Mail program: /usr/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):
Review the options above for accuracy. If they look okay,
type 'make all' to compile the main program and CGIs.
Después de la configuración, necesitamos compilar e instalar todos los binarios con los comandos make all y make install. instalará todas las bibliotecas necesarias en su máquina y podremos continuar.
make all
make install
*** Main program, CGIs and HTML files installed ***
You can continue with installing Nagios as follows (type 'make'
without any arguments for a list of all possible options):
make install-init
- This installs the init script in /lib/systemd/system
make install-commandmode
- This installs and configures permissions on the
directory for holding the external command file
make install-config
- This installs sample config files in /usr/local/nagios/etc
make[1]: Leaving directory '/root/nagios/nagios-4.4.9'
El siguiente comando instalará los scripts de inicio para Nagios.
make install-init
Para que Nagios funcione desde la línea de comandos necesitamos instalar command-mode.
make install-commandmode
A continuación, instale archivos de muestra de Nagios, ejecute el siguiente comando.
make install-config
/usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc
/usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc/objects
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/nagios.cfg /usr/local/nagios/etc/nagios.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/cgi.cfg /usr/local/nagios/etc/cgi.cfg
/usr/bin/install -c -b -m 660 -o nagios -g nagios sample-config/resource.cfg /usr/local/nagios/etc/resource.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/templates.cfg /usr/local/nagios/etc/objects/templates.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/commands.cfg /usr/local/nagios/etc/objects/commands.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/contacts.cfg /usr/local/nagios/etc/objects/contacts.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/timeperiods.cfg /usr/local/nagios/etc/objects/timeperiods.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/localhost.cfg /usr/local/nagios/etc/objects/localhost.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/windows.cfg /usr/local/nagios/etc/objects/windows.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/printer.cfg /usr/local/nagios/etc/objects/printer.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/switch.cfg /usr/local/nagios/etc/objects/switch.cfg
*** Config files installed ***
Remember, these are *SAMPLE* config files. You'll need to read
the documentation for more information on how to actually define
services, hosts, etc. to fit your particular needs.
Paso 6: Personalizando la configuración de Nagios
Abra el archivo “contacts.cfg” con el editor que elija y configure la dirección de correo electrónico asociada con la definición de contacto de nagiosadmin para recibir alertas por correo electrónico.
vi /usr/local/nagios/etc/objects/contacts.cfg
###############################################################################
#
CONTACTS
#
###############################################################################
Just one contact defined by default - the Nagios admin (that's you)
This contact definition inherits a lot of default values from the
'generic-contact' template which is defined elsewhere.
define contact {
contact_name nagiosadmin ; Short name of user
use generic-contact ; Inherit default values from generic-contact template (defined above)
alias Nagios Admin ; Full name of user
email [email ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******
}
Paso 7: Instalar y configurar la interfaz web para Nagios
Hemos terminado con todas las configuraciones en el backend, ahora configuraremos la Interfaz Web para Nagios con el siguiente comando. El siguiente comando configurará la interfaz web para Nagios y se creará un usuario administrador web "nagiosadmin".
make install-webconf
En este paso, crearemos una contraseña para "nagiosadmin". Después de ejecutar este comando, proporcione una contraseña dos veces y guárdela porque esta contraseña se utilizará cuando inicie sesión en la interfaz web de Nagios.
htpasswd -s -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin
Reinicie Apache para que la nueva configuración surta efecto.
systemctl restart httpd
Paso 8: compilar e instalar el complemento Nagios
vaya allí y configúrelo e instálelo como se indica a continuación.
cd /root/nagios
cd nagios-plugins-2.3.3
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install
Paso 9: verificar los archivos de configuración de Nagios
Ahora hemos terminado con la configuración de Nagios y es hora de verificarla, para ello inserte el siguiente comando. Si todo va bien, aparecerá un resultado similar al siguiente.
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nagios Core 4.4.9
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 2022-11-16
License: GPL
Website: https://www.nagios.org
Reading configuration data...
Read main config file okay...
Read object config files okay...
Running pre-flight check on configuration data...
Checking objects...
Checked 8 services.
Checked 1 hosts.
Checked 1 host groups.
Checked 0 service groups.
Checked 1 contacts.
Checked 1 contact groups.
Checked 24 commands.
Checked 5 time periods.
Checked 0 host escalations.
Checked 0 service escalations.
Checking for circular paths...
Checked 1 hosts
Checked 0 service dependencies
Checked 0 host dependencies
Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check
Paso 10: agregue los servicios de Nagios al inicio del sistema
Para que Nagios funcione durante los reinicios, debemos habilitar nagios y httpd al iniciar el sistema usando el comando systemctl.
systemctl enable nagios
systemctl enable httpd
A continuación, reinicie Nagios para que la nueva configuración surta efecto.
systemctl restart nagios
Paso 11: Permitir Nagios Web en el Firewall
Para acceder a la interfaz web de Nagios, debe abrir los puertos de Apache ejecutando los siguientes comandos:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
Paso 12: inicie sesión en la interfaz web de Nagios
Su Nagios está listo para funcionar, ábralo en su navegador con “http://Su-dirección-IP-de-servidor/nagios” o “http://FQDN/nagios” y proporcione el nombre de usuario “nagiosadmin” y la contraseña.
Panel web de Nagios
Vista de anfitrión
Descripción general de Nagios
Vista de servicios
Vista de proceso
¡Felicidades! Has instalado y configurado con éxito Nagios y sus Complementos. Acaba de comenzar su viaje hacia el monitoreo.
Actualización de Nagios 3.x a Nagios Core 4.x
Si ya estás ejecutando una versión anterior de Nagios, puedes actualizarla en cualquier momento. Para hacerlo, solo necesita descargar el archivo tar fuente de nagios más reciente y configurarlo como se muestra a continuación.
systemctl stop nagios
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.9.tar.gz
tar -zxvf nagios-4.4.9.tar.gz
cd nagios-4.4.9
./configure
make all
make install
systemctl start nagios
Conclusión
Eso es todo por ahora, en mis próximos artículos le mostraré cómo agregar Linux, Windows, Impresoras, Switches, <y Dispositivos al servidor de monitoreo de Nagios.
Si tiene algún problema durante la instalación, contáctenos a través de comentarios. Hasta entonces, estad atentos y conectados a Tecmint y no olvidéis darnos Me gusta y Compartir para difundirlo.
Lea también:
- Cómo agregar un host Linux al servidor de monitoreo de Nagios
- Cómo agregar un host de Windows al servidor de monitoreo de Nagios