Cómo instalar Prometheus y Node Exporter en Debian 12

Prometheus es una plataforma de monitorización y alerta de código abierto. Originalmente, Prometheus fue creado por Soundcloud en 2012. Desde entonces, el proyecto Prometheus, adoptado por algunas empresas famosas, se ha convertido en un proyecto mayor con desarrolladores y una comunidad muy activos. En 2016, el proyecto Prometheus se graduó en la Cloud Native Computing Foundation (CNCF).

Esta guía te mostrará cómo instalar Prometheus y Node Exporter en el servidor Debian 12.

Requisitos previos

Para empezar, asegúrate de que tienes lo siguiente:

  • Un servidor Debian 12.
  • Un usuario no root con privilegios de administrador sudo.

Conceptos básicos que debes conocer

Básicamente, Prometheus recopila datos y métricas a través de puntos finales HTTP de los servidores de destino y luego almacena todos los datos como series temporales. En Prometheus, los datos de las series temporales se identifican mediante el nombre de la métrica y pares clave/valor.

Prometheus proporciona flexibilidad mediante el Lenguaje de consulta de Prometheus (PromQL). Puedes utilizar PromQL para consultar la base de datos de series temporales de Prometheus.

En los servidores de destino, debes instalar la aplicación «exportador» que expone todos los datos y métricas a Prometheus. ‘Exportador de nodos’ es un exportador de uso común para supervisar máquinas Linux.

El exportador de nodos expone las métricas relacionadas con el hardware y el kernel de las máquinas Linux. Se presenta como un único archivo binario que expondrá las métricas de los extremos de los datos al servidor Prometheus.

Instalación de Prometheus y Node Exporter

Prometheus es un sistema de supervisión de código abierto para recopilar métricas de sistemas. Prometheus utiliza un exportador para recoger las métricas del sistema, como Node Exporter, que te permite recoger las métricas de tu sistema.

En la última versión de Debian, tanto Prometheus como Node Exporter están disponibles en el repositorio y pueden instalarse utilizando el gestor de paquetes APT.

En primer lugar, actualiza y refresca el índice de paquetes de Debian ejecutando el siguiente comando.

sudo apt update

actualizar repo

Ahora instala Prometheus y Node Exporter mediante el siguiente comando apt. El repositorio de Debian proporciona Prometheus 2.42.0 y Node Exporter 1.5.0.

sudo apt install prometheus prometheus-node-exporter

Escribe Y para proceder a la instalación.

instala prometheus y el exportador de nodos

Una vez finalizada la instalación, tanto Prometheus como Node Exporter se ejecutarán como un servicio systemd y se habilitarán automáticamente. Prometheus tendrá el servicio prometheus, y Node Exporter tendrá el servicio prometheus-node-exporter.

Verifica el servicio prometheus utilizando el siguiente comando.

sudo systemctl is-enabled prometheus
sudo systemctl status prometheus

La salida que se muestra a continuación revela que el servicio prometheus se está ejecutando y está habilitado. Y, por defecto, se está ejecutando en el puerto 9090.

verificar el servicio prometheus

Ahora verifica el servicio prometheus-node-exporter ejecutando el siguiente comando.

sudo systemctl is-enabled prometheus-node-exporter
sudo systemctl status prometheus-node-exporter

La salida mostrada será similar, lo que revela que el servicio prometheus-node-exporter se está ejecutando y está habilitado. El puerto por defecto para Node Exporter es 9100.

verificar el servicio exportador de nodos

A continuación, ejecuta el siguiente comando prometheus para verificar la versión de Prometheus.

prometheus --version

A continuación, comprueba la ruta binaria de promtool y su versión así. El promtool es una línea de comandos para gestionar el sistema de supervisión Prometheus.

which promtool
promtool --version

Según la salida mostrada, Prometheus y promtool 2.42.0 están instalados.

comprueba prometheus y promtool

Por último, verifica la ruta binaria del Exportador de Nodos prometheus-node-exporter y su versión utilizando el siguiente comando.

which prometheus-node-exporter
prometheus-node-exporter --version

La salida que se muestra a continuación confirma que Node Exporter 1. 5 está instalado.

comprobar la versión del exportador de nodos

Configurar Prometheus

Tras instalar Prometheus y Node Exporter, el siguiente paso será configurar Prometheus editando el archivo de configuración por defecto prometheus.yml que se encuentra en el directorio de configuración de prometheus /etc/prometheus.

Abre la configuración por defecto de Prometheus /etc/prometheus/prometheus.yml utilizando el siguiente comando del editor nano.

sudo nano /etc/prometheus/prometheus.yml

Dentro de la sección scrape_configs, añade un nuevo trabajo prometheus con el punto final de destino 192.168.10.15:9090, que es el propio servidor Prometheus.

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

# metrics_path defaults to ‘/metrics’
# scheme defaults to ‘http’.

static_configs:
– targets: [«192.168.10.15:9090»]

Guarda el archivo y sal del editor cuando hayas terminado.

Ahora ejecuta el siguiente comando systemctl para reiniciar el servicio prometheus y aplicar los cambios que has realizado.

sudo systemctl restart prometheus

Ahora inicia tu navegador web y visita tu instalación de Prometheus, por ejemplo http://192.168.10.15:9090. Si todo funciona correctamente, deberías ver el panel de control de Prometheus en el siguiente comando.

tablero prometheus

Haz clic en el menú Estado > Objetivos para obtener la lista de endpoints del sistema de monitorización objetivo. Deberías ver el prometheus del endpoint con el estado Arriba.

puntos finales de destino

Por último, también puedes verificar las métricas de Prometheus visitando la ruta URL /metrics, como http://192.168.10.15:9090/metrics. Deberías ver datos de métricas similares generados por Prometheus.

métricas prometheus

Añadir el exportador de nodos a Prometheus

Ahora que has configurado Prometheus, el siguiente paso es añadir Node Exporter a tu instalación de Prometheus. El Exportador de Nodos recopilará métricas de tu servidor. Para ello, debes completar lo siguiente:

  • Comprobar el estado del Exportador de Nodos: Así te asegurarás de que el Exportador de Nodos se está ejecutando antes de seguir adelante.
  • Añadir un nuevo trabajo a Prometheus: Esto te mostrará cómo añadir un sistema de monitorización de destino a Prometheus.

Ahora vamos a empezar.

Comprobar el estado del Exportador de Nodos

Antes de añadir Node Exporter a Prometheus, debes asegurarte de que Node Exporter se está ejecutando sin errores. Para ello, comprueba el estado del servicio prometheus-node-exporter, comprueba el puerto 9100 que utiliza Node Exporter y accede a las métricas de Node Exporter desde tu navegador.

Comprueba el estado del servicio prometheus-node-exporter ejecutando el siguiente comando.

sudo systemctl status prometheus-node-exporter

Si se está ejecutando, el estado del servicio prometheus-node-exporter debería ser el siguiente:

servicio exportador de nodos

Ahora ejecuta el siguiente comando para asegurarte de que el puerto 9100 está en estado LISTEN, que es el que utiliza Node Exporter.

ss -tulpn | grep 9100

La siguiente salida confirma que Node Exporter utiliza el puerto 9100.

comprobar el estado del exportador de nodos

Por último, abre tu navegador web y visita la URL de métricas del Exportador de Nodos, como http://192.168.10.15:9100/metrics. Deberías ver las métricas generadas por Node Exporter como las siguientes:

métricas del exportador de nodos

Añadir un nuevo trabajo a Prometheus

Ahora que Node Exporter se está ejecutando, estás preparado para añadir Node Exporter a Prometheus.

Abre la configuración de Prometheus /etc/prometheus/prometheus.yml utilizando el siguiente comando del editor nano.

sudo nano /etc/prometheus/prometheus.yml

Dentro de la sección scrape_configs, añade un nuevo trabajo prometheus-node-exporter con el endpoint de las métricas de Node Exporter como el siguiente.

  - job_name: 'prometheus-node-exporter'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.10.15:9100']

Guarda el archivo y sal del editor cuando hayas terminado.

A continuación, ejecuta el siguiente comando systemctl para reiniciar el servicio prometheus y aplicar los cambios.

sudo systemctl restart prometheus

Por último, vuelve al panel de control de Prometheus y haz clic en el menú Estado > Objetivos. Si todo va bien, deberías ver el Exportador de Nodos en el endpoint de destino.

exportador de nodos añadido a prometheus

Uso básico del Tablero de Prometheus

En esta sección, aprenderás la consulta básica de Prometheus y Node Exporter, que puede ejecutarse desde el tablero de Prometheus.

Escribe la consulta node_os_info y pulsa el botón Ejecutar. El node_os_info es un lenguaje de consulta proporcionado por Node Exporter para comprobar los detalles del sistema operativo.

En la sección Consola, deberías ver información detallada del host como la siguiente:

comprueba la información del sistema operativo

A continuación, escribe otra consulta como node_memory_Active_bytes para comprobar la memoria activa en el servidor de destino. En la sección Gráfico, deberías ver resultados similares como los siguientes:

comprueba el uso de memoria

Además, también puedes utilizar PromQL (Prometheus Query Language) para obtener datos específicos, como node_memory_Active_bytes[5 ] que te mostrará los datos de los últimos 5 minutos.

Conclusión

Para terminar, has completado la instalación de Prometheus y Node Exporter en el servidor Debian 12 paso a paso. Has instalado Prometheus y Node Exporter mediante APT desde el repositorio oficial de Debian. También has aprendido el uso básico del panel de Prometheus para probar consultas. Ahora puedes instalar componentes adicionales, como Alert Manager y Grafana, en tu sistema de monitorización.

También te podría gustar...