性能测试之redis集群监控环境搭建:prometheus + redis_exporter + grafana
性能测试之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、下载
wget https://github.com/prometheus/prometheus/releases/download/v2.19.1/prometheus-2.19.1.linux-amd64.tar.gz
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处,我们可以选择不同的集群节点)
__EOF__
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!