性能测试之redis集群监控环境搭建:prometheus + redis_exporter + grafana
搭建redis集群
1、环境
操作系统:centos7.4
redis版本:redis-5.0.4
说明:一台云服务器(云服务器抢购地址)模拟6个redis节点,3个master,3个slave
redis安装:
https://www.cnblogs.com/uncleyong/p/9882843.html
2、创建集群节点目录
mkdir /usr/local/redis_cluster
cd /usr/local/redis_cluster/
mkdir -p 7001/data 7002/data 7003/data 7004/data 7005/data 7006/data
3、第一个节点配置
cd 7001
cp ~/myfile/redis-5.0.4/redis.conf ./
vim redis.conf
port 7001 # 节点端口号
daemonize yes # 以后台进程的方式启动redis实例
bind 172.16.45.250 # 实例绑定当前机器IP地址
dir /usr/local/redis-cluster/7001/data/
pidfile /var/run/redis_7001.pid # 指定该进程pidfile
cluster-enabled yes # 启动集群模式
cluster-config-file nodes7001.conf
cluster-node-timeout 5000 # 超时时间5s
appendonly yes # 开启aop日志
requirepass test123 # master开启密码保护
4、其余节点配置
复制配置文件:
cp redis.conf ../7002/
cp redis.conf ../7003/
cp redis.conf ../7004/
cp redis.conf ../7005/
cp redis.conf ../7006/
批量替换,比如修改7002的配置文件
:%s/7001/7002/g
5、启动所有redis实例
写一个脚本
vim start-all-redis.sh
cd /usr/local/redis/bin/
./redis-server /usr/local/redis_cluster/7001/redis.conf
./redis-server /usr/local/redis_cluster/7002/redis.conf
./redis-server /usr/local/redis_cluster/7003/redis.conf
./redis-server /usr/local/redis_cluster/7004/redis.conf
./redis-server /usr/local/redis_cluster/7005/redis.conf
./redis-server /usr/local/redis_cluster/7006/redis.conf
添加执行权限:chmod +x start-all-redis.sh
./start-all-redis.sh
查看进程
6、创建集群
./redis-cli -a test123 --cluster create --cluster-replicas 1 172.16.45.250:7001 172.16.45.250:7002 172.16.45.250:7003 172.16.45.250:7004 172.16.45.250:7005 172.16.45.250:7006
--cluster-replicas 1,表示主从复制比例为 1:1,即一个主节点对应一个从节点
7、操作
连接到集群的某个节点:./redis-cli -a test123 -c -h 172.16.45.250 -p 7001
集群节点
集群信息
设置值,放到7002端口节点了
搭建prometheus
1、下载
2、安装、配置
tar -zxvf prometheus-2.19.1.linux-amd64.tar.gz -C /usr/local/
配置
改为如下(正确的方式是添加一个node,才在下面添加job,因为我们启动node的服务时,可以看到服务端口)
3、启动服务
./prometheus
Prometheus内置了一个web界面,我们可通过http://ip:9090进行访问
搭建redis_exporter
1、下载https://github.com/oliver006/redis_exporter/releases/download/v1.8.0/redis_exporter-v1.8.0.linux-amd64.tar.gz
2、解压
tar -zxvf redis_exporter-v1.8.0.linux-amd64.tar.gz -C /usr/local/
3、启动服务
./redis_exporter -redis.addr localhost:7001 -redis.password test123
4、在prometheus.yml中加入job
重启后,可以看到redis集群的状态均为UP
搭建grafana
tar -zxvf grafana-6.7.3.linux-amd64.tar.gz -C /usr/local/
默认读取conf下的的默认配置文件defaults.ini
修改配置文件grafana.ini中端口为3001
然后启动服务的时候,指定配置文件:
./grafana-server --config=../conf/grafana.ini
然后就是可以访问了:http://IP:3001
添加数据源
选择Prometheus
输入URL
保存并测试
成功
导入json模板
效果图(下图左上角instance处,我们可以选择不同的集群节点)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix