目錄
3.1 下載prometheus-redis_rev1.json模板
雖然zabbix可以監控redis和其他組件的各項指標,但是zabbix的頁面展示不如grafana的頁面好看,所以這裏我們來展示grafana的dashboard頁面
對於redis的監控將會使用到以下組間grafana、prometheus以及redis_exporter。
1 prometheus的安裝
1.1 下載安裝包
這裏以centos操作系統爲例,到git上找到最新的版本進行下載安裝
目錄
3.2 下載prometheus-redis_rev1.json模板
1.2 配置Prometheus
解壓後在prometheus目錄下有一個名爲prometheus.yml的主配置文件。其中包含大多數標準配置及prometheus的自檢控配置,默認配置文件如下:
[root@wyl01 prometheus]# cat prometheus.yml
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ['localhost:9090']
1.3 systemd管理Prometheus服務
$ vim /etc/systemd/system/prometheus.service
[Unit]
Description=prometheus
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
1.4 啓動服務
$ systemctl start prometheus
Prometheus自帶一個比較簡單的Web也買你,可以查看錶達式搜索結果、報警配置、prometheus配置,exporter狀態等。自帶Web默認在http://ip:9090端口訪問
。
2 使用Prometheus監控redis服務
2.1 下載redis_exporter安裝包
下載安裝包,打開github然後下載最新的安裝包。這裏我們選擇v0.24.0,因爲最新的版本,沒有-redis.file參數,對多redis實例在grafana的dashboard中展示,無法所搜單個實例。
2.2 解壓安裝
# 解壓:
$ tar -xf redis_exporter-v0.24.0.linux-amd64.tar.gz -C /usr/local/prometheus
# 編輯redis.yml
[root@wyl01 prometheus]# cat redis.yml
# 添加以下內容
redis://192.168.52.128:7000
redis://192.168.52.128:7001
2.3 systemd管理redis_exporter服務
$ vim /etc/systemd/system/redis_exporter.service
[Unit]
Description=redis_exporter
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/prometheus/redis_exporter/redis_exporter -redis.file /usr/local/prometheus/redis.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
2.4 啓動服務
$ systemctl start redis_exporter
修改prometheus的配置文件,添加以下內容,然後重啓普羅米修斯服務
- job_name: 'redis'
static_configs:
- targets: ['localhost:9121']
重啓服務
$ systemctl restart prometheus
配置成功,我們在普羅米修斯的dashboard也頁面上可以看到,redis是UP狀態 。
我們在搜索框中直接輸入redis關鍵字,即可查詢到關於redis的所有的數據。
3 Grafana展示Prometheus獲取到的數據
Grafana是用於可視化大型測量數據的開源程序,它提供了強大和優雅的方式去創建、共享、瀏覽數據。Dashboard中顯示了你不同metric數據源中的數據。
對於prometheus獲取到的redis數據,我們就可以用Grafana來進行數據的展示。
3.1 grafana的安裝
wget https://dl.grafana.com/oss/release/grafana-6.0.2-1.x86_64.rpm
yum localinstall grafana-6.0.2-1.x86_64.rpm
剛安裝完需要重載systemd配置:systemctl daemon-reload
啓動服務:systemctl start grafana-server
查看狀態:systemctl status grafana-server
設置開機啓動: systemctl enable grafana-server.service
相關文件位置
- 訪問地址 IP:3000
- 賬號密碼 admin/admin
- 環境文件 /etc/sysconfig/grafana-server
- 日誌文件 /var/log/grafana
- 數據庫 /var/lib/grafana/grafana.db
- 配置文件 /etc/grafana/grafana.ini
安裝包信息
- 二進制文件: /usr/sbin/grafana-server init.d
- 腳本: /etc/init.d/grafana-server
- 環境變量文件: /etc/sysconfig/grafana-server
- 配置文件: /etc/grafana/grafana.ini
- 啓動項: grafana-server.service
- 日誌文件:/var/log/grafana/grafana.log
- 默認配置的sqlite3數據庫:/var/lib/grafana/grafana.db
3.2 下載prometheus-redis_rev1.json模板
wget https://grafana.com/api/dashboards/763/revisions/1/download
3.3 在grafana中導入json模板
接下來就是展示數據了,如果啓動多個redis實例,那麼這個列表就會展示出所有的redis實例,上面也說到用redis_exporter 0.24版本,有redis.file 參數,可以將所有的redis實例寫到一個文件中。