GNU/Linux >> Linux Esercitazione >  >> Linux

Monitora il server Linux usando Prometheus e Grafana

Panoramica

Monitora il server Linux usando Prometheus e Grafana. Tratteremo il processo su come monitorare il server Linux con prometheus e grafana usando Docker. L'intera configurazione verrà installata e configurata su Debian 10 Buster e Docker, ma anche questo può essere fatto e funzionerà sul server Ubuntu o su qualsiasi altra distribuzione Linux che esegue Docker. Con questa configurazione saremo in grado di tracciare e monitorare le risorse sul nostro server (macchina host):utilizzo della CPU, utilizzo della RAM, SWAP, rete, spazio su disco e così via.

Piccolo avviso – Vorremmo menzionare un'altra soluzione di monitoraggio nel mondo IT, per offrirti opzioni adatte alle tue esigenze, che ha funzionalità di livello aziendale ed è ancora open source (se necessario) e questo è Zabbix. Abbiamo trattato il processo di installazione e la configurazione in questo post.

Prerequisiti

Questa configurazione richiede che Docker sia installato e in esecuzione sulla tua macchina. Puoi controllare questo link per installare Docker su Debian o controllare la documentazione ufficiale di Docker.

Un altro modo per installare Docker è utilizzare lo script di installazione automatica di Docker ufficiale che è ospitato su Docker.

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Come monitorare il server Linux utilizzando Prometheus e Grafana e Docker

Installa Esportatore nodi

1. Dopo aver installato ed eseguito Docker, il primo passaggio dell'installazione consiste nell'installare lo strumento Node Exporter. Node Exporter è la parte del monitor Prometheus e il suo scopo è raccogliere tutti i dati dalla tua macchina in modo che Prometheus possa recuperarli. Node Exporter è disponibile anche in un contenitore Docker, quindi l'installazione sarà semplice.

docker run -d --net="host" --pid="host" -v "/:/host:ro,rslave" quay.io/prometheus/node-exporter:latest --path.rootfs=/host

Puoi facilmente controllare se Node Exporter funziona correttamente. Nel browser, apri l'URL dell'esportatore del nodo – http://indirizzo-ip-del-tuo-server:9100 e se vedi una metrica di directory con dati che popolano, significa che sta funzionando.

Un altro modo per testarlo è con il comando:

curl localhost:9100/metrics

o

curl http://your-server-ip-address:9100/metrics

Crea una configurazione YAML di Prometheus

2. Ora dobbiamo creare un file di configurazione YAML di Promethes. Crea questo file dove vuoi metterlo sul server, ma per il bene del post, mettiamolo nella home directory.

Puoi eseguire questo passaggio in questo modo:

sudo touch ~/prometheus/prometheus.yml
sudo nano ~/prometheus/prometheus.yml

o subito

sudo nano ~/prometheus/prometheus.yml

quindi incolla la configurazione e salva il file ed esci.

global:
scrape_interval: 5s
external_labels:
monitor: 'node'
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['192.168.100.252:9090']
- job_name: 'node-exporter'
static_configs:
- targets: ['192.168.100.252:9100']

Nella variabile target, annota l'indirizzo IP del tuo server.

Distribuisci il container Docker Prometheus

3. Il prossimo passo è installare Prometheus, anche con Docker. Esegui il comando successivo e fai attenzione al percorso del file prometheus.yml:

docker run -d --name prometheus -p 9090:9090 -v ~/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

Analizzeremo il comando per spiegarlo in modo più dettagliato:

  • docker run -d –name prometheus -p 9090:9090 – questa parte del comando dovrebbe essere comprensibile a molti – esegui un'immagine Docker, denominala prometheus ed espone la porta del contenitore 9090 alla stessa porta sul server host.
  • -v ~/prometheus/prometheus/yml:/etc/prometheus/prometheus/yml – questa è la parte più importante del comando durante l'installazione di prometheus. In questa parte del comando, stiamo dicendo a Prometheus di usare il file prometheus.yml che abbiamo creato nel passaggio precedente e dove si trova sul server host (home directory in questo esempio) per configurarsi con i parametri che abbiamo set e per posizionare lo stesso file di configurazione nella directory /etc del contenitore Prometheus Docker.
  • prom/prometheus:questa è una variabile per Docker quale immagine Docker da Docker scaricare e installare.

Puoi anche verificare se Prometheus è in esecuzione tramite browser web aprendo anche l'indirizzo IP del tuo server con la porta 9090. Dovresti ottenere un risultato come nelle immagini qui sotto:

Distribuisci il contenitore Docker Grafana

4. Ora possiamo installare Grafana. Inoltre faremo Grafana con container Docker.

docker run -d --name=grafana -p 3456:3000 grafana/grafana

Accedi al Grafana nel tuo browser web. Ti verrà chiesto di accedere immediatamente. Il nome utente e la password predefiniti sono admin. È un accesso temporaneo. Non appena effettui il login, il Grafana ti chiederà subito di cambiare la password.

Crea un'origine dati e una dashboard

Dopo il login, dobbiamo creare una dashboard di monitoraggio e creare una nuova fonte di dati che Grafana utilizzerà. Quindi, prima creeremo l'origine dati. Proprio nella home page di Grafana, fai clic sull'opzione – aggiungi la tua prima fonte di dati.

Scegli che l'opzione dell'origine dati sia Prometeo:sarà subito la prima opzione disponibile.

Assegna un nome all'origine dati come desideri. Nel campo di immissione dell'URL, digita l'indirizzo IP del tuo server con la porta Prometheus 9090 e HTTP. Come nella foto qui sotto.

Salva e testa l'origine dati, se tutto è a posto, verrà visualizzato un messaggio in cui si afferma che l'origine dati funziona.

Ora per configurare la nostra dashboard di monitoraggio del server. Puoi creare una nuova dashboard da zero come desideri (richiede tempo), ma puoi anche dare un'occhiata al sito di Grafana e vedere le dashboard già create dalla community di Grafana. In questo esempio, faremo proprio questo, importare una dashboard esistente. Esistono numerosi dashboard Grafana per il monitoraggio del server che utilizzano Prometheus e Node Exporter. Quello che useremo per questo esempio è questo.

Quindi, una volta che vai sull'opzione di importazione dashboard, dobbiamo solo digitare l'ID dashboard dal sito Grafana - in questo esempio è 1860. Assegna un nome alla dashboard e anche alla parte importante - per selezionare Prometheus come origine dati per questo Pannello. Quindi fai clic sul pulsante di importazione e il gioco è fatto, il risultato finale è mostrato nella dashboard di seguito.

Al termine dell'installazione, dovremmo essere in grado di monitorare il server Linux utilizzando prometheus e grafana tutti in esecuzione in Docker.

Riepilogo

Questo è stato il processo su come impostare il monitoraggio del server e come monitorare il server Linux utilizzando Prometheus, Grafana e Docker. Questa può essere una configurazione di monitoraggio davvero potente, poiché puoi monitorare i container Docker, più server host e anche impostare le notifiche e-mail da Prometheus.

Grazie mille per il tuo tempo e spero che tu abbia trovato utile il post...


Linux
  1. Comunicazione tra processi in Linux:socket e segnali

  2. Che cos'è Docker (e contenitori Linux?)

  3. Installazione e configurazione di Grafana in Linux

  4. Monitora il server Linux con Prometheus e Grafana

  5. Come monitorare e registrare il traffico di rete su Linux utilizzando vnStat

Monitora e amministra i server Linux utilizzando Cockpit tramite browser Web

Come monitorare le modifiche ai file utilizzando fswatch in Linux

Come monitorare il server Linux e le metriche dal browser utilizzando Scout Realtime

30 strumenti e servizi interessanti per monitorare i tuoi server Linux

Utilizzo di Ajenti nella gestione dei server Linux

Come configurare il server e il client VPN Linux utilizzando OpenVPN