GNU/Linux >> Tutoriales Linux >  >> Rocky Linux

Cómo instalar Prometheus y Node Exporter en Rocky Linux

Prometeo es una plataforma de monitoreo y alertas de código abierto.

Originalmente, Soundcloud creó Prometheus en 2012. Desde entonces, el proyecto Prometheus adoptado por algunas compañías famosas se ha convertido en un proyecto más grande con una comunidad y desarrolladores muy activos. Y en 2016, el proyecto Prometheus se gradúa bajo la Fundación Cloud Native Computing (CNCF) .

Conceptos basicos que debes saber

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

Prometheus proporciona flexibilidad a través de Prometheus Query Language (PromQL). Puede utilizar PromQL para consultar la base de datos de series temporales de Prometheus.

En los servidores de destino, debe instalar el 'exportador ' aplicación que expone todos los datos y métricas a Prometheus. 'Node Exporter' es un exportador de uso común para monitorear máquinas Linux.

Exportador de nodos expone el hardware y las matrices relacionadas con el kernel de las máquinas Linux. Viene como un solo archivo binario que expondrá las métricas finales de datos al servidor de Prometheus.

Requisitos

En este artículo, aprenderá cómo instalar la herramienta de monitoreo Prometheus y Node Exporter en un sistema Rocky Linux 8.

Antes de comenzar, asegúrese de cumplir con los siguientes requisitos:

  • Sistema operativo:Rocky Linux 8.5 (Obsidiana verde)
  • Privilegios de raíz

Para este ejemplo, estamos usando el sistema Rocky Linux con la dirección IP '192.168.1.10 '.

Ahora comencemos.

Agregar nuevo usuario y directorio

Al principio, creará un nuevo usuario del sistema 'prometheus' y luego creará un nuevo directorio de configuración y un directorio de datos para la instalación de Prometheus.

1. Ejecute el siguiente comando para crear un nuevo usuario 'prometheus '.

sudo adduser -M -r -s /sbin/nologin prometheus

2. Después de eso, cree un nuevo directorio de configuración '/etc/prometheus ' y el directorio de datos '/var/lib/prometheus ' usando el siguiente comando.

sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus

Toda la configuración de Prometheus estará disponible en '/etc/prometheus ' y todos los datos de Prometheus se guardarán automáticamente en el directorio '/var/lib/prometheus '.

Instalando Prometheus en Rocky Linux

En este paso, instalará el sistema de monitoreo Prometheus manualmente desde el archivo tarball o tar.gz.

Elija la versión de Prometheus desde este enlace. Para este ejemplo, vamos a instalar la última versión de Prometheus.

1. Cambie el directorio de trabajo a '/usr/src' y descargue el binario de Prometheus usando el siguiente comando.

cd /usr/src
wget https://github.com/prometheus/prometheus/releases/download/v2.31.1/prometheus-2.31.1.linux-amd64.tar.gz

Una vez que se complete el proceso de descarga, extraiga el archivo de Prometheus.

tar -xf prometheus-2.31.1.linux-amd64.tar.gz

Ahora verá un nuevo directorio 'prometheus-VERSION.OS '.

2. A continuación, copie todas las configuraciones de Prometheus en el directorio '/etc/prometheus' y el archivo binario 'prometheus ' al '/usr/local/bin ' directorio.

Configuración de la variable de entorno 'PROM_SRC ' al directorio '/usr/src/prometheus-* '.

export PROM_SRC=/usr/src/prometheus-*

Copie la configuración de Prometheus 'prometheus.yml ' al directorio '/etc/prometheus .

sudo cp $PROM_SRC/prometheus.yml /etc/prometheus/

Copie el archivo binario 'prometheus ' y 'herramienta de promoción ' al directorio '/usr/local/bin/ '.

sudo cp $PROM_SRC/prometheus /usr/local/bin/
sudo cp $PROM_SRC/promtool /usr/local/bin/

Copie las plantillas y bibliotecas de la consola de Prometheus en el directorio '/etc/prometheus'.

sudo cp -r $PROM_SRC/consoles /etc/prometheus
sudo cp -r $PROM_SRC/console_libraries /etc/prometheus

3. A continuación, edite la configuración de Prometheus '/etc/prometheus/prometheus.yml' utilizando el editor nano.

nano /etc/prometheus/prometheus.yml

En 'scrape_configs ', es posible que deba agregar trabajos de monitoreo y cómo extraer todos los datos del objetivo.

La configuración predeterminada viene con el nombre de trabajo de monitoreo predeterminado 'prometheus' y el servidor de destino 'localhost ' a través de 'static_configs ' opción.

Cambie el destino de 'localhost:9090' a la dirección IP del servidor '192.168.1.10:9090 ' como se muestra a continuación.

# 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.1.10:9090"]

Guarde la configuración y salga.

4. Ahora ejecute el siguiente comando para cambiar los directorios de configuración y datos al usuario 'promethues '.

sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus

Ahora ha completado la instalación básica de Prometheus.

Configurar archivo de servicio de Prometheus

En este paso, configurará Prometheus como un servicio systemd.

1. Cree un nuevo archivo de servicio systemd '/etc/systemd/system/prometheus.service' usando el editor nano.

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

Copie y pegue la siguiente configuración.

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
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

Guarde la configuración y salga.

2. A continuación, vuelva a cargar systemd manager para aplicar una nueva configuración.

sudo systemctl daemon-reload

3. Ahora ejecute el siguiente comando para iniciar y habilitar el servicio Prometheus, luego verifique el estado actual del mismo.

sudo systemctl enable --now prometheus
sudo systemctl status prometheus

Si su instalación es exitosa, verá que el servicio Prometheus está activo y ejecutándose como se muestra a continuación.

Ahora se puede acceder a la herramienta de monitoreo de Prometheus en el puerto TCP '9090 .

4. Abra su navegador web y escriba la dirección IP del servidor con el puerto '9090 ' en la barra de direcciones.

http://192.168.1.10:9090/

Y verá la consulta del tablero de Prometheus a continuación.

Ahora has completado la instalación de Prometheus. Vaya al siguiente paso para instalar Node Exporter.

Instalando Node Exporter en Rocky Linux

El exportador de nodos es parte del proyecto Prometheus. Puede usar el exportador de nodos para exportar métricas de servidores Linux al servidor Prometheus.

En este paso, instalará el exportador de nodos en el sistema Rocky Linux desde el archivo tar.gz.

Consulte este enlace para obtener la última versión del exportador de nodos. En este ejemplo, instalaremos la versión 1.3.0 del exportador de nodos.

1. Cambie el directorio de trabajo a '/usr/src ' y descargue el archivo binario del exportador de nodos usando el siguiente comando.

cd /usr/src/
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.0/node_exporter-1.3.0.linux-amd64.tar.gz

Si se completa el proceso de descarga, extraiga el archivo del exportador de nodos.

tar -xf node_exporter-1.3.0.linux-amd64.tar.gz

Ahora obtendrá un nuevo directorio 'node_exporter-VERSION.OS '.

2. A continuación, mueva el archivo binario del exportador de nodos al directorio '/usr/local/bin ' usando el siguiente comando.

mv node_exporter-*/node_exporter /usr/local/bin

Vaya al siguiente paso para configurar el exportador de nodos como un servicio de systemd.

Configurar Node_exporter como servicio

Antes de crear un archivo de servicio de exportador de nodos, cree un nuevo usuario del sistema 'node_exporter' .

1. Ejecute el siguiente comando para crear un nuevo usuario del sistema.

sudo adduser -M -r -s /sbin/nologin node_exporter

2. A continuación, cree un nuevo archivo de servicio para el exportador de nodos '/etc/systemd/system/node_exporter.service' utilizando el editor nano.

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

Copie y pegue la siguiente configuración.

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target

Guarde la configuración y salga.

3. Ahora vuelva a cargar systemd manager para aplicar la nueva configuración.

sudo systemctl daemon-reload

4. Inicie y habilite el servicio 'node_exporter' usando el siguiente comando.

sudo systemctl enable --now node_exporter

Después de eso, verifique el estado actual del servicio 'node_exporter'.

sudo systemctl status node_exporter

Asegúrese de que el 'node_exporter ' el servicio está activo y ejecutándose.

5. El exportador de nodos se ejecuta en el puerto predeterminado '9100 '. Verifique usando el comando ss a continuación.

ss -aplnt | grep node

Verá un resultado similar al siguiente.

State    Recv-Q   Send-Q     Local Address:Port     Peer Address:Port   Process
LISTEN   0        128              0.0.0.0:22            0.0.0.0:*       users:(("sshd",pid=683,fd=4))
LISTEN   0        128                    *:9090                *:*       users:(("prometheus",pid=709,fd=8))
LISTEN   0        128                    *:9100                *:*       users:(("node_exporter",pid=5786,fd=3))
LISTEN   0        128                 [::]:22               [::]:*       users:(("sshd",pid=683,fd=6))

Y ha completado la instalación del exportador de nodos en el sistema Rocky Linux.

Agregar node_exporter a Prometheus

Después de completar la instalación de Prometheus y el exportador de nodos, agregue el exportador de nodos al servidor de Prometheus.

1. Edite la configuración de Prometheus con el editor nano.

sudo nano /etc/prometheus/prometheus.yml

Debajo de 'scrape_config ', agregue un nuevo trabajo de Prometheus usando la siguiente configuración. Y asegúrese de cambiar la dirección IP del servidor con su servidor de destino.

  - job_name: 'node_exporter_metrics'
    scrape_interval: 5s
    static_configs:
      - targets: ['SERVER-IP:9100']

Guarde la configuración y salga.

2. Ahora reinicie el servicio Prometheus para aplicar una nueva configuración.

sudo systemctl restart prometheus

Y ha agregado el exportador de nodos al servidor Prometheus.

Verificar la instalación de Prometheus y Node Exporter

1. Vuelva al panel de Prometheus, haga clic en el menú 'Estado ' y seleccione 'Objetivos '.

Verá dos puntos finales diferentes, el 'prometheus ' y 'node_exporter_metrics '.

2. A continuación, vaya al menú 'gráfico ' y escriba la consulta PromQL en la barra de búsqueda. Para este ejemplo, verifique el sistema operativo detallado usando la consulta 'node_os_info '.

Y verás información detallada sobre tu sistema operativo actual.

3. Otro ejemplo, verifique las velocidades de la red usando la consulta 'node_network_speed_bytes ', luego vaya a la pestaña 'Gráfico '. Y verá un resultado similar al siguiente.

Ahora ha instalado correctamente Prometheus y el exportador de nodos en el sistema Rocky Linux.

Conclusión

¡Felicidades! Ha aprendido la instalación y configuración básicas del sistema de monitoreo Prometheus y el exportador de nodos en el sistema Rocky Linux.

Para el siguiente paso, puede explorar otro exportador de Prometheus para otras aplicaciones y Grafana como panel de monitoreo.


Rocky Linux
  1. Cómo instalar Docker y Docker-Compose en Rocky Linux 8

  2. Cómo instalar y configurar HAProxy en Rocky Linux 8

  3. Cómo instalar y usar PostgreSQL 13 en Rocky Linux

  4. Cómo instalar NodeJS y NPM en Rocky Linux/Alma Linux 8

  5. Cómo instalar y configurar Elasticsearch en Rocky Linux 8

Cómo instalar y configurar OpenCV en Rocky Linux 8.4

Cómo instalar Docker en Rocky Linux y AlmaLinux

Cómo instalar MongoDB en Rocky Linux y AlmaLinux

Cómo instalar Java 16 en Rocky Linux y AlmaLinux

Cómo instalar NodeJS 14/16 y NPM en Rocky Linux 8

Cómo instalar Node.js en Rocky Linux 8