在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的更多相关文章

  1. 在Centos中部署redis运行状态图形化监控工具 — RedisLive

    写在前面 前两天看到张善友老师的一篇文章<先定个小目标, 使用C# 开发的千万级应用>,里面给出了一张腾讯OA基础服务中redis运行情况的一张监控图,然后想到自己的项目中前不久也上了re ...

  2. redis的图形化工具(四)

    1. 介绍 本篇会介绍几个关于redis的图形化的监控工具和管理工具. 2. redis-stat redis-stat提供终端和web端的监控页面,它安装和使用起来很简单. 安装只需要一条指令. $ ...

  3. JVM 图形化监控工具

    1.jvmstat        jvmstat是图形版的jstat,由Java 官方提供,目前最新版本为3.0. 下载地址:http://www.oracle.com/technetwork/jav ...

  4. Redis运行流程源码解析--转载

    http://blog.nosqlfan.com/html/4007.html http://www.searchdatabase.com.cn/showcontent_62166.htm 导读:本文 ...

  5. CentOS.56安装Redis监控工具RedisLive

    RedisLive是一款开源的基于WEB的reids的监控工具,以WEB的形式展现出redis中的key的情况,实例数据等信息! RedisLive在github上的地址:https://github ...

  6. 安装Redis图形监控工具---RedisLive

    RedisLive简介 RedisLive是一款用Python编写基于WEB的Redis图形监控工具,也是一款实时监控Redis数据的开源软件,以WEB的形式展现出redis中的key的情况,实例数据 ...

  7. Linux下安装单机版zookeeper(和dubbo配合验证)和redis(用图形化界面连接验证)

    上次写了篇zookeeper的集齐,并且用dubbo admin验证了集群结果.最近又特地装了个虚拟机,专门装各种单机版的,免得跟集群的机器混合了.安装的虚拟机IP为192.168.1.108 1.单 ...

  8. redis状态监控可视化工具RedisLive使用

    首先,别人写的工具,赞一下  github地址 https://github.com/nkrode/RedisLive 然后,fork一下,自己加点功能 gui介绍(直接copy的github图片) ...

  9. 使用Zabbix官方模板监控Redis运行状况

    运行环境: OS:CentOS 6.8 / Python: 2.6.6 / Pip: 7.1.0 / Redis:3.0 / Zabbix:3.0.3 Zabbix官方提供的监控模板. 项目地址:ht ...

随机推荐

  1. html,shtml和htm的区别

    SHTML和HTML的区别,如果用一句话来解释就是:SHTML 不是HTML而是一种服务器 API,shtml是服务器动态产成的html. 虽然两者都是超文本格式,但shtml是一种用于SSI技术的文 ...

  2. Hibernate输出SQL语句以便调试

    配置方法:1.打开hibernate.cfg.xml文件编辑界面,在Properties窗口处,点击Add按钮,选择Show_SQL参数,输入值为True. *另外,如果按照同样的步骤,分别加入以下参 ...

  3. javaWeb上传文件代码

    javaweb两种方式的上传,1普通上传,2:jquery ajax后台上传,部分截图如下: 完成包下载,下载后倒入myeclipse工程即可,下载地址:http://files.cnblogs.co ...

  4. Google Reader的另一个开源的替代品Go Read

    Google Reader到7月1号退休了,于是出现了一批Google Reader的替代品,比如Google Reader Is Shutting Down; Here Are the Best A ...

  5. 生成N个不重复的随机数(转)

    有25幅作品拿去投票,一次投票需要选16幅,单个作品一次投票只能选择一次.前面有个程序员捅了漏子,忘了把投票入库,有200个用户产生的投票序列为空.那么你会如何填补这个漏子? 当然向上级反映情况.但是 ...

  6. linux诡异的半连接(SYN_RECV)队列长度

    linux诡异的半连接(SYN_RECV)队列长度(一) >>转载请注明来源:飘零的代码 piao2010 ’s blog,谢谢!^_^>>本文链接地址:linux诡异的半连接 ...

  7. configure JDBCRealm JAAS for mysql and tomcat 7 with form based authentication--reference

    Hello all, In this tutorial we are going to configure JDBCRealm JAAS for tomcat 7 and mysql database ...

  8. HTML表单介绍

    表单语法结构如下: <form action="url" method="get|post" name="value" enctype ...

  9. Android 布局

    转自:http://www.cnblogs.com/chiao/archive/2011/08/24/2152435.html Android布局是应用界面开发的重要一环,在Android中,共有五种 ...

  10. IntelliJ IDEA 14

    新接触IntelliJ IDEA 14,使用起来还不是很称手,每天在使用中学习吧. 每学到一个新技能就来更新一下. (2015.11.17) " Ctrl + / " 代码批量注释 ...