redis运行状态图形化监控工具 — RedisLive
在Centos中部署redis运行状态图形化监控工具 — RedisLive
写在前面
前两天看到张善友老师的一篇文章《先定个小目标, 使用C# 开发的千万级应用》,里面给出了一张腾讯OA基础服务中redis运行情况的一张监控图,然后想到自己的项目中前不久也上了redis缓存,所以也想找个监控工具。搜索一番,决定使用RedisLive来做监控。
和RedisLive有关的信息
RedisLive是由python编写的并且开源的图形化监控工具,非常轻量级,核心服务部分只包含一个web服务和一个基于redis自带的info命令以及monitor命令的监控服务,界面上只有一个基于BootStrap的web界面,非常简洁明了。除此之外,它还支持多实例监控,切换方便,而且配置起来也非常容易。监控信息支持redis存储和持久化存储(sqlite)两种方式。开源地址为:https://github.com/nkrode/RedisLive。
部署过程
这里继续使用之前配置好的centos环境,配置步骤点这里。Linux系统通常都已经装好了python环境,所以我们就不用额外再装一次,运行命令:
python –V
可以查看系统中的python版本。由于RedisLive是依赖于redis服务和web服务的,所以我们要先安装一些依赖包。
Python中的包管理工具是pip,默认情况下centos是没有安装pip的,所以先装好pip这个工具方便后面使用。
打开Xshell,连接上虚拟机,输入命令下载安装包:
wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz
解压压缩包:
tar zvxf 1.5.5.tar.gz #解压文件
进入到pip文件目录:
cd pip-1.5.5
执行安装命令:
python setup.py install
然后会看到一大堆的安装信息快速闪过,看到最后输出
Finished processing dependencies for pip==1.5.5
就表示安装成功了。
如果看到安装失败输出错误信息:

Traceback (most recent call last): File "setup.py", line 31, in <module> from setuptools import setup, find_packages ImportError: No module named setuptools

说明有一个依赖工具setuptools缺失,返回根目录下载setuptools安装包:
cd ~ //返回根目录 wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg //下载安装包
然后执行:
sh setuptools-0.6c11-py2.7.egg
安装完setuptools后,再次运行“python setup.py install”就能成功安装pip了。
然后开始安装RedisLive的依赖项。先装好python中的web服务器tornado:
pip install tornado
再安装redis的python版SDK:
pip install redis
最后安装一个时间工具:
pip install python-dateutil
如果你的python版本小于2.7,还需要安装argparse :
pip install argparse
到现在为止,准备工作已经完成了,然后开始正式部署RedisLive。
先下载好RedisLive的源码,可以直接在虚拟机上使用git命令从github上下载(推荐):
git clone https://github.com/kumarnitin/RedisLive.git
也可以在本地下载好压缩包然后传到虚拟机上,下载地址:
https://codeload.github.com/nkrode/RedisLive/legacy.zip/master
下载完成后可以看到源码结构为:

其中redis-live.conf.example是作者给出的一个示例配置文件,启动服务之前把.example后缀删掉变成.conf文件(因为官网给的信息是编辑redis-live.conf来做配置,实际上从github上clone的代码里并没有redis-live.conf这个文件,当时一直找.cong结尾的文件始终找不到,仔细一看原来是redis-live.conf.example,有点坑啊~),打开redis-live.conf,配置好redis实例的信息:

整个配置实际上是一个json对象,RedisServers是redis服务器的信息,由于是数组类型所以配置多个redis实例。DataStoreType是监控信息的存储方式,有”redis”和” sqlite”两种方式,分别对应下面RedisStatsServer和SqliteStatsStore,编辑完成后保存。
redis-live.py是用来启动web服务的,默认端口是8888 。redis-monitor.py就是redis监控的核心服务。
到此为止所有准备工作都完成了,最后来启动服务:
./redis-monitor.py --duration=30 //启动监控,duration是心跳时间 ./redis-live.py //启动web服务,默认监听8888端口
然后在浏览器中打开http://192.168.3.222:8888/index.html,就可以看到监控信息了:

数据会30秒刷新一次,因为我们在启动了时候设置了心跳时间。在页面右上角有一个下拉列表,里面是在配置文件里设置好的redis实例,可以轻松切换。其他功能可以在页面中慢慢感受。
由于我的项目现在没有具体业务在跑所以监控数据不是很多,最后再来一张官网给出的效果图:

至此,部署成功!
总结
虽然并不懂python语言也从来没有接触过,但凭借着这三年写代码的感觉丝毫不影响整个部署过程,打开python源码文件有些代码也能大致猜到是什么意思。再次让我感受到在编程世界,用什么语言并不重要,重要的是什么语言能满足实际需要,编程语言虽然不是完全相通的,但还是有太多相似的。
文章作者:hoho首发论坛:博客园文章出处:http://www.cnblogs.com/hohoa/
redis运行状态图形化监控工具 — RedisLive的更多相关文章
- 在Centos中部署redis运行状态图形化监控工具 — RedisLive
写在前面 前两天看到张善友老师的一篇文章<先定个小目标, 使用C# 开发的千万级应用>,里面给出了一张腾讯OA基础服务中redis运行情况的一张监控图,然后想到自己的项目中前不久也上了re ...
- redis的图形化工具(四)
1. 介绍 本篇会介绍几个关于redis的图形化的监控工具和管理工具. 2. redis-stat redis-stat提供终端和web端的监控页面,它安装和使用起来很简单. 安装只需要一条指令. $ ...
- JVM 图形化监控工具
1.jvmstat jvmstat是图形版的jstat,由Java 官方提供,目前最新版本为3.0. 下载地址:http://www.oracle.com/technetwork/jav ...
- Redis运行流程源码解析--转载
http://blog.nosqlfan.com/html/4007.html http://www.searchdatabase.com.cn/showcontent_62166.htm 导读:本文 ...
- CentOS.56安装Redis监控工具RedisLive
RedisLive是一款开源的基于WEB的reids的监控工具,以WEB的形式展现出redis中的key的情况,实例数据等信息! RedisLive在github上的地址:https://github ...
- 安装Redis图形监控工具---RedisLive
RedisLive简介 RedisLive是一款用Python编写基于WEB的Redis图形监控工具,也是一款实时监控Redis数据的开源软件,以WEB的形式展现出redis中的key的情况,实例数据 ...
- Linux下安装单机版zookeeper(和dubbo配合验证)和redis(用图形化界面连接验证)
上次写了篇zookeeper的集齐,并且用dubbo admin验证了集群结果.最近又特地装了个虚拟机,专门装各种单机版的,免得跟集群的机器混合了.安装的虚拟机IP为192.168.1.108 1.单 ...
- redis状态监控可视化工具RedisLive使用
首先,别人写的工具,赞一下 github地址 https://github.com/nkrode/RedisLive 然后,fork一下,自己加点功能 gui介绍(直接copy的github图片) ...
- 使用Zabbix官方模板监控Redis运行状况
运行环境: OS:CentOS 6.8 / Python: 2.6.6 / Pip: 7.1.0 / Redis:3.0 / Zabbix:3.0.3 Zabbix官方提供的监控模板. 项目地址:ht ...
随机推荐
- Linux开启相关端口及查看已开启端口
防火墙层面: /sbin/iptables -I INPUT -p tcp --dport 8011 -j ACCEPT #开启8011端口 /etc/rc.d/init.d/iptables ...
- Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level(转)
[问题] 一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: IndentationError: unindent does not ...
- todoing
1.如果系类没有数据需要返回么? 2.需要增加系列的门店打点么?
- Netty4具体解释二:开发第一个Netty应用程序
既然是入门,那我们就在这里写一个简单的Demo,client发送一个字符串到server端,server端接收字符串后再发送回client. 2.1.配置开发环境 1.安装JDK 2.去官网下 ...
- python-gdb
https://blog.log4d.com/2013/11/python-gdb/ https://wiki.python.org/moin/DebuggingWithGdb
- Java实现文件拷贝的4种方法.
原文地址:http://blog.csdn.net/ta8210/article/details/2073817 使用 java 进行文件拷贝 相信很多人都会用,,不过效率上是否最好呢? 最近看了看N ...
- IE6与W3C标准的盒模型差异
盒子模型(Box Model)是 CSS 的核心,现代 Web 布局设计简单说就是一堆盒子的排列与嵌套,掌握了盒子模型与它们的摆放控制,会发现再复杂的页面也不过如此,然而,任何美好的事物都有缺憾,盒子 ...
- windows10UWP:如何在xaml中设置控件为 public ?
windows10UWP中,由于使用页面导航,操作在不同一个页面的控件需求经常遇到. 如果要对另一个page里面的控件进行操作,那么这个控件必须设置为 public .在 xaml 设置控件的方法是: ...
- android MediaCodec 音频编解码的实现——转码
原文地址:http://blog.csdn.net/tinsanmr/article/details/51049179 从今天开始 每周不定期更新博客,把这一周在工作与学习中遇到的问题做个总结.俗话说 ...
- SQL觸發器聯級刪除
Create TRIGGER [dbo].[trigInstructionsDelete] ON dbo.Instructions instead OF DELETE AS BEGIN DECLARE ...