Monitoren van Redis-dropletten met behulp van de Redis Exporter Service

Inleiding

Effectieve monitoren van Redis-databases is essentieel voor het behoud van optimale prestaties, het identificeren van potentiële knelpunten en het waarborgen van de algehele betrouwbaarheid van het systeem. Redis Exporter Service is een robuust hulpmiddel ontworpen om Redis-databases met behulp van Prometheus te monitoren.

Dit handleiding zal u door de complete instelling en configuratie van Redis Exporter Service leiden, waarmee u een monitorering oplossing eenvoudig kunt instellen. door deze handleiding te volgen, krijgt u een volledig operationele monitortoepassing voor het effectief monitoren van de prestatiescores van uw Redis-database.

Opmerking: Het gemiddelde instelingsduur voor deze handleiding is ongeveer 25 minuten.

Vereisten

Voordat u begint, zorg er voor dat u de volgende vereisten hebt:

  • U moet Redis-databaseën op een Ubuntu Droplet opzetten en draaien. U kunt zich richten op onze handleidingen over Hoe u Redis op Ubuntu installeert en beveiligt. De servers die u wilt monitoren moeten vanaf de machine bereikbaar zijn waar u plannen om de Redis Exporter Service te installeren.
  • U heeft SSH-toegang nodig tot de Redis-servers om de Redis Exporter Service te installeren en te configureren.
  • Prometheus MySQL Exporter werkt samen met Prometheus voor het halen van metrics en met Grafana voor visualisatie. Hier gebruiken we Prometheus en Grafana-afbeeldingen uit de DigitalOcean Markt om de database Droplets te monitoren.

Notitie: In deze handleiding zullen we de twee verschillende methodes doorlopen om de Redis Exporter Service in te stellen voor het monitoren van Redis-databases. U kunt kiezen tussen handmatige configuratie en scriptgebaseerde automatisering, elk aangepast aan verschillende voorkeuren en operationele vereisten. Volg de instructies voor elke methode om de Redis Exporter Service effectief op uw infrastructure in te stellen. Deze flexibiliteit staat u toe om de beste deploystrategie en operationele workflow aanpak te kiezen.

Methode 1: Handmatige Configuratie

gaan we in dit gedeelte verder met de handmatige configuratiemethode.

Maak Prometheus Systeemgebruiker en Groep

Maak een systeemgebruiker en groep aan met de naam “prometheus” om de exporterdienst te beheren.

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

Download en Installeer Redis Exporter

Download de nieuwste uitgave van Redis Exporter van GitHub, pak de gedownloade bestanden uit en verplaats het binary naar de /usr/local/bin/ directory.

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/

Verifieer de installatie van Redis Exporter

redis_exporter --version

Hier is de voorbeelduitvoer:

Configureer de systemd-dienst voor Redis Exporter

Maak een systemd-diensteenheidbestand aan om de Redis Exporter-dienst te beheren.

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

Voeg het volgende inhoud toe aan het bestand:

redis_exporter.service
[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

–log-format=txt \

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

–web.listen-address=:9121 \

–web.telemetry-path=/metrics

Herlaad systemd en start de Redis Exporter-dienst

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

Configureren van de Prometheus Droplet (Handmatige Methode)

Laat ons de Prometheus droplet configureren voor de handmatige configuratie.

Maak een backup van het bestand prometheus.yml

vi /etc/prometheus/prometheus.yml
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:

Voeg de Redis Exporter eindpunten toe die gescraped moeten worden

Meld u aan bij uw Prometheus server en voeg de Redis Exporter eindpunten toe die gescraped moeten worden.

Vervang de IP-adressen en poorten door uw Redis Exporter eindpunten (9121 is de standaard poort voor de Redis Exporter Service).

Dit is het einde van de handmatige configuratie. Nu gaan we door met de configuratie op basis van scripts.

Methode 2: Configureren met Scripts

U kunt dit ook behalve door twee scripts te laten draaien – één voor de doeldropletten en het andere voor de Prometheus droplet.

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

Laten we beginnen met het configureren van de Doel Dropletten.

chmod +x DO_Redis_Target_Config.sh

SSH maken naar de Doel Droplet.

./DO_Redis_Target_Config.sh

Download het Configuratiescript voor Doel door middel van de volgende opdracht uit te voeren:

Zodra het script is gedownload, krijg je executable permissions door de volgende opdracht uit te voeren:

Voer het script uit door de volgende opdracht uit te voeren:

De configuratie is klaar.

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

Opmerking: Als het bestand redis_exporter.service reeds bestaat, zal het script niet worden uitgevoerd.

chmod +x DO_Redis_Prometheus_Config.sh

Configureren van de Prometheus Droplet (Scriptmethode)

./DO_Redis_Prometheus_Config.sh

SSH maken naar de Prometheus Droplet en download het script met de volgende opdracht:

Zodra het script is gedownload, krijg je executable permissions door de volgende opdracht uit te voeren:

Voer het script uit door de volgende opdracht uit te voeren:

Voer het aantal Dropletten in dat u wilt toevoegen aan de monitoring.

Voer de hostnames en IP-adressen in.

De configuratie is klaar.

Als u ze heeft toegevoegd, controleer dan of de doelen zijn bijgewerkt door te navigeren naar de URL prometheushostname:9090/targets.

Opmerking: Als u een IP-adres invoert dat reeds is toegevoegd aan de monitoring, zal u worden gevraagd de gegevens opnieuw in te tekenen. Ook als u geen andere servers meer wilt toevoegen, kunt u 0 invoern om de script te verlaten.

Grafana configureren

Log in op het Grafana dashboard door te bezoeken Grafana-IP:3000 in uw browser.

Ga naar Configuratie > Data Bronnen.

Klik op Data bron toevoegen.

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

Zoek en selecteer Prometheus.

Voer een Naam in als Prometheus, en URL (Prometheushostname:9090) en klik op “Bewaren & Testen”. Als u “De data bron werkt” ziet, heeft u de data bron succesvol toegevoegd. Ga nadien naar Aanmaken > Importeren.

U kunt handmatig de dashboard configureren of de dashboard importeren door het JSON-bestand te uploaden. Een JSON-sjabloon voor de Redis-monitoring kan worden gevonden in de onderstaande link:

Vul de velden in en importeer.

Het Grafana dashboard is klaar. Selecteer de host en controleer of de meetgegevens zichtbaar zijn. U mag de dashboard vrijwel onbeperkt aanpassen en bewerken volgens behoeften.

Conclusie

In deze handleiding heb je geleerd hoe je de Redis Exporter op je servers kunt automatiseren. Het script begint door te controleren of de unitbestanden voor redis_exporter.service al bestaan en stopt met het uitvoeren als dat het geval is, om een redundante setup te vermijden. Vervolgens maakt het een Prometheus systeemgebruiker en -groep voor de veilige isolatie van diensten. Het script下载 en installeert de Redis Exporter binaries en plaatst ze in /usr/local/bin/ voor standaardisering.

Source:
https://www.digitalocean.com/community/tutorials/monitor-redis-droplet-using-redis-exporter