Ricerca nel sito web

Monitoraggio delle droplet Redis utilizzando il servizio di esportazione Redis


Introduzione

Il monitoraggio efficace dei database Redis è essenziale per mantenere prestazioni ottimali, identificare potenziali colli di bottiglia e garantire l'affidabilità complessiva del sistema. Redis Exporter Service è una potente utility progettata per monitorare i database Redis utilizzando Prometheus.

Questo tutorial ti guiderà attraverso l'installazione e la configurazione complete del servizio Redis Exporter, assicurandoti di stabilire una soluzione di monitoraggio senza problemi. Seguendo questo tutorial, otterrai una configurazione di monitoraggio completamente operativa per monitorare in modo efficace i parametri prestazionali del tuo database Redis.

Nota: il tempo di configurazione approssimativo per questo tutorial è di circa 25 minuti

Prerequisiti

Prima di iniziare, assicurati di disporre dei seguenti prerequisiti:

  • Avrai bisogno di avere server di database Redis configurati e in esecuzione su un Droplet Ubuntu. Puoi fare riferimento ai nostri tutorial su Come installare e proteggere Redis su Ubuntu. I server che desideri monitorare devono essere accessibili dal computer in cui prevedi di installare Redis Exporter Service.
  • Avrai bisogno dell'accesso SSH ai server Redis per installare e configurare il servizio Redis Exporter.
  • Prometheus MySQL Exporter si integra con Prometheus per lo scraping delle metriche e Grafana per la visualizzazione. Qui stiamo utilizzando le immagini Prometheus e Grafana da DigitalOcean Marketplace per monitorare il database Droplet.

Nota: in questo tutorial, esamineremo due diversi metodi per configurare il servizio Redis Exporter per il monitoraggio dei database Redis. Puoi scegliere tra la configurazione manuale e l'automazione basata su script, ciascuna adattata alle diverse preferenze e requisiti operativi. Segui le istruzioni per ciascun metodo per distribuire Redis Exporter Service sulla tua infrastruttura in modo efficace. Questa flessibilità consente di selezionare la migliore strategia di distribuzione e l'approccio al flusso di lavoro operativo.

Metodo 1: configurazione manuale

Procediamo con il metodo di configurazione manuale in questa sezione.

Creare utente e gruppo del sistema Prometheus

Crea un utente di sistema e un gruppo denominato “prometheus ” per gestire il servizio di esportazione.

sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus

Scarica e installa Redis Exporter

Scarica l'ultima versione di Redis Exporter da GitHub, estrai i file scaricati e sposta il file binario nella directory /usr/local/bin/.

curl -s https://api.github.com/repos/oliver006/redis_exporter/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -
tar xvf redis_exporter-*.linux-amd64.tar.gz
sudo mv redis_exporter-*.linux-amd64/redis_exporter /usr/local/bin/

Verifica l'installazione dell'esportatore Redis

redis_exporter --version

Ecco l'output di esempio:

Configura il servizio systemd per Redis Exporter

Crea un file di unità di servizio systemd per gestire il servizio Redis Exporter.

sudo vim /etc/systemd/system/redis_exporter.service

Aggiungi il seguente contenuto al file:

[Unit]
Description=Prometheus Redis Exporter
Documentation=https://github.com/oliver006/redis_exporter
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP $MAINPID
ExecStart=/usr/local/bin/redis_exporter \
  --log-format=txt \
  --namespace=redis \
  --web.listen-address=:9121 \
  --web.telemetry-path=/metrics

SyslogIdentifier=redis_exporter
Restart=always

[Install]
WantedBy=multi-user.target

Ricarica systemd e avvia il servizio di esportazione Redis

sudo systemctl daemon-reload
sudo systemctl enable redis_exporter
sudo systemctl start redis_exporter

Configurazione della Droplet Prometheus (metodo manuale)

Configuriamo la droplet Prometheous per la configurazione manuale.

Effettua un backup del file prometheus.yml

cp /etc/prometheus/prometheus.yml /etc/prometheus/prometheus.yml-$(date +'%d%b%Y-%H:%M')

Aggiungi gli endpoint Redis Exporter da sottoporre a scraping

Accedi al tuo server Prometheus e aggiungi gli endpoint Redis Exporter da sottoporre a scraping.

Sostituisci gli indirizzi IP e le porte con gli endpoint Redis Exporter (9121 è la porta predefinita per Redis Exporter Service).

vi /etc/prometheus/prometheus.yml
scrape_configs:
  - job_name: server1_db
    static_configs:
      - targets: ['10.10.1.10:9121']
        labels:
          alias: db1

  - job_name: server2_db
    static_configs:
      - targets: ['10.10.1.11:9121']
        labels:

Questa è la fine della configurazione manuale. Ora procediamo con la configurazione basata su script.

Metodo 2: configurazione tramite script

Puoi anche ottenere questo risultato eseguendo due script: uno per i droplet di destinazione e l'altro per il droplet Prometheus.

Iniziamo configurando le Droplet di destinazione.

SSH nel droplet di destinazione.

Scarica lo script di configurazione di destinazione utilizzando il comando seguente:

wget https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Redis_Target_Config.sh

Una volta scaricato lo script, assicurati che disponga delle autorizzazioni eseguibili eseguendo:

chmod +x DO_Redis_Target_Config.sh

Esegui lo script eseguendo:

./DO_Redis_Target_Config.sh

La configurazione è completa.

Nota: se il file redis_exporter.service esiste già, lo script non verrà eseguito.

Configurazione della droplet Prometheus (metodo script)

SSH nel Prometheus Droplet e scarica lo script utilizzando il seguente comando:

wget https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Redis_Prometheus_Config.sh

Una volta scaricato lo script, assicurati che disponga delle autorizzazioni eseguibili eseguendo:

chmod +x DO_Redis_Prometheus_Config.sh

Esegui lo script eseguendo:

./DO_Redis_Prometheus_Config.sh

Inserisci il numero di Droplet da aggiungere al monitoraggio.

Inserisci i nomi host e gli indirizzi IP.

La configurazione è completa.

Una volta aggiunti, controlla se i target sono aggiornati accedendo all'URL prometheushostname:9090/targets.

Nota: se inserisci un indirizzo IP già aggiunto al monitoraggio, ti verrà chiesto di inserire nuovamente i dettagli. Inoltre, se non hai altri server da aggiungere, puoi inserire 0 per uscire dallo script

Configurazione di Grafana

Accedi alla dashboard di Grafana visitando Grafana-IP:3000 su un browser.

Vai a Configurazione > Origini dati.

Fare clic su Aggiungi origine dati.

Cerca e seleziona Prometeo.

Inserisci il nome come Prometheus e l'URL (Prometheushostname:9090) e fai clic su "Salva e prova". Se vedi "L'origine dati funziona ", hai aggiunto correttamente l'origine dati. Una volta terminato, vai su Crea > Importa.

Puoi configurare manualmente la dashboard o importarla caricando il file JSON. Un modello JSON per il monitoraggio Redis è disponibile nel collegamento seguente:

https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Grafana-Redis_Monitoring.json

Compila i campi e importa.

La dashboard di Grafana è pronta. Seleziona l'host e controlla se le metriche sono visibili. Non esitate a modificare e modificare la dashboard secondo necessità.

Conclusione

In questo tutorial hai imparato ad automatizzare la distribuzione di Redis Exporter sui tuoi server. Lo script inizia controllando se il file unit redis_exporter.service esiste già e termina in caso affermativo, evitando configurazioni ridondanti. Crea quindi un utente e un gruppo di sistema Prometheus per l'isolamento sicuro del servizio. Lo script scarica e installa i file binari di Redis Exporter, inserendoli in /usr/local/bin/ per la standardizzazione.

Successivamente, genera e configura un file di unità system (redis_exporter.service), specificando le impostazioni essenziali e le policy di riavvio. Lo script ricarica systemd per applicare la nuova configurazione, abilita l'avvio del servizio all'avvio e lo avvia immediatamente.

Automatizzando questi passaggi, lo script semplifica il processo di distribuzione, riduce al minimo l'errore umano e garantisce una configurazione coerente tra i server, fornendo una soluzione efficiente per integrare le metriche Redis nella tua infrastruttura di monitoraggio Prometheus.

Come passaggio successivo, puoi anche fare riferimento al nostro tutorial sul monitoraggio delle goccioline MySQL e MariaDB utilizzando Prometheus MySQL Exporter.

Articoli correlati: