GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo monitorear sistemas Linux remotos con la herramienta de monitoreo Nagios

En el último artículo, discutimos la instalación del servidor Nagios en CentOS 8, CentOS 7, Ubuntu 18.04 / 16.04 y Debian10 / 9. Aquí, en esta publicación, agregaremos el host Linux a la herramienta de monitoreo de Nagios usando el complemento NRPE.

Supongo que tiene una configuración de Nagios que funciona, si no, use cualquiera de los enlaces a continuación y configure el servidor de Nagios.

Instalar servidor Nagios

LEER :Cómo instalar Nagios en CentOS 8 / RHEL 8

LEER :Cómo instalar Nagios en CentOS 7/RHEL 7

LEER :Cómo instalar Nagios en Ubuntu 18.04 y Ubuntu 16.04

LEER :Cómo instalar Nagios en Debian 10/9

Supervisión de sistemas Linux remotos con Nagios

En el sistema Linux remoto

El complemento Nagios Remote Plugin Executor (abreviado como NRPE) le permite monitorear aplicaciones y servicios que se ejecutan en hosts Linux / Windows remotos. Este complemento NRPE ayuda a Nagios a monitorear recursos locales como CPU, memoria, disco, intercambio, etc. del host remoto.

Instalar el complemento NRPE y los complementos de Nagios

CentOS/RHEL

Los complementos de NRPE Server y Nagios están disponibles en el repositorio de EPEL para CentOS/RHEL. Entonces, configure el repositorio EPEL de su sistema CentOS / RHEL.

### CentOS 8 / RHEL 8 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

### CentOS 7 / RHEL 7 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

### CentOS 6 / RHEL 6 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

Use el siguiente comando para instalar el complemento NRPE y los complementos de Nagios.

yum install -y nrpe nagios-plugins-all
Ubuntu/Debian

Use el siguiente comando para instalar el complemento NRPE y los complementos de Nagios.

sudo apt update

sudo apt install -y nagios-nrpe-server nagios-plugins

Configurar complemento NRPE

Modifique el archivo de configuración de NRPE para aceptar la conexión desde el servidor de Nagios. Edite el archivo /etc/nagios/nrpe.cfg.

### CentOS / RHEL ###

vi /etc/nagios/nrpe.cfg

### Ubuntu / Debian ###

sudo nano /etc/nagios/nrpe.cfg

Agregue la dirección IP de los servidores de Nagios, separada por comas como se muestra a continuación.

allowed_hosts=192.168.0.10

Configurar comprobaciones de Nagios

El archivo /etc/nagios/nrpe.cfg contiene los comandos básicos para comprobar los atributos (CPU, memoria, disco, etc. arquitectura) y servicios (HTTP, FTP, etc.) en hosts remotos.

La ruta a los complementos de Nagios puede cambiar según la arquitectura de su sistema operativo (i386 o x86_64).
CentOS/RHEL
vi /etc/nagios/nrpe.cfg

Las siguientes líneas de comando le permiten monitorear los usuarios registrados, la carga del sistema, el uso del sistema de archivos raíz, el uso de intercambio y el número total del proceso con la ayuda de los complementos de Nagios.

# COMMAND DEFINITIONS

...
...

command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_root]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_swap]=/usr/lib64/nagios/plugins/check_swap -w 20% -c 10%
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
Ubuntu/Debian
sudo nano /etc/nagios/nrpe.cfg

Las siguientes líneas de comando le permiten monitorear los usuarios registrados, la carga del sistema, el uso del sistema de archivos raíz, el uso de intercambio y el número total del proceso con la ayuda de los complementos de Nagios.

# COMMAND DEFINITIONS

...
...

command[check_users]=/usr/lib/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_swap]=/usr/lib/nagios/plugins/check_swap -w 20% -c 10%
command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -w 150 -c 200
En la definición de comando anterior, -w significa advertencia y -c significa crítico .

Comprobaciones de prueba de Nagios

Por ejemplo, ejecute el siguiente comando en otro terminal para ver el resultado de la verificación.

Ubuntu 18.04:

/usr/lib/nagios/plugins/check_procs -w 150 -c 200

Salida:

PROCS WARNING: 190 processes | procs=190;150;200;0;

El complemento de Nagios contará los procesos en ejecución y le advertirá si el recuento de procesos es superior a 150, o le informará de forma crítica si el recuento de procesos es superior a 200 y, al mismo tiempo, la salida indicará OK si el recuento es inferior. 150.

Puede ajustar el nivel de alerta según sus requisitos.

Cambie la advertencia a 200 y la crítica a 250 para fines de prueba. Ahora verá un mensaje de OK.

/usr/lib/nagios/plugins/check_procs -w 200 -c 250

Salida:

PROCS OK: 189 processes | procs=189;200;250;0;

Estas definiciones de comandos deben ingresarse en un archivo de plantilla en el host del servidor de Nagios para habilitar el monitoreo.

Reinicie el servicio NRPE.

### CentOS / RHEL ###

systemctl start nrpe

systemctl enable nrpe

### Ubuntu / Debian ### 

sudo systemctl restart nagios-nrpe-server

Cortafuegos

Configure el firewall para que el servidor Nagios pueda llegar al servidor NRPE que se ejecuta en un host Linux remoto. Ejecute estos comandos en una máquina Linux remota.

CortafuegosD
firewall-cmd --permanent --add-port=5666/tcp

firewall-cmd --reload
Tablas de IP
iptables -I INPUT -p tcp --dport 5666 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

iptables -I OUTPUT -p tcp --sport 5666 -m conntrack --ctstate ESTABLISHED -j ACCEPT

/etc/init.d/iptables save

En el servidor Nagios

Instalar complemento NRPE

Este complemento NRPE proporciona el complemento check_nrpe que se comunica con el servidor NRPE en máquinas remotas para verificar los servicios o recursos.

CentOS/RHEL

El complemento Nagios NRPE está disponible en el repositorio EPEL para CentOS / RHEL. Entonces, configure el repositorio EPEL de su sistema CentOS / RHEL.

### CentOS 8 / RHEL 8 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

### CentOS 7 / RHEL 7 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

### CentOS 6 / RHEL 6 ###

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

Use el siguiente comando para instalar el complemento NRPE en su máquina.

 yum -y install nagios-plugins-nrpe
Ubuntu / Debian

Use el siguiente comando para instalar el complemento NRPE en su máquina.

sudo apt install -y nagios-nrpe-plugin

Editar configuración

Edite el archivo de configuración de Nagios para incluir todos los archivos .cfg dentro del directorio /usr/local/nagios/etc/servers.

### CentOS / RHEL ###

vi /usr/local/nagios/etc/nagios.cfg

### Ubuntu / Debian ###

sudo nano /usr/local/nagios/etc/nagios.cfg

Agregue o descomente la siguiente línea.

cfg_dir=/usr/local/nagios/etc/servers

Cree un directorio de configuración.

### CentOS / RHEL ###

mkdir /usr/local/nagios/etc/servers

### Ubuntu / Debian ###

sudo mkdir /usr/local/nagios/etc/servers

Agregar definición de comando

Ahora es el momento de configurar el servidor de Nagios para monitorear la máquina cliente remota, y deberá crear una definición de comando en el archivo de configuración de objetos de Nagios para usar el complemento check_nrpe.

Abra el archivo commands.cfg.

CentOS/RHEL
vi /usr/local/nagios/etc/objects/commands.cfg

Agregue la siguiente definición de comando de Nagios al archivo.

# .check_nrpe. command definition
define command{
command_name check_nrpe
command_line /usr/lib64/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}
Ubuntu/Debian
sudo nano /usr/local/nagios/etc/objects/commands.cfg

Agregue la siguiente definición de comando de Nagios al archivo.

# .check_nrpe. command definition
define command{
command_name check_nrpe
command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}

Agregar un host Linux al servidor Nagios

Cree un archivo de configuración de cliente /usr/local/nagios/etc/servers/client.itzgeek.local.cfg para definir las definiciones de host y servicio del host Linux remoto.

### CentOS / RHEL ###

vi /usr/local/nagios/etc/servers/client.itzgeek.local.cfg

### Ubuntu / Debian ###

sudo nano /usr/local/nagios/etc/servers/client.itzgeek.local.cfg

Copie el contenido a continuación en el archivo anterior.

También puede utilizar la siguiente plantilla y modificarla según sus requisitos. La siguiente plantilla es para monitorear los usuarios registrados, la carga del sistema, el uso del disco (/ – partición), el intercambio y el proceso total.

define host{
                           
            use                     linux-server            
            host_name               client.itzgeek.local            
            alias                   client.itzgeek.local            
            address                 192.168.0.20
                                    
}                                   
                                    
define hostgroup{                   
                                    
            hostgroup_name          linux-server            
            alias                   Linux Servers            
            members                 client.itzgeek.local
}                                   
                                    
define service{                     
                                    
            use                     local-service            
            host_name               client.itzgeek.local            
            service_description     SWAP Uasge            
            check_command           check_nrpe!check_swap                          
                                    
}                                   
                                    
define service{                     
                                    
            use                     local-service            
            host_name               client.itzgeek.local            
            service_description     Root / Partition            
            check_command           check_nrpe!check_root                          
                                    
}                                   
                                    
define service{                     
                                    
            use                     local-service            
            host_name               client.itzgeek.local            
            service_description     Current Users            
            check_command           check_nrpe!check_users                         
                                    
}                                   
                                    
define service{                     
                                    
            use                     local-service            
            host_name               client.itzgeek.local            
            service_description     Total Processes            
            check_command           check_nrpe!check_total_procs                   
                                    
}                                   
                                    
define service{                     
                                    
            use                     local-service            
            host_name               client.itzgeek.local            
            service_description     Current Load            
            check_command           check_nrpe!check_load

}

Verifique Nagios para ver si hay errores.

### CentOS / RHEL ###

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

### Ubuntu / Debian ###

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Reinicie el servidor de Nagios.

### CentOS / RHEL ###

systemctl restart nagios

### Ubuntu / Debian ###

sudo systemctl restart nagios

Comprobar el seguimiento de Nagios

Vaya y consulte la interfaz web de Nagios para ver los nuevos servicios que acabamos de agregar.

En un minuto, debería comenzar a ver el estado en la página de servicios.

Conclusión

Eso es todo. Comparta sus opiniones en la sección de comentarios.


Cent OS
  1. Supervise su servidor Linux con Checkmk

  2. Cómo monitorear el sistema Linux con el comando Glances

  3. Comando SCP en Linux:cómo usarlo, con ejemplos

  4. Cómo monitorear la seguridad del servidor Linux con Osquery

  5. Cómo monitorear una máquina remota de Windows usando Nagios en Linux

Cómo monitorear sus servidores Linux con Checkmk

Cómo monitorear el rendimiento de Linux usando la herramienta systat

Cómo instalar la herramienta de monitoreo del sistema Gtop en Linux

Cómo monitorear una máquina Linux a través de Nagios

Cómo monitorear sus servidores Linux con Checkmk

Cómo monitorear hosts con la herramienta de monitoreo Linux Icinga