Let’s proceed with the manual configuration method in this section.
Create a system user and group named “prometheus” to manage the exporter service.
sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus
Download the latest release of Redis Exporter from GitHub, extract the downloaded files, and move the binary to the /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/
redis_exporter --version
Here is the sample Output:
Create a systemd service unit file to manage the Redis Exporter service.
sudo vim /etc/systemd/system/redis_exporter.service
Add the following content to the file:
[Unit]Description=Prometheus Redis ExporterDocumentation=https://github.com/oliver006/redis_exporterWants=network-online.targetAfter=network-online.target[Service]Type=simpleUser=prometheusGroup=prometheusExecReload=/bin/kill -HUP $MAINPIDExecStart=/usr/local/bin/redis_exporter --log-format=txt --namespace=redis --web.listen-address=:9121 --web.telemetry-path=/metricsSyslogIdentifier=redis_exporterRestart=always[Install]WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable redis_exporter
sudo systemctl start redis_exporter
Let’s configure the Prometheous droplet for the manual configuration.
cp /etc/prometheus/prometheus.yml /etc/prometheus/prometheus.yml-$(date '%d%b%Y-%H:%M')
Log in to your Prometheus server and add the Redis Exporter endpoints to be scraped.
Replace the IP addresses and ports with your Redis Exporter endpoints (9121 is the default port for 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:
This is the end of the manual configuration. Now, let’s proceed with the script-based configuration.
You can also achieve this by running two scripts - one for the target droplets and the other for the Prometheus droplet.
Let’s start by configuring the Target Droplets.
SSH into the Target Droplet.
Download the Target Configuration script by using the following command:
wget https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Redis_Target_Config.sh
Once the script is downloaded, ensure it has executable permissions by running:
chmod x DO_Redis_Target_Config.sh
Execute the script by running:
./DO_Redis_Target_Config.sh
The configuration is complete.
Note: If the redis_exporter.service file already exists, the script will not run.
SSH into the Prometheus Droplet and download the script by using the following command:
wget https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Redis_Prometheus_Config.sh
Once the script is downloaded, ensure it has executable permissions by running:
chmod x DO_Redis_Prometheus_Config.sh
Execute the script by running:
./DO_Redis_Prometheus_Config.sh
Enter the number of Droplets to add to monitoring.
Enter the hostnames and IP addresses.
The configuration is complete.
Once added, check whether the targets are updated by accessing the URL prometheushostname:9090/targets.
Note: If you enter an IP address already added to the monitoring, you will be asked to enter the details again. Also, if you do not have any more servers to add, you can enter 0 to exit the script
Log into the Grafana dashboard by visiting Grafana-IP:3000 on a browser.
Go to Configuration > Data Sources.
Click on Add data source.
Search and Select Prometheus.
Enter Name as Prometheus, and URL (Prometheushostname:9090) and click “Save & Test”. If you see “Data source is working”, you have successfully added the data source. Once done, go to Create > Import.
You can manually configure the dashboard or import the dashboard by uploading the JSON file. A JSON template for Redis monitoring can be found in the below link:
https://solutions-files.ams3.digitaloceanspaces.com/Redis-Monitoring/DO_Grafana-Redis_Monitoring.json
Fill in the fields and Import.
The Grafana dashboard is ready. Select the host and check if the metrics are visible. Please feel free to modify and edit the dashboard as needed.
The above is the detailed content of Monitoring Redis Droplets Using Redis Exporter Service. For more information, please follow other related articles on the PHP Chinese website!