Instalación y configuración de Prometheus

Descargar e instalar Prometheus

Descargue la última versión de Prometheus y ejecute el proceso de verificación del checksum para asegurarse de que el archivo descargado no haya sido manipulado.

cd
curl -LO https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
echo "7f31c5d6474bbff3e514e627e0b7a7fbbd4e5cea3f315fd0b76cad50be4c1ba3  prometheus-2.52.0.linux-amd64.tar.gz" | sha256sum --check

Cada archivo descargable viene con su propio checksum. Reemplace el checksum real y la URL del enlace de descarga en el bloque de código anterior.

Asegúrate de elegir la versión AMD64. Haga clic derecho en el texto vinculado y seleccione "copiar dirección del enlace" para obtener la URL del enlace de descarga curl.

Resultado esperado: verificar el resultado de la verificación de la suma de control

prometheus-2.52.0.linux-amd64.tar.gz: OK

Si se verifica el checksum, extraiga los archivos y muévalos a los directorios /usr/local/biny /etc/prometheuspara mayor claridad y mejores prácticas. Luego, limpie las copias duplicadas.

tar xvf prometheus-2.52.0.linux-amd64.tar.gz
sudo cp prometheus-2.52.0.linux-amd64/prometheus /usr/local/bin/
sudo cp prometheus-2.52.0.linux-amd64/promtool /usr/local/bin/
sudo cp -r prometheus-2.52.0.linux-amd64/consoles /etc/prometheus
sudo cp -r prometheus-2.52.0.linux-amd64/console_libraries /etc/prometheus
sudo rm -r prometheus-2.52.0.linux-amd64 prometheus-2.52.0.linux-amd64.tar.gz

Configurar Prometheus

Cree una cuenta ( prometheus) sin acceso al servidor para que Prometheus se ejecute como un servicio en segundo plano. Esto restringe a los atacantes potenciales únicamente al servicio Prometheus en el improbable caso de que logren infiltrarse a través de una actualización de cliente comprometida.

sudo useradd --no-create-home --shell /bin/false prometheus

Cree un directorio para que Prometheus almacene los datos de monitoreo. Luego configure el propietario al usuario prometheus y el directorio /etc/prometheus para que pueda leer y escribir en los directorios.

sudo mkdir -p /var/lib/prometheus
sudo chown -R prometheus:prometheus /var/lib/prometheus
sudo chown -R prometheus:prometheus /etc/prometheus

Cree un archivo de configuración para que Prometheus sepa de dónde extraer los datos.

sudo nano /etc/prometheus/prometheus.yml

Pegue los siguientes parámetros de configuración en el archivo:

1) Parámetros generales + cliente de ejecución:

global:
  scrape_interval: 15s
scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets:
          - localhost:9090
  - job_name: node_exporter
    static_configs:
      - targets:
          - localhost:9100
  - job_name: nethermind
    static_configs:
      - targets:
          - localhost:9091

2) Parámetros del cliente de consenso:

Según el cliente de consenso seleccionado, agregue el siguiente bloque a lo agregado en 1)

  - job_name: "teku_beacon" #for consensus client
    scrape_timeout: 10s
    metrics_path: /metrics
    scheme: http
    static_configs:
      - targets: ["localhost:8009"]
      
  - job_name: "teku_validator" #for validator client
    scrape_timeout: 10s
    metrics_path: /metrics
    scheme: http
    static_configs:
      - targets: ["localhost:8108"]

Una vez que haya terminado, guarde con Ctrl+Oy Enter, luego salga con Ctrl+X.

A continuación, cree un archivo de configuración systemd para que el servicio Prometheus se ejecute en segundo plano.

sudo nano /etc/systemd/system/prometheus.service

Pegue los siguientes parámetros de configuración en el archivo:

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=prometheus
Group=prometheus
Restart=always
RestartSec=5
ExecStart=/usr/local/bin/prometheus \
  --config.file=/etc/prometheus/prometheus.yml \
  --storage.tsdb.path=/var/lib/prometheus \
  --web.console.templates=/etc/prometheus/consoles \
  --web.console.libraries=/etc/prometheus/console_libraries
[Install]
WantedBy=multi-user.target

Una vez que haya terminado, guarde con Ctrl+Oy Enter, luego salga con Ctrl+X.

Iniciar el servicio Prometheus

Recargar el systemd para registrar los cambios realizados, inicie Prometheus y verifique su estado para asegurarse de que se esté ejecutando.

sudo systemctl daemon-reload
sudo systemctl start prometheus.service
sudo systemctl status prometheus.service

Resultado esperado: El resultado debería decir que Prometheus está "active (running)". Presione CTRL-C para salir y Prometheus continuará ejecutándose.

Utilice el siguiente comando para comprobar los registros en busca de advertencias o errores:

sudo journalctl -fu prometheus -o cat | ccze -A

Resultado esperado:

Presione CTRL-Cpara salir.

Si el servicio Prometheus funciona sin problemas, ahora podemos permitir que se inicie automáticamente al reiniciar el sistema.

sudo systemctl enable prometheus.service

Last updated