Prometheus监控redis使用的是redis_exporter, 作者GitHub: https://github.com/oliver006/redis_exporter

需要说明的是: redis_exporter 对于redis集群的监控表现不是太好, 作者建议为每个redis 实例启动一个 redis_exporter, 如果一个服务器节点启动了多个redis进程, 就需要启动多个 redis_exporter

如果采用一个redis_exporter 采集多个 redis node 会导致其中一个 redis node 连不上.

1. redis_exporter安装配置

# 下载redis_exporter
wget https://github.com/oliver006/redis_exporter/releases/download/v1.3.4/redis_exporter-v1.3.4.linux-amd64.tar.gz
# 解压
tar xzf redis_exporter-v1.3.4.linux-amd64.tar.gz
# 删除下载的文件
rm -f redis_exporter-v1.3.4.linux-amd64.tar.gz
# 安装redis_exporter
mv redis_exporter-v1.3.4.linux-amd64 /usr/local/
ln -sv /usr/local/redis_exporter-v1.3.4.linux-amd64 /usr/local/redis_exporter

2. redis_exporter启动

# 直接启动。
## 无密码
./redis_exporter redis//192.168.11.110:6379 &
## 有密码
redis_exporter -redis.addr 192.168.11.111: -redis.password

启动参数说明:

  • -redis.addr:指明 Redis 节点的地址,默认为 redis://localhost:6379(如果有多个redis实例, redis_exporter作者建议启动多个redis_exporter进程来进行监控数据获取)
  • -redis.password:验证 Redis 时使用的密码;
  • -redis.file:包含一个或多个redis 节点的文件路径,每行一个节点,此选项与 -redis.addr 互斥。
  • -web.listen-address:监听的地址和端口,默认为 0.0.0.0:9121

3. 配置redis_exporter为系统服务方式启动

# 添加redis_exporter启动用户
groupadd prometheus
useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
# 创建redis_exporter系统服务配置文件及权限调整
touch /usr/lib/systemd/system/redis_exporter.service
chown prometheus:prometheus /usr/lib/systemd/system/redis_exporter.service
chown -R prometheus:prometheus /usr/local/redis_exporter*
vim /usr/lib/systemd/system/redis_exporter.service # 将如下内容写入到redis_exporter.service文件中
[Unit]
Description=redis_exporter
Documentation=https://github.com/oliver006/redis_exporter
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/redis_exporter/redis_exporter -redis.addr 192.168.11.110:6 -redis.password 0NZcyqRqLUteci7D
Restart=on-failure
[Install]
WantedBy=multi-user.target

然后执行如下命令:

# 重载配置
systemctl daemon-reload
# 设置开机启动
systemctl enable redis_exporter
启动redis_exporter
systemctl start redis_exporter
# 查看redis_exporter启动状态
systemctl status redis_exporter
ss -tnl|grep
netstat -tlnp |grep redis_exporte
tcp6 ::: :::* LISTEN /redis_exporte

至此, redis服务器端的redis_exporter已安装配置完成, 接下来配置Prometheus server, 将redis_exporter采集到的数据获取过来, 然后配置到Grafana中展示

4. 配置Prometheus server

4.1 加入redis_exporter配置

vim /usr/local/prometheus/prometheus.yml

将如下内容加入到Prometheus配置文件中

  - job_name: 'PRO_REDIS_CULSTER'
static_configs:
- targets:
- redis://192.168.11.110:6379
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.11.110:
## config for scraping the exporter itself
- job_name: 'redis_exporter'
static_configs:
- targets:
- 192.168.11.110:

或者添加如下配置到Prometheus配置文件中

  - job_name: 'redis'
scrape_interval: 10s
static_configs:
- targets:
- ['192.168.11.110:9121']

4.2 重新加载Prometheus server配置

curl -X POST http://10.86.78.175:9090/-/reload

5. 配置Grafana展示

redis_exporter 在 Grafana 上为我们提供好了 Dashboard 模板:https://grafana.com/dashboards/763

根据文章https://www.cnblogs.com/miaocbin/p/12009974.html中描述的方法, 导入redis看板.

prometheus监控redis,redis-cluster的更多相关文章

  1. Prometheus监控 Redis & Redis Cluster 说明

    说明 在前面的Prometheus + Grafana 部署说明之「安装」文章里,大致介绍说明了Prometheus和Grafana的一些安装使用,现在开始如何始部署Prometheus+Grafan ...

  2. openresty(完整版)Lua拦截请求与响应信息日志收集及基于cjson和redis动态路径以及Prometheus监控(转)

    直接上文件 nginx.conf #运行用户和组,缺省为nobody,若改为别的用户和组,则需要先创建用户和组 #user wls81 wls; #开启进程数,一般与CPU核数等同 worker_pr ...

  3. Prometheus 监控 Redis 集群的正确姿势

    Prometheus 监控Redis的正确姿势(redis集群) Prometheus 监控 Redis cluster,其实套路都是一样的,使用 exporter. exporter 负责采集指标, ...

  4. 安装prometheus+grafana监控mysql redis kubernetes等

    1.prometheus安装 wget https://github.com/prometheus/prometheus/releases/download/v1.5.2/prometheus-1.5 ...

  5. [转帖]安装prometheus+grafana监控mysql redis kubernetes等

    安装prometheus+grafana监控mysql redis kubernetes等 https://www.cnblogs.com/sfnz/p/6566951.html plug 的模式进行 ...

  6. Grafana+Prometheus系统监控之Redis

    REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C语言编写.遵守B ...

  7. 二 prometheus 监控 Redis

    Prometheus 监控Redis需要用到redis_exporter客户端, Prometheus -> redis_exporter这个模式, 类似监控Mysql 一个思路. 1 ) 设置 ...

  8. prometheus监控redis

    下载redis_exporter插件 代理插件不一定非要安装在redis端 wget https://github.com/oliver006/redis_exporter/releases/down ...

  9. Zabbix监控Tomcat,Redis

    一 Tomcat监控 1.1.1 Tomcat 端配置 JMX 编辑catalina.sh文件,配置如下: CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.m ...

随机推荐

  1. Python socket编程 (2)--实现文件验证登入

    可以实现从客户端输入账号和密码然后发送到服务器进行验证,实现用户登入校正操作. 服务器: import socket import json server = socket.socket() serv ...

  2. 17 SUMIF函数、countif函数、averagif函数

    情景 按买家求他们的消费各是多少. 可以考虑使用分类汇总来做,但这里我们使用函数sumif来做. SUMIF函数 格式:=SUMIF(条件列表,匹配条件,数据区) 该函数这样理解:按照匹配条件,从条件 ...

  3. WUSTOJ 1305: 最短路(Java)

    题目链接:

  4. 数据结构-链式栈c++

    栈的最基本特点先进后出,本文简单介绍一下用c++写的链式栈 头文件 #ifndef LINKEDSTACK_H #define LINKEDSTACK_H template<class T> ...

  5. mininet:使用vxlan连接两台虚拟机的网络topo

    需改虚拟机的网络适配器,将其改为host-only 尝试ping宿主机ip地址,此时能够ping同与虚拟机相连的虚拟网卡ip地址,无法ping同其他网卡ip地址 在虚拟机和宿主机中创建网络topo 在 ...

  6. springboot注册到consul中报错:Spring MVC found on classpath, which is incompatible with Spring Cloud

    今天在做springboot整合成springCloud并注册到consul中时,发现若注册到consule中成功 则不能启动swagger,且不能提供任何API服务,要是能提供API服务则不能注册到 ...

  7. Consul 注册中心介绍

    在 Spring Cloud 体系中,几乎每个角色都会有两个以上的产品提供选择,比如在注册中心有:Eureka.Consul.zookeeper.etcd 等:网关的产品有 Zuul.Spring C ...

  8. Codeforces-975C - Valhalla Siege 前缀和 思维

    C. Valhalla Siege time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  9. VS.NET(C#)--2.6_ASP.NET服务器控件层次结构

    ASP.NET服务器控件层次结构 语法 <asp:ControlType Id="ControlID" Rubat="Server" Property=& ...

  10. Ubuntu install android studio

    Ubuntu install android studio 1. 安装 openjdk8,并在配置文件 /etc/profile 中,追加如下内容: sudo aptitude install ope ...