zoukankan      html  css  js  c++  java
  • 性能测试之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 # 指定该进程pidfilecluster-enabled yes # 启动集群模式cluster-config-file nodes7001.confcluster-node-timeout 5000 # 超时时间5sappendonly 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处,我们可以选择不同的集群节点)

    图片

    (安装包、文件等请加微信或者进群获取)

    图片

     

    ============================= 好好学习 ==========================
    > > > 1、咨询问题,请加作者微信: ren168632201
    > > > 2、性能测试从0到实战: https://www.cnblogs.com/uncleyong/p/12311432.html
    > > > 3、自动化测试实战: https://www.cnblogs.com/uncleyong/p/12016690.html
    > > > 4、测试基础汇总: https://www.cnblogs.com/uncleyong/p/10530261.html
    > > > 5、声明:如有侵权,请联系删除。
    ============================= 升职加薪 ==========================
  • 相关阅读:
    第三方包源码maven 下载
    Redis实现主从复制(转)
    Linq的优缺点
    async & await (转载)
    [转]抽象类与接口的区别及应用
    转载:C#中的泛型
    MVC导出数据到EXCEL新方法:将视图或分部视图转换为HTML后再直接返回FileResult
    C#中委托
    创建新的虚拟机
    GitHub上整理的一些工具[转载]
  • 原文地址:https://www.cnblogs.com/uncleyong/p/15202167.html
Copyright © 2011-2022 走看看