文章目录

  • 启动redis-export服务
  • 启动prometheus服务
  • 启动granfana服务
  • 测试报警

使用redis-exporter监控redis服务,并且使用prometheus收集数据,使用grafana展示数据。
监控报警利用alertmanager插件,报警信息发送钉钉消息。所使用的安装包可以 点击下载,提取码为: wdy3
下面简单说明监控操作。

启动redis-export服务

因为安装包是二进制形式,因此可以直接进行启动,启动指定如下两个参数:

/usr/local/redis_exporter/redis_exporter -redis.addr 10.9.68.46:6381 -web.listen-address :3389
-redis.addr: 指定redis服务的ip地址和端口号
-web.listen-address: 指定当前redis-exporter启动使用的端口信息
-redis.password: redis服务若是有密码的话,可用此参数指定redis的密码
启动prometheus服务

上面的安装包中prometheus是二进制形式,先解压,然后可以直接执行启动:
配置prometheus自动发现服务,这里配置prometheus自动发现targets目录下面的json文件,设置如下:

# my global config
global:scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configuration  # 配置报警插件端口,
alerting:alertmanagers:- static_configs:- targets:- 10.9.68.202:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:- "/usr/local/prometheus/rules/*.rule"# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: 'file_ds'file_sd_configs:- files:- targets/*.jsonrefresh_interval: 1m# metrics_path defaults to '/metrics'# scheme defaults to 'http'.# static_configs:# - targets: ['localhost:9090']

上面定义了一个任务名字file_ds,自动发现targets目录下面的json文件,自动发现的间隔为1分钟;在rules目录下面定义相应的监控信息,会在后面说明;在targets目录下面json文件格式如下:

cat ceshi.json
[{"labels": {"instance": "股票k线","addr": "10.9.68.46:6381"},"targets": ["10.9.68.202:3389"]},{"labels": {"instance": "股票k线","addr": "10.9.68.41:6381"},"targets": ["10.9.68.202:6382"]}
]

配置文件说明: instance和addr的参数会在grafana的界面上显示用于表示不同的redis服务,targets表示监听addr指向的redis服务的redis-exporter服务ip和端口信息,然后启动prometheus服务。

cd /usr/local/prometheus
./prometheus --config.file=prometheus.yml --web.external-url='http://10.9.68.202:9090' &
启动granfana服务

压缩包中的rpm包直接安装即可,然后启动granfana服务

systemctl start grafana-server

在grafana中导入压缩包中redis-exporter的模板文件,然后设定数据源为上面的prometheus的数据源,即可看到如下redis的监控信息。
#### 添加监控和钉钉报警
需要用到两个插件alertmanager和prometheus-webhook-dingtalk,安装包在上面的压缩包中含有。
1、启动dingtalk插件,直接解压对应的压缩包即可,然后启动即可,下面token为钉钉群机器人token。

[root@estest1 alertmanager]# cd /usr/local/prometheus-webhook-dingtalk/
(python27) [root@estest1 prometheus-webhook-dingtalk]#  ./prometheus-webhook-dingtalk --ding.profile='webhook1=https://oapi.dingtalk.com/robot/send?access_token=2f9aa0c7cc2bc28cd63c@@@@@@@@@@@@@@@@@@@@@@2e55bca72' --web.listen-address='10.9.68.202:8060' &
[1] 30100
(python27) [root@estest1 prometheus-webhook-dingtalk]# level=info ts=2021-05-07T02:16:39.894Z caller=main.go:62 msg="Starting prometheus-webhook-dingtalk" version="(version=1.4.0, branch=HEAD, revision=02fe8265a98ab4caaa78ebbed209d3f06b87b4a6)"
level=info ts=2021-05-07T02:16:39.894Z caller=main.go:63 msg="Build context" (gogo1.13.5,userroot@eb9f8d8f0437,date20191211-03:00:38)=(MISSING)
level=warn ts=2021-05-07T02:16:39.894Z caller=main.go:105 msg="DEPRECATION: Detected one of the following flags: --ding.profile, --ding.timeout, --template.file"
level=warn ts=2021-05-07T02:16:39.894Z caller=main.go:106 msg="DEPRECATION: Now working in compatibility mode, please consider upgrading your configurations"
level=info ts=2021-05-07T02:16:39.894Z caller=main.go:117 component=configuration msg="Loading templates" templates=
ts=2021-05-07T02:16:39.895Z caller=main.go:133 component=configuration msg="Webhook urls for prometheus alertmanager" urls=http://10.9.68.202:8060/dingtalk/webhook1/send
level=info ts=2021-05-07T02:16:39.896Z caller=web.go:210 component=web msg="Start listening for connections" address=10.9.68.202:8060

2、配置alertmanager服务,配置文件如下:

global:resolve_timeout: 5mroute:group_by: ['alertname']group_wait: 10sgroup_interval: 10srepeat_interval: 1mreceiver: 'DingDing'
receivers:
- name: 'DingDing'webhook_configs:- url: 'http://10.9.68.202:8060/dingtalk/webhook1/send'
inhibit_rules:- source_match:altername: 'redis'severity: 'critical'target_match:severity: 'warning'equal: ['alertname', 'dev', 'instance']

在prometheus的配置文件中指定了rule的位置,在rules目录下面定义告警的阈值及告警信息如下,创建一个redis.rule文件,内容如下:

cat redis.rule
groups:- name: redisrules:- alert: "内存报警"expr: (redis_memory_used_bytes /redis_memory_max_bytes) > 0.80for: 15slabels:severity: 1annotations:summary: "{{ $labels.addr }} 内存使用率超过80%"description: "内存使用百分比: {{ $value }}"

配置完成之后,启动alertmanager服务,如下:

(python27) [root@estest1 alertmanager]# cd /usr/local/alertmanager/
(python27) [root@estest1 alertmanager]# ./alertmanager --config.file alertmanager.yml --web.external-url=http://10.9.68.202:9093 &
测试报警

若是redis的内存使用率超过上面设置的阈值,则会自动发送告警信息,测试结果如下[为了触发报警,改变了阈值]:
#### 后续l
利用prometheus的自动发现,只要我们把相应exporter信息写入到对应targets目录下面,就可以自动发现监控的服务;redis-exporter和redis服务一一对应,可以写个web界面去管理这样的对应关系。

redis-exporter监控相关推荐

  1. redis常用监控命令

    redis常用监控命令 1.实时监控redis服务收到来自应用的所有命令 1 2 3 4 5 6 7 redis-cli 127.0.0.1:6379>monitor 1509964152.13 ...

  2. 如何使用 Blackbox Exporter 监控 URL?

    前言 监控域名和 URL 是可观察性的一个重要方面,主要用于诊断可用性问题.接下来会详细介绍如何使用 Blackbox Exporter 和 Prometheus 在 Kubernetes 中实现 U ...

  3. Redis 服务监控

    Redis现在在很多公司中应用已经很广泛了,但是如何监控redis,实时的观察redis的性能,下面就关于Redis的常用监控介绍一下. 一.使用redis自带的info命令和monitor命令 现在 ...

  4. 安装Redis Live监控服务

    redis live为监控redis服务的软件,带有监控web界面. 流传于互联网的各种教程,都有个巨大的让人搞不太清楚的问题.就是到底RedisStatsServer 6381端口哪里来的问题. 月 ...

  5. Redis性能监控指标汇总

    监控指标 性能指标:Performance 内存指标: Memory 基本活动指标:Basic activity 持久性指标: Persistence 错误指标:Error 性能指标:Performa ...

  6. Redis性能指标监控

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"加群",加入新技术 来源:8rr.co/8UY6 监控指标 性能指标:Performa ...

  7. redis启动没反应_Promethues如何针对Redis进行监控

    需求:采用redis_exporter 收集数据,promethus采集redis_exporter数据,granfana展示数据 一.简易安装redis yum install -y redisrp ...

  8. buffsize 缓冲区的大小多少合适_对于Redis性能指标监控!你了解多少?

    监控指标 性能指标:Performance 内存指标: Memory 基本活动指标:Basic activity 持久性指标: Persistence 错误指标:Error 监控方式 redis-be ...

  9. redis 常用监控指标

    文章目录 常用指标监控指标 内存指标: Memory 基本活动指标:Basic activity 持久性指标: Persistence 错误指标:Error 监控方式 性能监控 内存监控 基本活动指标 ...

  10. mysql用天兔监测什么_天兔监控服务器和mysql,redis等监控

    1:软件用途来源-官网 为所有数据库管理者.互联网企业数据库监控而设计 无需部署Agent,轻松监控1000+数据库实例,完善灵活的告警配置,详细的性能分析指标 部署环境: Linux环境:CentO ...

最新文章

  1. php 7编译 phar,编译安装php7
  2. python 如何获取系统当前时间?datetime.datetime.now() 打印格式化时间(可用作文件名的格式化时间strftime)
  3. friendly发音_friendly是什么意思_friendly怎么读_friendly翻译_用法_发音_词组_同反义词_友好的_亲密的-新东方在线英语词典...
  4. 整合Spring与Hibernate
  5. next主题设定代码高亮格式
  6. Jquery第二章常用方法,一二级菜单淡入淡出,event事件,复选框的全选反选第一节
  7. demo 网络运维_【运维面试】面试官:你们公司的docker主要用来做啥?
  8. Python中 的Hash表查找与List的index()对比
  9. 热门软件看点:哇嘎和它的对手们
  10. 档案系列包括图书馆管理与服务器,基于Web的图书馆档案管理系统设计与实现.pdf...
  11. 解决登录雅虎邮箱提示您在所用浏览器上启用Javascript 功能
  12. 英语数字转换器(POJ NO.1123)
  13. 字符串(昵称)过滤特殊符号和表情(通用)
  14. 没有安全删除硬件的解决
  15. 基于iproute命令集配置Linux网络(ip命令)
  16. 洞悉物联网发展1000问之为什么新零售不仅仅是无人零售?
  17. The server quit without updating PID file解决方法
  18. 【四足机器人】学习笔记 足端轨迹规划和步态规划
  19. 招标书和投标书的区别是什么?
  20. ios 边录音边放_iOS开发:AVPlayer实现流音频边播边存

热门文章

  1. 智慧档案馆十防一体化建设一些主要设计依据
  2. PostGIS系列课程之空间关系
  3. 1-3 Minecraft-Forge-1.16.5 Mod的开发(创造物品栏的实现)
  4. 八届矛盾文学奖获奖作品,你看过几部?
  5. windows不能执行打印任务
  6. 只会用马拉车求最长回文子串?太浪费啦!
  7. 怎样安装linux中文字体,Linux 下安装中文字体
  8. 【Go语言学习笔记】——Go语言常用内置包
  9. 小飞鱼通达商务平台课程 OA开发程序基础课 2月25日 mySQL基础作业
  10. Linux - 进阶 NFS 服务器 账户的映射问题 exportfs命令