GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Prometheus Monitoring e node_exporter su CentOS 8

Prometheus è un sistema di monitoraggio open source che consente di raccogliere metriche da qualsiasi sistema di destinazione configurato. Prometheus implementa un modello di dati multidimensionale con query potenti, ottima visualizzazione, avvisi precisi e viene fornito con molte integrazioni.

Prometheus è stato originariamente creato da SoundCloud nel 2012, ma ora è diventato un progetto open source indipendente gestito in modo indipendente dalla comunità open source:tutti i componenti sono disponibili con la licenza Apache 2 su Github.

In questo tutorial, ti mostrerò come installare e configurare Prometheus e node_exporter. Installeremo il sistema di monitoraggio Prometheus e quindi configureremo node_exporter per raccogliere le metriche dal server. Utilizzeremo l'ultimo server CentOS 8 per questa guida tutorial.

Prerequisiti

  • Server CentOS 8
  • Privilegi di root

Cosa faremo?

  • Crea un nuovo utente e scarica Prometheus
  • Configura Prometheus come servizio Systemd
  • Configura Firewalld
  • Installa e configura node_exporter
  • Aggiungi node_exporter al server Prometheus
  • Test

Passaggio 1:crea un nuovo utente e scarica Prometheus

In questo tutorial, il servizio Prometheus verrà eseguito come utente non root. Quindi dobbiamo creare un nuovo utente non root sul sistema. Creeremo un nuovo utente chiamato "prometheus" e tutti i servizi prometei verranno eseguiti sotto l'utente prometeus.

Crea un nuovo utente "prometheus" usando il comando seguente.

useradd -m -s /bin/bash prometheus

È stato creato un nuovo utente. Ora accedi all'utente e scarica prometheus usando il comando wget.

su - prometheus
wget https://github.com/prometheus/prometheus/releases/download/v2.13.1/prometheus-2.13.1.linux-amd64.tar.gz

Estrarre il file prometheus-xx.x.x.tar.gz e rinominare la directory in 'prometheus'.

tar -xf prometheus-2.13.1.linux-amd64.tar.gz
mv prometheus-2.13.1.linux-amd64/ prometheus/

Successivamente, crea una nuova directory "data" che verrà utilizzata come memoria "tsdb".

mkdir -p ~/prometheus/data

Ora il prometheus viene scaricato sul server e tutti i file di prometheus si trovano nella directory '/home/prometheus/prometheus'.

Passaggio 2 - Configura Prometheus come servizio Systemd

In questo passaggio, configureremo prometheus come servizio systemd. Creeremo un nuovo file di servizio prometheus.service nella directory '/etc/systemd/system'.

Vai alla directory '/etc/systemd/system/' e crea un nuovo file di servizio 'prometheus.service' usando l'editor vim.

cd /etc/systemd/system/
vim prometheus.service

Incolla la configurazione del servizio prometheus di seguito.

[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target

[Service]
User=prometheus
Restart=on-failure

#Change this line if you download the
#Prometheus on different path user
ExecStart=/home/prometheus/prometheus/prometheus \
  --config.file=/home/prometheus/prometheus/prometheus.yml \
  --storage.tsdb.path=/home/prometheus/prometheus/data

[Install]
WantedBy=multi-user.target

Salva ed esci.

Ora ricarica il sistema systemd usando il comando systemctl di seguito.

systemctl daemon-reload

Avvia il servizio prometheus e abilitalo all'avvio ogni volta all'avvio del sistema.

systemctl start prometheus
systemctl enable prometheus

Il prometheus è ora in esecuzione come servizio systemd, controllalo usando il comando seguente.

systemctl status prometheus

Assicurati di ottenere lo stato del servizio "In esecuzione".

Oppure controllalo usando il comando netstat di seguito.

netstat -plntu

Assicurati di ottenere il risultato come mostrato di seguito.

Prometheus è in esecuzione per impostazione predefinita sotto la porta '9090'.

Passaggio 3 - Configura Firewalld

Se stai utilizzando Firewalld sul tuo sistema, aggiungi la porta 9090 all'elenco delle porte di Firewalld.

Apri la porta 9090 per l'accesso Prometheus utilizzando i comandi firewall-cmd di seguito.

firewall-cmd --add-port=9090/tcp --permanent
firewall-cmd --reload

Ora controlla le regole di firewalld.

firewall-cmd --list-all

E otterrai la porta TCP '9090' nell'elenco.

Quindi, apri il tuo browser web e digita l'indirizzo IP del server con la porta 9090.

http://10.5.5.15:9090/graph

Digita "prometheus_http_requests_total" nel campo della query e fai clic sul pulsante "Esegui".

E vedrai le richieste HTTP al server prometheus con tutte le informazioni sull'ora, il codice di stato HTTP e il metodo ecc.

Fase 4 - Installa e configura node_exporter

node_exporter è un esportatore di metriche macchina che può essere eseguito su sistemi *Nix e Linux.

In questo tutorial, installeremo node_exporter sullo stesso server prometheus. Monitoreremo e otterremo la metrica del server prometheus.

Accedi all'utente prometheus e scarica 'node_exporter' usando il comando wget.

su - prometheus
wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz

Estrarre node_exporter e rinominare la directory in 'node_exporter'.

tar -xf node_exporter-0.18.1.linux-amd64.tar.gz
mv node_exporter-0.18.1.linux-amd64 node_exporter

Successivamente, creeremo un nuovo file di servizio per node_exporter. Torna alla shell di root, vai alla directory '/etc/systemd/system' e crea un nuovo file di servizio node_exporter 'node_exporter.service' usando vim.

cd /etc/systemd/system/
vim node_exporter.service

Incolla la seguente configurazione.

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

[Service]
User=prometheus
ExecStart=/home/prometheus/node_exporter/node_exporter

[Install]
WantedBy=default.target

Salva ed esci.

Ora ricarica il sistema systemd.

systemctl daemon-reload

Quindi avvia il servizio node_exporter e abilitalo per l'avvio ogni volta all'avvio del sistema.

systemctl start node_exporter
systemctl enable node_exporter

Il servizio node_exporter è ora in esecuzione sul server:verificalo utilizzando il comando netstat.

systemctl status node_exporter
netstat -plntu

E otterrai che il node-exporter sia attivo e funzionante sulla porta predefinita 9100.

Passaggio 5:aggiungi node_exporter al server Prometheus

In questo passaggio, aggiungeremo node_exporter al server prometheus. Accedi all'utente prometheus e modifica il file di configurazione 'prometheus.yml'.

Accedi all'utente prometheus.

su - prometheus

Vai alla directory 'prometheus' e modifica il file di configurazione 'prometheus.yml'.

cd ~/prometheus/
vim prometheus.yml

Nella riga 'scrape_config', aggiungi il nuovo job_name node_exporter copiando e incollando la configurazione di seguito.

  - job_name: 'node_exporter'
    static_configs:
    - targets: ['localhost:9100']

Salva ed esci.

Ora riavvia il servizio Prometeo.

systemctl restart prometheus

Il node_exporter è stato aggiunto al server prometheus.

Fase 6 - Test di Prometheus e node_exporter

Apri il tuo browser web e quindi inserisci l'indirizzo IP del server.

http://10.5.5.15:9090/

Digita il raccoglitore di meminfo 'node_memory_MemAvailable_bytes' nel campo della query e fai clic sul pulsante 'Esegui'.

E otterrai il risultato come di seguito.

Otterrai la memoria disponibile sull'istanza del server "localhost:9100" e il nome_lavoro "node-exporter".

Oppure, se vuoi accedere ai dati grezzi di node_exporter, devi aggiungere la porta node_exporter 9100 al firewalld.

firewall-cmd --add-port=9100/tcp --permanent
firewall-cmd --reload

Quindi digita l'indirizzo IP del server con la porta 9100.

http://10.5.5.15:9100/metrics

E otterrai i dati grezzi node_exporter come mostrato di seguito.

Di conseguenza, l'installazione e la configurazione del sistema di monitoraggio prometheus con node_exporter su CentOS 8 Server sono state completate con successo.


Cent OS
  1. Come installare e configurare Nginx su CentOS 7

  2. Come installare Hashicorp Vault su CentOS 7

  3. Come installare e configurare Fail2Ban su CentOS 8 e Fedora 33

  4. Come installare Netdata Monitoring su CentOS 7

  5. Come installare il servizio NTP e il client in CentOS/RHEL 8

Come installare il sistema di monitoraggio Grafana su CentOS 8

Come installare Nagios Core e NRPE su CentOS 8

Come installare ClamAV su CentOS 7

Come installare Cacti Monitoring su CentOS 7

Come installare Icinga 2 su CentOS 7

Come installare Prometheus su CentOS 8