作为一款开源的 Redis 图形化监控工具,RedisLive 提供对 Redis 实例的内存使用情况,接收的客户端命令,接收的请求数量以及键进行监控。RedisLive 的工作原理基于 Redis 的 INFO 和 MONITOR 命令,通过向 Redis 实例发送 INFO 和 MONITOR 命令来获取 Redis 实例当前的运行数据。

RedisLive 提供的图形化展示界面如下图所示:

安装

RedisLive 使用 Python 实现,使用 Tornado 作为自己的 Web 服务器。运行 RedisLive 并不需要额外的编译过程。下载 RedisLive 的代码后,只须安装好依赖的相关 Python 扩展包就可以直接运行。
可以通过 Git 下载最新的 RedisLive 源代码:

git clone https://github.com/kumarnitin/RedisLive.git
进下下载后的 RedisLive 目录,可以看下 RedisLive 依赖的 Python 扩展包都已经写在 requirements.txt 文件中了。requirements.txt 的内容如下:

argparse==1.2.1
python-dateutil==1.5
redis
tornado==2.1.1
熟悉 Python 的朋友对于 requirements.txt 文件也一定感觉很亲切了,使用下面的命令可以安装里面的扩展包(指定豆瓣源来安装速度更快):

pip install -r requirements.txt -i http://pypi.douban.com/simple/
--trusted-host pypi.douban.com
运行

安装好依赖后,接下来就可以运行 RedisLive 了。进入 RedisLive/src 目录,可以看到 redis-live.conf.example文件,这个文件是 RedisLive 的示例配置文件,内容如下:

{
"RedisServers":
[
{
"server": "154.17.59.99",
"port" : 6379
},

{
"server": "localhost",
"port" : 6380,
"password" : "some-password"
}
],
"DataStoreType" : "redis",
"RedisStatsServer":
{
"server" : "ec2-184-72-166-144.compute-1.amazonaws.com",
"port" : 6385
},

"SqliteStatsStore" :
{
"path": "to your sql lite file"
}
}

RedisServers:监控的 Redis 实例列表,RedisLive 支持同时监控多个 Redis 实例
RedisStatsServer:用来存储监控数据的 Redis 实例,此配置不同于 RedisServers,RedisLive 并不监控 RedisStatsServer,RedisStatsServer 只是用作存储监控数据使用
DataStoreType:监控数据的存储方案,可以配置为redis或者sqlite
SqliteStatsStore:存储监控数据的 sqlite 配置
我们实例使用的redis-live.conf(需要去除.example后缀)置如下所示:

{
"RedisServers":
[
{
"server": "127.0.0.1",
"port" : 6379
}
],
"DataStoreType" : "sqlite",

"SqliteStatsStore" :
{
"path": "db/redislive.sqlite"
}
}

即监控的 Redis 实例为 127.0.0.1:6379 ,使用 sqlite 作用存储监控数据方案,sqlite 数据库路径为db/redislive.sqlite。

配置完成后,便可以将 RedisLive 运行起来。RedisLive 的运行包括两个部分(在 RedisLive/src 目录),redis-monitor.py用于向 Redis 实例发送 INFO 和 MONITOR 命令并获取其返回,redis-live.py 用于运行 Web 服务器。

我们首先启动redis-monitor.py脚本,并将duration参数设置为 120 秒。duration参数指定了监控脚本的运行持续时间,例如设置为 120 秒,即经过 120 秒后,监控脚本会自动退出,并在终端打印 shutting down… 的提示。

./redis-monitor.py --duration=120
接下来启动 Web 服务器:

./redis-live.py
打开浏览器,在地址栏输入 http://localhost:8888/index.html,按下回车后,便可以看到 Redis 实例的监控数据。

需要指出的是,由于redis-monitor.py脚本采用向 Redis 实例发送 MONITOR 命令和 INFO 命令的方式来取得监控数据,而 MONITOR 命令对于 Redis 实例的性能有较大影响,因此,对于生产环境下的redis-monitor.py的部署,需要设置一个较适宜的duration参数,并使用 crontab 来定时执行该脚本。

Redis 图形化监控方案 RedisLive 介绍的更多相关文章

  1. Redis 图形化监控方案 RedisLive

    一款开源的 Redis 图形化监控工具,界面如图所示 安装 首先安装python2 一般情况下系统自带 然后安装pip2 https://www.cnblogs.com/sea-stream/p/10 ...

  2. Redis图形化客户端管理软件推荐

    Redis是一个超精简的基于内存的键值对NOSQL数据库(key-value),一般对并发有一定要求的应用都用其储存session,乃至整个数据库.不过它公自带一个最小化的命令行式的数据库管理工具re ...

  3. Kubernetes图形化归纳总结基础介绍整理

    今天了解了下k8s,看了很多资料,自己归纳总结下,如果需要测试集群的话需要准备三台Linux服务器,一台做Master,其余两台作为Node仆从(MINION)节点, 先说下Node节点,就是宿主机器 ...

  4. Linux图形化监控网络流量:speedometer查看流量

    Speedometer是一个带宽控制台和对数带宽显示的文件下载进度监控,以及一个简单的命令行界面.其目的是测量和显示网络连接或数据存储在文件中的数据率. Speedometer 2.8该版本增加了一个 ...

  5. Redis图形化管理工具

    一.treeNMS Redis做为现在web应用开发的黄金搭担组合,工作中的项目大量使用了Redis,treeNMS是一款用于JAVA语言开发的Redis管理工具:treeNMS管理工具,直接到htt ...

  6. 用 monitorix 开启linux图形化监控

    # yum install monitorix # service monitorix starthttp://host:8080/monitorix/

  7. portainer图形化监控

    步骤1,在Swarm集群中创建一个新的覆盖网络:$ docker network create --driver overlay --attachable portainer_agent_networ ...

  8. Redis高速内存缓冲平台可视化监控之RedisLive配置实战

    一.引用 这两天在弄Reids高速缓存平台的图形化监控,由于对于Python并不是很熟悉,安装过程中遇到了不少问题,包括: 1.python必备安装包的安装问题 2.Redis Live界面显示问题 ...

  9. Sourcetree使用 - git图形化工具(三)

    前面两个章节总结了Sourcetree的安装与配置Sourcetree密钥,这个章节主要讲如何使用Sourcetree.以前呢,都是使用git Bash进行命令行方式进行操作git,感觉部分时间浪费在 ...

随机推荐

  1. mySQL使用实践

    1.虚拟机安装mySQL 服务器, 宿主机分别使用navicat工具和java代码 访问mySQL,组网图如下: 2. 查看mySQL的服务器状态,如下: 3. 服务器上查看数据库和数据表内容如下: ...

  2. IOS应用FFMPEG库

    1.引用资源 build-ffmpeg  ffmpeg库生成 -sh开源地址: https://gist.github.com/m1entus/6983547 iFrameExtractor ffmp ...

  3. ListView如何优化

    1.ListView 如何提高其效率? 当 convertView 为空时,用 setTag()方法为每个 View 绑定一个存放控件的ViewHolder 对象. 当 convertView 不为空 ...

  4. sharepoint 创建个人网站

    One of the SharePoint 2013 puzzle pieces which got some major improvements are My Sites, User Profil ...

  5. LINUX 笔记-特定shell变量

    $# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个 $$ 脚本运行的当前进程ID号 $! 后台运行的最后一个进程的进程ID号 $@ 与$*相 ...

  6. Memcached查找命令

    Memcached各个查找命令的语法格式都类似,且有相同的参数和参数含义,先将可能出现的各个参数的意义说明如下 key:键值 key-value 结构中的 key,用于查找缓存值. noreply(可 ...

  7. Linux系列教程(五)——Linux链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  8. 【20171027早】alert(1) to win 第9,10,11,12题

    人在江湖,不服就干! 第9题: function escape(s) { function htmlEscape(s) { return s.replace(/./g, function(x) { r ...

  9. ASP.NET没有魔法——Identity与Owin

    上篇文章介绍了如何在ASP.NET MVC项目中引入Identity组件来实现用户注册.登录及身份验证功能,并且也提到了Identity是集成到Owin中的,本章就来介绍一下什么是Owin以及如何使用 ...

  10. V6厂最新V4版本卡地亚蓝气球大号42mm男表|价格报价|

    大家好!为大家带来一款贵族气质的V6厂卡地亚蓝气球大号42mm男表!众所周知卡地亚品牌给人的印象是非常尊贵.奢华的,而且卡地亚蓝气球系列的表款都有着极高的识别度,而且每一款都是极受欢迎的热门腕表,接下 ...