Proxmox con Pulse: supervisión centralizada vía Docker

En entornos de virtualización donde Proxmox es la columna vertebral de la infraestructura, tener una visión centralizada y en tiempo real del estado de los nodos se vuelve crucial. Aunque Proxmox proporciona su propia interfaz de gestión bastante robusta, en entornos con múltiples servidores puede no ser suficiente para mantener un control claro y unificado.

Aquí es donde entra Pulse, una solución ligera pero efectiva para monitorizar múltiples nodos Proxmox desde un solo punto. En este post, te explicamos qué es Pulse, cómo desplegarlo en Docker y qué beneficios te aporta para gestionar tus servidores virtualizados con mayor eficacia.

¿Qué es Pulse?

Pulse es un servidor de monitorización específicamente diseñado para Proxmox. Permite visualizar en tiempo real el estado de tus nodos y máquinas virtuales, utilizando la API de Proxmox y ofreciendo un dashboard limpio y accesible. La herramienta es especialmente útil en escenarios donde se manejan múltiples clústeres o instancias independientes de Proxmox, permitiendo centralizar la información crítica en un solo panel.

Pulse no busca reemplazar la consola de Proxmox, sino complementarla. Su foco está en ofrecer una visualización sencilla y directa de métricas clave, lo cual lo convierte en un aliado ideal para operaciones IT y administradores de sistemas.

Pulse monitorizacion Proxmox

Cómo desplegar Pulse usando Docker

Para desplegar Pulse de forma rápida y eficiente, utilizaremos un contenedor Docker. Esto garantiza un entorno aislado, fácilmente actualizable y replicable.

A continuación, te presentamos un ejemplo de archivo docker-compose.yml que puedes utilizar para levantar el servicio:

version: '3.8'

services:
  pulse-server:
    image: rcourtman/pulse:latest
    container_name: pulse
    restart: unless-stopped
    ports:
      - "7235:7655"
    environment:
      - PROXMOX_HOST=$PROXMOX_HOST
      - PROXMOX_TOKEN_ID=$PROXMOX_TOKEN_ID
      - PROXMOX_TOKEN_SECRET=$PROXMOX_TOKEN_SECRET
      - PROXMOX_HOST_2=$PROXMOX_HOST_2 # Variable secundaria para un segundo proxmox
      - PROXMOX_TOKEN_ID_2=$PROXMOX_TOKEN_ID_2 # Variable secundaria para un segundo proxmox
      - PROXMOX_TOKEN_SECRET_2=$PROXMOX_TOKEN_SECRET_2 # Variable secundaria para un segundo proxmox
    volumes:
      - pulseproxmoxdata:/data

volumes:
  pulseproxmoxdata:
    external: true

Explicación de la configuración

  • Imagen: Se utiliza la imagen oficial rcourtman/pulse:latest, siempre actualizada con las últimas mejoras del proyecto.
  • Puertos: Se expone el puerto 7655 del contenedor a 7235 en el host. Puedes ajustar este valor según tus necesidades.
  • Variables de entorno: Aquí se definen los accesos a las APIs de tus servidores Proxmox mediante tokens. Es fundamental que estos datos estén correctamente configurados en tu entorno (.env) para asegurar la autenticación y la conexión al backend de Proxmox.
  • Volumen persistente: Se monta un volumen externo llamado pulseproxmoxdata para almacenar los datos del contenedor de forma persistente.

Este diseño permite gestionar hasta dos instancias de Proxmox simultáneamente, pero puedes escalarlo fácilmente añadiendo más variables para nuevos hosts si lo necesitas.

¿De dónde obtengo las variables de entorno?

Para que Pulse se conecte a tus servidores Proxmox, necesitas tres valores clave por cada nodo:

  • PROXMOX_HOST: la dirección del nodo.
  • PROXMOX_TOKEN_ID: el nombre del token que vas a usar.
  • PROXMOX_TOKEN_SECRET: la clave secreta de ese token.

A continuación, te explicamos cómo obtener cada uno de ellos desde la interfaz de Proxmox.

1. Obtener PROXMOX_HOST

Este es simplemente el dominio o la IP de tu nodo Proxmox.

  • Si accedes a Proxmox vía navegador en https://proxmox1.midominio.local:8006, entonces:
    • PROXMOX_HOST=proxmox1.midominio.local
  • También puedes usar una IP, por ejemplo:
    • PROXMOX_HOST=192.168.1.10

2. Crear un Token de API

  1. Accede al panel de administración de Proxmox.
  2. En el panel lateral izquierdo, ve a:
    • DatacenterPermissionsAPI Tokens
  3. Haz clic en «Add» para crear un nuevo token.
  4. En el formulario:
    • User: selecciona el usuario que va a usar el token. Por ejemplo: root@pam
    • Token ID: este será el valor de PROXMOX_TOKEN_ID (por ejemplo, pulse-token)
    • Expire: opcional, pero recomendado si quieres limitar su validez.
    • Marca la opción «Privilege separation» si quieres una gestión más segura.
  5. Al crear el token, se te mostrará el Token Secret una única vez. Guárdalo de inmediato.
PROXMOX_TOKEN_ID=root@pam!pulse-token
PROXMOX_TOKEN_SECRET=5a1bc3ff-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

3. Asignar permisos al token

Para que el token tenga acceso a consultar los recursos, es necesario otorgarle permisos adecuados.

  1. Ve a:
    • DatacenterPermissions
  2. Haz clic en «Add»«User Permission»
  3. En el campo Path, puedes poner / para que tenga acceso global o limitarlo a ciertos recursos.
  4. En User/Token, selecciona root@pam!pulse-token
  5. En Role, elige PVEAuditor (recomendado para visualización segura).

Esto garantiza que Pulse podrá leer los datos necesarios sin otorgar permisos de administración completa.

Conclusión

Pulse se posiciona como una herramienta clave para quienes buscan mantener bajo control una infraestructura basada en Proxmox de manera sencilla, rápida y con un coste operativo mínimo. Su integración vía Docker facilita tanto la implementación como el mantenimiento, y su compatibilidad con múltiples nodos lo hace ideal para entornos corporativos o proyectos personales más complejos.

Con Pulse, pasas de una gestión distribuida a una centralizada, ganando eficiencia operativa, claridad visual y control absoluto sobre tus recursos virtuales. Si gestionas varios nodos Proxmox y quieres tener visibilidad en tiempo real sin complicaciones, definitivamente deberías considerar desplegar Pulse en tu stack.

Scroll al inicio
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

WordPress Appliance - Powered by TurnKey Linux