GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare Prometheus e Node Exporter su Rocky Linux

Prometeo è una piattaforma open source di monitoraggio e avviso.

Originariamente, Prometheus è stato creato da Soundcloud nel 2012. Da allora il progetto Prometheus adottato da alcune famose aziende è diventato un progetto più grande con sviluppatori e comunità molto attivi. E nel 2016, il progetto Prometheus si laurea presso la Cloud Native Computing Foundation (CNCF) .

Concetti di base che devi conoscere

Fondamentalmente, Prometeo raccoglie dati e parametri tramite gli endpoint HTTP dai server di destinazione, quindi archivia tutti i dati come serie temporali. In Prometheus, i dati delle serie temporali sono identificati dal nome della metrica e dalle coppie chiave/valore.

Prometheus offre flessibilità attraverso il Prometheus Query Language (PromQL). È possibile utilizzare PromQL per interrogare il database delle serie temporali di Prometheus.

Sui server di destinazione, devi installare 'exporter ' applicazione che espone tutti i dati e le metriche a Prometheus. 'Node Exporter' è un esportatore comunemente usato per monitorare le macchine Linux.

Esportatore di nodi espone le matrici relative all'hardware e al kernel da macchine Linux. Viene fornito come un unico file binario che esporrà le metriche finali dei dati al server Prometheus.

Prerequisiti

In questo articolo imparerai come installare lo strumento di monitoraggio Prometheus e Node Exporter su un sistema Rocky Linux 8.

Prima di iniziare, assicurati di avere il seguente requisito:

  • Sistema operativo:Rocky Linux 8.5 (Green Obsidian)
  • Privilegi di root

Per questo esempio, utilizziamo il sistema Rocky Linux con indirizzo IP '192.168.1.10 '.

Ora iniziamo.

Aggiungi nuovo utente e directory

Inizialmente, creerai un nuovo utente di sistema "prometheus", quindi creerai una nuova directory di configurazione e una nuova directory di dati per l'installazione di Prometheus.

1. Eseguire il comando seguente per creare un nuovo utente 'prometheus '.

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

2. Successivamente, crea una nuova directory di configurazione '/etc/prometheus ' e la directory dei dati '/var/lib/prometheus ' usando il seguente comando.

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

Tutta la configurazione di Prometheus sarà disponibile in '/etc/prometheus ' e tutti i dati di Prometheus verranno automaticamente salvati nella directory '/var/lib/prometheus '.

Installazione di Prometheus su Rocky Linux

In questo passaggio, installerai manualmente il sistema di monitoraggio Prometheus dal file tarball o tar.gz.

Scegli la versione Prometheus da questo link. Per questo esempio, installeremo l'ultima versione di Prometheus.

1. Cambia la directory di lavoro in '/usr/src' e scarica il binario di Prometheus usando il comando seguente.

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

Al termine del processo di download, estrai il file Prometheus.

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

Ora vedrai una nuova directory 'prometheus-VERSION.OS '.

2. Quindi, copia tutte le configurazioni di Prometheus nella directory '/etc/prometheus' e il file binario 'prometheus ' a '/usr/local/bin ' directory.

Imposta la variabile di ambiente 'PROM_SRC ' nella directory '/usr/src/prometheus-* '.

export PROM_SRC=/usr/src/prometheus-*

Copia la configurazione di Prometeo 'prometheus.yml ' nella directory '/etc/prometheus .

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

Copia il file binario 'prometheus ' e 'strumento promozionale ' nella directory '/usr/local/bin/ '.

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

Copia i modelli e le librerie della console Prometheus nella directory '/etc/prometheus'.

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

3. Quindi, modifica la configurazione di Prometheus '/etc/prometheus/prometheus.yml' usando l'editor nano.

nano /etc/prometheus/prometheus.yml

In 'scrape_configs ', potrebbe essere necessario aggiungere lavori di monitoraggio e come estrarre tutti i dati dalla destinazione.

La configurazione predefinita include il nome del lavoro di monitoraggio predefinito 'prometheus' e il server di destinazione 'localhost ' attraverso 'static_configs ' opzione.

Modifica la destinazione da 'localhost:9090' all'indirizzo IP del server '192.168.1.10:9090 ' come di seguito.

# 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"]

Salva la configurazione ed esci.

4. Ora esegui il comando seguente per modificare la configurazione e le directory dei dati nell'utente 'promethue '.

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

Ora hai completato l'installazione di base di Prometheus.

Installazione del file di servizio Prometheus

In questo passaggio, configurerai Prometheus come servizio di sistema.

1. Crea un nuovo file di servizio systemd '/etc/systemd/system/prometheus.service' utilizzando nano editor.

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

Copia e incolla la seguente configurazione.

[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

Salva la configurazione ed esci.

2. Quindi, ricarica il systemd manager per applicare una nuova configurazione.

sudo systemctl daemon-reload

3. Ora esegui il seguente comando per avviare e abilitare il servizio Prometheus, quindi controlla lo stato corrente di esso.

sudo systemctl enable --now prometheus
sudo systemctl status prometheus

Se l'installazione va a buon fine, vedrai che il servizio prometheus è attivo e in esecuzione come di seguito.

Lo strumento di monitoraggio Prometheus è ora accessibile sulla porta TCP '9090 .

4. Apri il tuo browser web e digita l'indirizzo IP del server con la porta '9090 ' nella barra degli indirizzi.

http://192.168.1.10:9090/

E vedrai la query della dashboard di Prometeo di seguito.

Ora hai completato l'installazione di Prometeo. Passa al passaggio successivo per l'installazione di Node Exporter.

Installazione di Node Exporter su Rocky Linux

Node exporter fa parte del progetto prometheus. Puoi utilizzare l'esportatore di nodi per esportare le metriche dei server Linux sul server Prometheus.

In questo passaggio, installerai l'esportatore di nodi sul sistema Rocky Linux dal file tar.gz.

Controlla questo link per ottenere l'ultima versione di node exporter. In questo esempio, installeremo la versione di esportazione del nodo 1.3.0.

1. Modificare la directory di lavoro in '/usr/src ' e scarica il file binario dell'esportatore del nodo usando il comando seguente.

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

Se il processo di download viene completato, estrai il file di esportazione del nodo.

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

Ora otterrai una nuova directory 'node_exporter-VERSION.OS '.

2. Quindi, sposta il file binario dell'esportatore del nodo nella directory '/usr/local/bin ' usando il seguente comando.

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

Passa al passaggio successivo per configurare l'esportatore di nodi come servizio systemd.

Imposta Node_exporter come servizio

Prima di creare un file del servizio di esportazione dei nodi, crea un nuovo utente di sistema 'node_exporter' .

1. Eseguire il comando seguente per creare un nuovo utente di sistema.

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

2. Quindi, crea un nuovo file di servizio per l'esportatore di nodi '/etc/systemd/system/node_exporter.service' utilizzando nano editor.

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

Copia e incolla la seguente configurazione.

[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

Salva la configurazione ed esci.

3. Ora ricarica il systemd manager per applicare la nuova configurazione.

sudo systemctl daemon-reload

4. Avvia e abilita il servizio 'node_exporter' utilizzando il comando seguente.

sudo systemctl enable --now node_exporter

Successivamente, controlla lo stato corrente del servizio 'node_exporter'.

sudo systemctl status node_exporter

Assicurati di 'node_exporter ' il servizio è attivo e funzionante.

5. L'utilità di esportazione del nodo è in esecuzione sulla porta predefinita '9100 '. Verifica utilizzando il comando ss di seguito.

ss -aplnt | grep node

Vedrai un output simile come di seguito.

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))

E hai completato l'installazione di node exporter sul sistema Rocky Linux.

Aggiungi node_exporter a Prometheus

Dopo aver completato l'installazione di Prometheus e dell'esportatore di nodi, aggiungi l'esportatore di nodi al server Prometheus.

1. Modifica la configurazione di Prometheus utilizzando il nano editor.

sudo nano /etc/prometheus/prometheus.yml

Sotto 'scrape_config ', aggiungi un nuovo lavoro Prometheus utilizzando la seguente configurazione. E assicurati di cambiare l'indirizzo IP del server con il tuo server di destinazione.

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

Salva la configurazione ed esci.

2. Ora riavvia il servizio Prometheus per applicare una nuova configurazione.

sudo systemctl restart prometheus

E hai aggiunto l'esportatore di nodi al server Prometheus.

Verifica l'installazione di Prometheus e Node Exporter

1. Torna alla dashboard di Prometheus, fai clic sul menu 'Stato ' e seleziona 'Target '.

Vedrai due diversi endpoint, il 'prometheus ' e 'node_exporter_metrics '.

2. Quindi, vai al menu 'grafico ' e digita la query PromQL sulla barra di ricerca. Per questo esempio, controlla il sistema operativo dettagliato utilizzando la query 'node_os_info '.

E vedrai informazioni dettagliate sul tuo attuale sistema operativo.

3. Un altro esempio, controlla le velocità di rete utilizzando la query 'node_network_speed_bytes ', quindi vai alla scheda 'Grafico '. E vedrai un output simile come di seguito.

Ora hai installato con successo Prometheus e l'esportatore di nodi sul sistema Rocky Linux.

Conclusione

Congratulazioni! Hai imparato l'installazione e la configurazione di base del sistema di monitoraggio Prometheus e dell'esportatore di nodi sul sistema Rocky Linux.

Per il passaggio successivo, puoi esplorare un altro esportatore Prometheus per altre applicazioni e Grafana come dashboard di monitoraggio.


Rocky Linux
  1. Come installare Docker e Docker-Compose su Rocky Linux 8

  2. Come installare e configurare HAProxy su Rocky Linux 8

  3. Come installare e utilizzare PostgreSQL 13 su Rocky Linux

  4. Come installare NodeJS e NPM su Rocky Linux/Alma Linux 8

  5. Come installare e configurare Elasticsearch su Rocky Linux 8

Come installare e configurare OpenCV su Rocky Linux 8.4

Come installare Docker su Rocky Linux e AlmaLinux

Come installare MongoDB su Rocky Linux e AlmaLinux

Come installare Java 16 in Rocky Linux e AlmaLinux

Come installare NodeJS 14/16 e NPM su Rocky Linux 8

Come installare Node.js su Rocky Linux 8