Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control

Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control

por Raúl Unzué

¿Cómo se monitoriza un hypervisor Proxmox con Nagios?

Si tienes un hypervisor Proxmox en tu infraestructura y quieres asegurarte de que todo está funcionando correctamente, lo mejor que puedes hacer es integrarlo en Nagios para monitorizarlo. Con esto podrás recibir alertas si hay problemas con el hardware, la carga del sistema o el almacenamiento. 

Proxmox Virtual Environment es una solución de código abierto para la virtualización empresarial de la que ya hemos hablado en otras guías (por ejemplo, esta guía para saber cómo son los ficheros y las funciones que se usan para las máquinas virtuales).

Para monitorizar Proxmox, vamos a usar NRPE (Nagios Remote Plugin Executor), que es un pequeño agente que instalaremos en el servidor y nos permitirá obtener métricas desde Nagios.

Instalación agente NRPE en Proxmox

Para empezar, nos conectamos a nuestro servidor Proxmox por SSH y ejecutamos lo siguiente:

apt update && apt install nagios-nrpe-server nagios-plugins ifstat sysstat -y

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 1

Después, abrimos el archivo de configuración de NRPE:

nano /etc/nagios/nrpe.cfg

Buscamos la línea allowed_hosts y añadimos la IP de nuestro servidor Nagios. Quedaría de la siguiente manera:

allowed_hosts=127.0.0.1,192.168.2.155

(Donde 192.168.2.155 es la IP de nuestro servidor Nagios).

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 2

Configurar los chequeos en Proxmox

Ahora toca definir qué queremos monitorizar. Editamos nuevamente el archivo /etc/nagios/nrpe.cfg y al final añadimos los siguientes comandos:

  • command[check_load]=/usr/lib/nagios/plugins/check_load -w 5,4,3 -c 10,8,6
  • command[check_disk]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
  • command[check_cpu]=/usr/lib/nagios/plugins/check_cpu -w 80 -c 90
  • command[check_memory]=/usr/lib/nagios/plugins/check_memory -w 80 -c 90
  • command[check_proxmox_vms]=/usr/bin/pvesh get /cluster/resources --type vm | grep -c \"status\":\"running\"

¿Qué hacen estos comandos?

  • check_load -> Controla la carga del sistema.
  • check_disk -> Revisa el espacio en disco.
  • check_cpu -> Mide el uso del procesador.
  • check_memory -> Monitoriza el uso de RAM.
  • check_proxmox_vms -> Cuenta cuántas máquinas virtuales están encendidas.

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 3

Después de añadir estos comandos, reiniciamos el servicio NRPE para aplicar los cambios:

systemctl restart nagios-nrpe-server

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 4

Nos tendremos que asegurar que el puerto TCP 5666 está abierto entre nuestro servidor Nagios y Proxmox.

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 5

Podéis validarlo con un telnet desde el servidor Nagios:

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 6

Agregar Proxmox a Nagios

Ahora vamos a configurar Nagios para que empiece a recoger los datos de Proxmox.

En el servidor Nagios, creamos y editamos el archivo de configuración de hosts:

  • nano /etc/nagios4/objects/proxmox.cfg

Añadimos lo siguiente (donde 192.168.2.178 es la IP de tu servidor Proxmox).:

define host {

    use             linux-server

    host_name       proxmox-nuc

    alias           Hypervisor Proxmox

    address         192.168.2.178

    max_check_attempts   5

    check_period    24x7

    notification_interval 30

    notification_period   24x7

}

En el mismo fichero podemos agregar los chequeos necesarios:

define service {

    use                 generic-service

    host_name           Proxmox-Server

    service_description Carga del Servidor

    check_command       check_nrpe!check_load

}

define service {

    use                 generic-service

    host_name           Proxmox-Server

    service_description Espacio en Disco

    check_command       check_nrpe!check_disk

}

define service {

    use                 generic-service

    host_name           Proxmox-Server

    service_description Uso de CPU

    check_command       check_nrpe!check_cpu

}

define service {

    use                 generic-service

    host_name           Proxmox-Server

    service_description Uso de Memoria RAM

    check_command       check_nrpe!check_memory

}

define service {

    use                 generic-service

    host_name           Proxmox-Server

    service_description Máquinas Virtuales Activas

    check_command       check_nrpe!check_proxmox_vms

}

Guardamos y cerramos.

  • Ahora debemos editar el siguiente fichero /etc/nagios4/nagios.cfg

Referenciamos el fichero que acabamos de crear en "objects" para Proxmox agregando la línea de la siguiente forma:

cfg_file=/etc/nagios4/objects/proxmox.cfg

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 7

Verificación de configuraciones Nagios

Con todos los ficheros editados y guardamos validamos que no nos hemos equivocado en las configuraciones de la siguiente forma:

  • nagios4 -v /etc/nagios4/nagios.cfg

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 8

Si no hay errores, reiniciamos Nagios:

systemctl restart nagios4.service

systemctl status nagios4.service

Verificación en la interfaz Web de Nagios

  • Abre tu navegador y ve a:

http://IP_DE_NAGIOS/nagios4

  • Entra en la sección de Hosts y busca el servidor Proxmox.

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 9

  • En la pestaña de Services, verifica que los chequeos están en verde.

Geeknetic Cómo integrar Hypervisores Proxmox en Nagios para tenerlo todo bajo control 10

 

Monitorear Hypervisores Proxmox con Nagios sin Complicaciones

Integrar Proxmox en Nagios puede parecer complicado al principio, pero con la configuración correcta, puedes monitorear tu hypervisor ampliando los parámetros a monitorizar de una forma sencilla.

Desde la carga del servidor hasta el uso de CPU y RAM en máquinas virtuales, Nagios te da una visión clara de lo que pasa en tu infraestructura. Si queréis saber como avanzar en estos temas, podéis seguir la guía de instalación de Nagios.

Lo clave es asegurarte de que NRPE esté bien configurado, usar rutas completas en los comandos y revisar los permisos. Con paciencia y algunos ajustes, tendrás un sistema de monitoreo sólido y confiable. Así, cualquier problema en Proxmox lo detectarás antes de que cause dolores de cabeza.

Fin del Artículo. ¡Cuéntanos algo en los Comentarios!

Redactor del Artículo: Raúl Unzué

Raúl Unzué

Soy un apasionado de la virtualización con más de 20 años de experiencia, especializado en soluciones como VMware(premio vExpert y vExpert Pro desde 2013), Proxmox e Hyper-V. Durante mi carrera, he ayudado a empresas a optimizar sus infraestructuras TI mientras comparto mis conocimientos como redactor IT. Mi objetivo es traducir lo complejo en algo práctico y accesible, combinando teoría con experiencia real. Si te interesa la virtualización, las herramientas TI o simplemente aprender algo nuevo, espero ayudarte con mis artículos.