监控Redis集群,有两种方法
前提条件
redis集群:已搭建三主三从(三台主机)
prometheus、grafana已安装
三台主机ip: 192.168.0.39,192.168.0.164,192.168.0.68
第一种方法和第二种方法
第一种方法需要再安装 redis_exporter和prometheus,过程较麻烦,第二种方法就简单很多
使用方法一的话,prometheus搭配alertmanager可以实现告警功能,使用方法二还没找到咋配置告警功能
优先选择使用第二种方法
第一种方法
数据路径:redis集群-> redis_exporter -> prometheus -> grafana
安装redis_exporter(三台都要操作)
cd /usr/local/src
wget https://github.com/oliver006/redis_exporter/releases/download/v1.31.4/redis_exporter-v1.31.4.linux-amd64.tar.gz
tar -zxv -f redis_exporter-v1.31.4.linux-amd64.tar.gz -C /usr/local/
cd /usr/local/
mv redis_exporter-v1.31.4.linux-amd64/ redis_exporter
groupadd prometheus
useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
chown -R prometheus.prometheus /usr/local/redis_exporter
系统system启动(三台都要操作,以此类推后面节点ip和端口根据实际情况修改)
# 一台主机2个节点
vim /usr/lib/systemd/system/redis_exporter6379.service
[Unit]
Description=redis_exporter6379
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/redis_exporter/redis_exporter -redis.addr 192.168.0.68:6379 -redis.password 123456 -web.listen-address 192.168.0.68:59121
Restart=on-failure
[Install]
WantedBy=multi-user.target
vim /usr/lib/systemd/system/redis_exporter6380.service
[Unit]
Description=redis_exporter6380
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/redis_exporter/redis_exporter -redis.addr 192.168.0.68:6380 -redis.password 123456 -web.listen-address 192.168.0.68:59122
Restart=on-failure
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start redis_exporter6379
systemctl start redis_exporter6380
systemctl status redis_exporter6379
systemctl status redis_exporter6380
systemctl enable redis_exporter6379
systemctl enable redis_exporter6380
ss -tulnp | grep 5912
修改Prometheus配置
- job_name: 'redis-cluster'
scrape_interval: 5s
static_configs:
- targets:
- redis://192.168.0.39:6379
- redis://192.168.0.39:6380
- redis://192.168.0.164:6379
- redis://192.168.0.164:6380
- redis://192.168.0.68:6379
- redis://192.168.0.68:6380
metrics_path: /scrape
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 192.168.0.39:59121
- job_name: 'redis_exporter'
scrape_interval: 5s
static_configs:
- targets:
- 192.168.0.39:59121
- 192.168.0.39:59122
- 192.168.0.164:59121
- 192.168.0.164:59122
- 192.168.0.68:59121
- 192.168.0.68:59122
重新启动Prometheus服务后再访问,查看是否正常
在grafana中添加Prometheus数据源
在Grafana 中导入redis集群使用的dashboard
ID: 14615 面板效果
ID:14661 面板效果
第二种方法
数据路径:redis集群-> redis data source -> grafana
使用 Grafana 的 Redis Data Source 插件监控 Redis
这里使用的数据源不是Prometheus,而是redis集群,需要安装redis数据源插件,否则grafana里找不到redis数据源
官网地址:https://grafana.com/grafana/plugins/redis-datasource/
grafana-cli plugins install redis-datasource
重启Grafana :systemctl restart grafana-server,添加redis数据源
选择redis集模式,添加6个redis集群节点,设置redis集群访问密码。
添加使用数据源本身提供的dashboard,使用其他dashboard不显示数据
效果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2020-11-20 CentOS yum如何安装php7.4