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
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.
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.
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.
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.
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.
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.
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.
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.
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:
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.
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:
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.
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:
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:
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.