Redis现在在业务中应用已经很广泛了,但是如何监控redis,实时的观察redis的性能,却很少的提及,现在常见的监控方案基本上都是使用redis自带的info命令和monitor命令获取相关信息,然后提取出来显示。
测试环境:
redis版本:2.4.17
IP:10.20.111.188
1 redis-faina
一个使用redis自带命令monitor的输出结果做分析的python脚本,在命令行下使用,可以做实时分析使用。
官网:https://github.com/Instagram/redis-faina
下载试用:
1
2
3
4
|
cd / opt / test
git clone https: / / github.com / Instagram / redis - faina.git
cd redis - faina /
redis - cli - p 6379 MONITOR | head - n 100 | . / redis - faina.py - - redis - version = 2.4
|
测试结果如下:
可以看到一些实时的数据,并且有一定的统计数据,可以作为一个命令行工具使用。推荐使用,不过redis版本要大于2.4。
2 redis-live
一个用来监控redis实例,分析查询语句并且有web界面的监控工具,python编写。
官网:https://github.com/nkrode/RedisLive
下载试用:
运行环境依赖包安装:http://www.nkrode.com/article/real-time-dashboard-for-redis
redis-live安装:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
cd / root
git clone https: / / github.com / nkrode / RedisLive.git
cd RedisLive / src
###修改redis-live.conf文件 { "RedisServers" :
[
{
"server" : "10.20.111.188" ,
"port" : 6379
}
],
"DataStoreType" : "redis" ,
"RedisStatsServer" :
{
"server" : "10.20.111.188" ,
"port" : 6380
},
"SqliteStatsStore" :
{
"path" : "to your sql lite file"
}
} ###修改完毕 ###启动监控服务,每30秒监控一次 . / redis - monitor.py - - duration = 30
###再次开启一个终端,进入/root/RedisLive/src目录,启动web服务 . / redis - live.py
|
在浏览器输入: http://10.20.111.188:8888/index.html 即可看到下图:
一个web界面,可以同时监控多个redis实例,做集中监控比较好。
3 redis-stat
一个用ruby写成的监控redis的程序,基于info命令获取信息,而不是通过monitor获取信息,性能应该比monitor要好。
官网:https://github.com/junegunn/redis-stat
运行环境安装:
1
2
|
apt - get install ruby
apt - get install rubygems
|
redis-stat安装:
1
2
3
4
5
|
cd / root
git clone https: / / github.com / junegunn / redis - stat.git
cd / root / redis - stat / bin
###./redis-stat --help 可以看到使用帮助 . / redis - stat 1
|
下面看看redis-stat的具体用法
1
2
3
4
5
6
7
8
9
10
11
12
13
|
usage: redis - stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
- a, - - auth = PASSWORD Password
- v, - - verbose Show more info
- - style = STYLE Output style: unicode |ascii
- - no - color Suppress ANSI color codes
- - csv = OUTPUT_CSV_FILE_PATH Save the result in CSV format
- - server[ = PORT] Launch redis - stat web server (default port: 63790 )
- - daemon Daemonize redis - stat. Must be used with - - server option.
- - version Show version
- - help Show this message
|
redis-stat命令行模式:
1
2
3
4
5
6
7
|
redis - stat
redis - stat 1
redis - stat 1 10
redis - stat - - verbose
redis - stat localhost: 6380 1 10
redis - stat localhost localhost: 6380 localhost: 6381 5
redis - stat localhost localhost: 6380 1 10 - - csv = / tmp / output.csv - - verbose
|
redis-stat web模式:
1
2
3
|
redis - stat - - server
redis - stat - - verbose - - server = 8080 5
redis - stat - - server - - daemon
|
效果如下:
运行web模式
1
2
|
cd / root / redis - stat / bin
. / redis - stat - - server = 8080 5 - - daemon
|
在浏览器输入: http://10.20.111.188:8080/ 结果如下:
不错的工具,既有命令行又有web界面,可以放到后台运行,数据比redis-live感觉直观 ,ruby开发的,唯一的缺点是如果同时监控多个redis实例,不能单独显示每一个实例的数据信息,貌似是总和。
4 redis-monitor
一个国人用java写的,官网的是在win下编译的,看着不错,不过我在linux下没调试起来...
http://my.oschina.net/guol/blog/182265
官网:https://github.com/litiebiao2012/redis-monitor
个人感觉,做集中监控可以使用redis-live,在命令行使用可以使用redis-stat,也可以根据自己的情况自行编写,总之就是根据info和monitor命令获取并展示信息。
http://my.oschina.net/guol/blog/182265
相关推荐
在“redis监控模板-配置-脚本.zip”压缩包中,包含了一些关键组件,用于帮助Zabbix监控Redis实例: 1. **redis.conf**:这是Redis服务器的主要配置文件,包含了Redis服务器的所有设置。例如,你可以通过修改`bind`...
因此,设计一个高效的Redis集群方案成为了解决这些问题的关键。本文将详细介绍几种常见的Redis集群方案,并分析各自的优缺点,为读者在实际部署时提供参考。 早期的Redis集群解决方案中,客户端分片是最常见的一种...
将两者结合,配合Grafana的可视化能力,可以构建出一个高度自定义的Redis监控解决方案。通过这种方式,你可以获取到详细的性能指标,并根据需求设置报警规则。 6. Elastic Stack (Elasticsearch, Logstash, Kibana)...
配置Zabbix监控Redis的方案一:使用Zabbix内置的Redis监控模板。Zabbix提供了现成的Redis监控模板,包含了各种关键性能指标,如内存使用、命令执行速率、连接数等。步骤如下: 1. 在Zabbix服务器上安装Redis监控所需...
该项目是一款基于Java和前端技术的Redis监控与故障转移解决方案源码,包含810个文件,其中包含201个CSS文件、148个PNG图片、145个Java源文件、96个JavaScript文件、88个GIF图片、45个XML文件、20个属性文件、18个...
Redis是一款高性能的键值数据库,常用于数据缓存、消息队列等场景。在大型分布式系统中,为了保证高可用性和可扩展性,通常会采用Redis...因此,对于任何使用Redis集群的企业或项目,都应当重视并配备相应的监控方案。
Grafana提供了丰富的仪表板模板,可以快速创建展示MySQL和Redis监控的图表。 4. **监控指标**:通过Prometheus和Grafana,你可以监控MySQL和Redis的CPU使用率、内存使用量、QPS(每秒查询数)、延迟、连接数等关键...
首先,我们需要在Zabbix服务器上安装相应的Redis监控插件。在本例中提到的是"redis4bix",它模仿了"db4bix"插件的模式,用于收集Redis的数据。安装过程通常包括以下几个步骤: 1. **下载和解压插件**:获取"redis4...
"Ecology&Emessage&Emobile集群+redis部署方案"就是一个这样的实践,它涵盖了生态系统建设、消息服务、移动应用以及Redis缓存的集成部署。接下来,我们将深入探讨这个方案中的核心知识点。 首先,"Ecology"在这里指...
2. **Redis监控指标**: 对于Redis,常见的监控指标包括但不限于: - 连接数(`INFO clients`) - 内存使用情况(`INFO memory`) - 操作命令统计(`INFO commandstats`) - 数据库键值数量(`INFO keyspace`)...
哨兵是Redis提供的高可用解决方案的一部分,它负责监控Redis服务器的状态,并在主服务器出现故障时自动进行故障转移操作,确保服务的持续可用性。 **3.1 安装与配置** 哨兵本身也是Redis的一个组件,但需要独立...
在本文中,我们将探讨如何构建一个自定义的Redis监控系统。 首先,我们可以利用开源工具redis-stat来获取基础的监控信息。然而,为了满足更复杂的需求,我们需要解析Redis的INFO命令输出,从中提取关键数据,以实现...
监控Redis的负载和性能,根据需要调整配置参数。 这种Session共享方案的优势在于,Redis作为一个中心化的Session存储,减少了服务器之间的通信开销,提高了系统的可扩展性。同时,由于Redis支持多线程访问,因此在...
5. **故障恢复与高可用**: Codis通过心跳检测机制监控各个组件的状态,当检测到某个Redis实例失效时,会自动将流量切换到其他健康的节点,保证服务的连续性。同时,Zookeeper或Etcd的集群特性也提供了冗余和故障...
### Redis主备部署方案详解 #### 一、概述 Redis是一种高性能的键值存储系统,在很多应用场景中都需要保证数据的高可用性和持久性。为了达到这一目标,通常会采用主备复制的方式部署Redis,以此来确保即使在主节点...
Redis 两主部署高可用性解决方案 Redis 作为一个高性能的 NoSQL 数据库,广泛应用于各种行业的数据存储和缓存中。然而,Redis 的高可用性是企业级应用的关键所在。因此,本文将详细介绍 Redis 两主部署的实现方案,...
另外,一些开源监控工具如Prometheus和Grafana,以及Spring Boot Actuator等,提供了集成Redis监控的解决方案,可以直接在Java应用中引入这些组件,实现更全面、可视化的Redis监控。 总的来说,通过Java编程,结合...