RedisLive简介

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

RedisLive在github上的地址:https://github.com/nkrode/RedisLive

RedisLive官网英文文档地址:http://www.nkrode.com/article/real-time-dashboard-for-redis

RedisLive的原理很简单,就是通过监控脚本来利用Redis提供的MONITOR命令从被监控Redis实例中获取数据并存储到Redis的监控实例中来做数据分析。

RedisLive以可视化的方式展示了Redis实例中的数据,分析查询模式和峰值,下图是官方提供的效果图:

安装Python

既然RedisLive由Python编写,那么Python环境是必不可少的,一般Linux默认都安装了Python。

在终端敲如下命令#python,可以验证是否已经安装了Python,如下图:

出现如上信息说明已经安装了Python,否则就要安装Python,这里简单说明一下安装或者升级Python:

其实一般情况只需要升级Python,前面已经提到过Linux发行版默认都安装了Python的,所以这里就说一下升级Python的方法。

---------------------------------------------------------------------------------------------------------------------------------

下载Python源码包,当下流行的2个版本:Python-3.3.3.tar.xz、Python-2.7.6.tar.xz,从RedisLive的redis-monitor.py脚本中可以看出这个脚本是用Python2.7版本编写的,所以安装2.7版本即可。如下图是redis-monitor.py截图:

Python2.7.6的安装方法:
1.下载源代码 
https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
2.  安装

解压、编译、安装命令如下:

# xz -d
Python-2.7.6.tar.xz

# tar xvf
Python-2.7.6.tar

# cd
Python-2.7.6/

#
./configure --prefix=可以指定安装路径,也可以不指定,默认安装到/usr/local/bin/

# make
&& make install

顺便说一下最新压缩率之王XZ压缩

xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具。

之前xz使用一直很少,所以几乎没有什么提起。我是在下载linux内核的时候看到这种压缩格式的。

最新一段时间会经常听到xz被采用的声音,像是最新的archlinux某些东西就使用xz压缩。不过xz也有一个坏处就是压缩时间比较长,比7z压缩时间还长一些。不过压缩是一次性的,所以可以忽略。

xz压缩文件方法或命令:

#xz -z 要压缩的文件

如果要保留被压缩的文件加上参数 -k ,如果要设置压缩率加入参数 -0 到 -9调节压缩率。如果不设置,默认压缩等级是6。

xz解压文件方法或命令:

#xz -d 要解压的文件

同样使用 -k 参数来保留被解压缩的文件。

创建或解压tar.xz文件的方法

习惯了 tar czvf 或 tar xzvf 的人可能碰到 tar.xz也会想用单一命令搞定解压或压缩。

其实不行 tar里面没有征对xz格式的参数比如
z是针对 gzip,j是针对 bzip2。

创建tar.xz文件:只要先 tar cvf xxx.tar xxx/ 这样创建xxx.tar文件先,然后使用 xz -z xxx.tar 来将 xxx.tar压缩成为 xxx.tar.xz

解压tar.xz文件:先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后,再用 tar xvf xxx.tar来解包。

好了,接下来继续我们RedisLive的安装,Python安装成功后,需要替换原有的/usr/bin/python,方法如下:

# 养成好习惯,创建连接时先做好备份

# mv
/usr/bin/python /usr/bin/python.bak-----可以不做备份

#sudo ln -sf /usr/local/bin/python2.7 /usr/bin/python---–这里是做软链接

---------------------------------------------------------------------------------------------------------------------------------

这里需要注意一个问题:

由于yum是基于python2.4的,所以要修改yum配置,不然yum命令就没有用了。

如果不太清楚python2.4的位置,可以运行whereis命令找一下,如下图:

# whereis
python

修改yum,首行修改为#!/usr/bin/python2.4 (原为#!/usr/bin/python)

#vi
/usr/bin/yum

 

安装python-setuptools

# 使用YUM安装python-setuptools

# yum install python-setuptools

安装python-pip

安装python模块我这里使用的pip,如果没有pip需要手动安装一下,当然也可以使用easy_install来安装模块

# easy_install pip

也可以使用yum安装:yum install python-pip,如图:

安装三个依赖组件

安装RedisLive,需要安装相关的python模块

# pip install tornado

# pip install redis

# pip install python-dateutil

#pip install argparse

安装上面3个模块如下图所示:

如果是内网环境(无法上网)就要手动下载安装tornado、python-dateutil了,OMG,具体安装教程请点击这里

安装Tornado

#wget http://github.com/downloads/facebook/tornado/tornado-1.2.1.tar.gz

#mv -b /root/tornado-1.2.1.tar.gz /root/user

#tar xvzf tornado-1.2.1.tar.gz

#cd tornado-1.2.1

#python setup.py build

#python setup.py install

到此,tornado已安装完成。

开启服务,运行hello world程序 

#cd user/tornado-1.2.1

#ls

#ls ./demos

#vim ./demos/helloworld/helloworld.py

#./demos/helloworld/helloworld.py   

此时打开浏览器,地址栏输入:http://127.0.0.1:8888,即可看到hello,world

步骤:将工作目录改为tornado所在目录->检查是否存在demos目录->检查demos目录下是否有helloworld->查看helloworld代码->运行程序

)

安装RedisLive

下载RedisLive软件包,下载地址如下:

https://github.com/kumarnitin/RedisLive/zipball/master

解压nkrode-RedisLive-22e7051.zip文件,配置redis-live.conf。

或者使用命令下载:

# cd /usr/local/whhuang/

# git clone https://github.com/kumarnitin/RedisLive.git

解释下上面的命令:

将会在 /usr/local/whhuang 目录下建立一个新目录 RedisLive,用于存放RedisLive的相关文件。

配置RedisLive

整理:bywhhuang

配置RedisLive的配置文件,src文件夹下的redis-live.conf。

第一种配置,Redis:

获取到的监控数据记录在Redis里面,这个Redis尽量不要跟监控的Redis是同一个。如下是配置:

{

"RedisServers":

[

{

"server": "192.168.100.148",

"port" : 6380

},

{

"server": "192.168.100.147",

"port" : 6379

}       --被监控的Redis,可以配置多个

],

"DataStoreType" : "redis",----监控数据存储方式

"RedisStatsServer":

{

"server" : "192.168.100.147",

"port" : 6379----存储监控数据的Redis

}

}

第二种配置,sqlite:

方式二,数据记录在文件sqlite里面:

{

"RedisServers":

[

{

"server": "192.168.100.148",

"port" : 6380

},

{

"server": "192.168.100.147",

"port" : 6379

}       --被监控的Redis,可以配置多个

],

"DataStoreType" : "sqlite",----监控数据存储方式

"SqliteStatsStore" :

{

"path":  "/usr/local/whhuang/RedisLive/dbs/redislive.sqlite"—--数据存储的路径,需要新建redislive.sqlite文件

}

}

注意配置文件的格式:一定要注意逗号和对齐方式,不然可能会报错,上面已经是最简洁的写法了,我没有使用redis来存储数据,而是使用了sqlite,如果redis有密码,可以加一条password即可。

这里简单说下配置参数的含义:

1)RedisServers为你要监控的redis实例,可以添加多个Redis实例。

2)RedisStatsServer是存储RedisLive监控数据的实例,如果没有存储RedisLive数据的实例,需要将DataStoreType改成"DataStoreType" : "sqlite"这种设置。

启动RedisLive

1.启动监控脚本,监控120秒,duration参数是以秒为单位

#cd /usr/local/whhuang/RedisLive/src/

#./redis-monitor.py --duration=120

2.启动webserver

RedisLive使用tornado作为web服务器,所以不需要单独安装服务器。Tornado web server 是使用Python编写出來的一个极轻量级、高可伸缩性和非阻塞IO的Web服务器软件。

#cd /usr/local/whhuang/RedisLive/src/

#./redis-live.py

然后在你的浏览器中输入:http://IP:8888/index.html

如:http://192.168.100.51:8888/index.html

浏览后,服务器终端会打屏,如果关闭终端,进程会关闭。

安装Redis图形监控工具---RedisLive的更多相关文章

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

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

  2. redis运行状态图形化监控工具 — RedisLive

    在Centos中部署redis运行状态图形化监控工具 — RedisLive   写在前面 前两天看到张善友老师的一篇文章<先定个小目标, 使用C# 开发的千万级应用>,里面给出了一张腾讯 ...

  3. Redis实用监控工具一览

    Redis已经成为web应用开发不可或缺的一个组成部分,在项目中的应用越来越广泛,这篇文章就来讲讲那些关于Redis监控的那点事. vredis-benchmark 1.1 简介 第一个就介绍一下,R ...

  4. 在VMware的Linux系统上安装Redis

    在VMware的Linux系统上安装Redis 具体过程如下: 下载,解压和编译: 在执行make的时候报错,具体报错信息如下: zmalloc.o: In function `zmalloc_use ...

  5. linux操作系统中安装redis

    第一步:安装gcc编译软件 redis是用c编写的,在下载之后需要使用gcc编译之后才能安装,首先需要下载gcc yum install gcc-c++ 第二步   下载redis安装包,并解压编译 ...

  6. Redis学习笔记(1)- CentOS 6.4 安装Redis

    Redis学习笔记(1)- CentOS 6.4 安装Redis 2013.10.13     学习环境 vm 10.1 + 默认.新装的干净 CentOS 6.4  64BIT系统     准备 1 ...

  7. 如何在Windows系统上面安装redis

    一.Redis简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  8. Ubuntu安装Redis及使用

    NoSQL简介NoSQL,全名为Not Only SQL,指的是非关系型的数据库随着访问量的上升,网站的数据库性能出现了问题,于是nosql被设计出来 优点/缺点优点:高可扩展性分布式计算低成本架构的 ...

  9. 聊聊redis的监控工具

    序 本文主要研究一下redis的监控工具 redis-stat redis-stat是一个比较有名的redis指标可视化的监控工具,采用ruby开发,基于redis的info命令来统计,不影响redi ...

随机推荐

  1. 张孝祥JavaScript视频教程flash版

    原文发布时间为:2008-09-16 -- 来源于本人的百度文章 [由搬家工具导入] 之前论坛有人发过RM版的,容量差不多有10G.现在这个是flash版的,只有1.2G共七部分. 第一部分:http ...

  2. 在SQL Server中使用NewID()随机取得某行

    原文发布时间为:2008-09-24 -- 来源于本人的百度文章 [由搬家工具导入] 这里提供了另外一个更有用的函数:NewID(),它返回一个GUID(全局唯一标志符) select top 10 ...

  3. 【全局变量】mysql查看全局变量以及设置全局变量的值

    1.查看mysql的所有全局变量的值 SHOW GLOBAL VARIABLES 或者 SHOW VARIABLES mysql有很多全局变量,包括系统的一些基本信息,以及mysql的一些基本配置都可 ...

  4. 使用python将ppm格式转换成jpg【转】

    转自:http://blog.csdn.net/hitbeauty/article/details/48465017 最近有个很火的文章,叫 有没有一段代码,让你觉得人类的智慧也可以璀璨无比? 自己试 ...

  5. 广州地区常用的DNS解析服务器

    广州电信DNS: 首选:202.96.128.143 备用:202.96.128.68 首选:202.96.134.133 备用:202.96.128.166 首选:61.144.56.100备用:6 ...

  6. CSU 1505: 酷酷的单词【字符串】

    Description 输入一些仅由小写字母组成的单词.你的任务是统计有多少个单词是“酷”的,即每种字母出现的次数都不同.比如ada是酷的,因为a出现2次,d出现1次,而1和2不同.再比如,banan ...

  7. centos6.7下安装配置vnc

    vnc是一款使用广泛的服务器管理软件,可以实现图形化管理,下面简单介绍一下如何在centos6.7下安装vnc. 1.安装vncserver yum install tigervnc tigervnc ...

  8. jeffy-vim-v2.8.tgz

    vim 配置 jeffy-vim-v2.8.tgz

  9. JetBrains软件开发框架下的类似于“.IntelliJIdea2018.1”的配置文件夹的移动

    JetBrains软件开发框架下几款软件,如: 会在C盘用户文件夹下生成很大的配置文件夹(IDE config folder),十分占空间,也影响电脑性能. 这些索引目录移动的原理相似,现在以Idea ...

  10. IOS开发~开机启动&无限后台运行&监听进程

    非越狱情况下实现: 开机启动:App安装到IOS设备设备之后,无论App是否开启过,只要IOS设备重启,App就会随之启动: 无限后台运行:应用进入后台状态,可以无限后台运行,不被系统kill: 监听 ...