RedisLive的安装

来源:互联网 发布:手机彩票程序源码 编辑:程序博客网 时间:2024/06/05 00:37

RedisLive的安装


redislive是用来监控redis的实时状态,跟monitor类似,如果要监控key值等一些更细的需要Redis Admin UI Admin UI 或php redis admin

实时监控Redis数据的软件,RedisLive这款开源软件

RedisLive介绍

开发语言:python
官网:http://www.nkrode.com/article/real-time-dashboard-for-redis
版权信息:开源软件
RedisLive 以可视化的方式展示了 Redis 实例的数据,分析查询模式。看了官网的安装说明,需要提前装几个python的组件,而且是基于pip安装的,所以先决定升级python,再安装pip,最后安装RedisLive。

为centos5升级python

由于服务器版本是centos5.7,python版本2.4.3,决定升级python。

1.下载Python-2.7.3.tar.bz2

wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2

2.升级安装Python2.7.3

tar jxvf Python-2.7.3.tar.bz2
cd Python-2.7.3
./configure
make && make install

3.替换原有的/usr/bin/python

mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python2.7 /usr/bin/python

4.由于yum是基于python2.4的,所以要修改yum配置

vi /usr/bin/yum

首行修改为#!/usr/bin/python2.4 (原为#!/usr/bin/python)
如果不太清楚python的位置,可以运行whereis命令找一下

whereis python
python: /usr/bin/python /usr/bin/python2.4 /usr/bin/python.bak /usr/lib/python2.4 /usr/local/bin/python /usr/local/bin/python2.7-config /usr/local/bin/python2.7 /usr/local/lib/python2.7 /usr/include/python2.4 /usr/share/man/man1/python.1.gz

安装setuptools

curl -O http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
sh setuptools-0.6c11-py2.7.egg

安装pip

easy_install pip

安装RedisLive

1.先安装三个依赖组件

pip install tornado
pip install redis
pip install python-dateutil

如果是内网环境(无法上网)就要手动下载安装TORNADO,python-dateutil了:(

【Linux】tornado安装、部署--CentOS5.4

前期准备:安装python

一、安装Python

#wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz  

#mv -b /root/Python-2.7.1.tgz /root/user              

#tar zxvf Python-2.7.1.tgz                     

#cd user/Python-2.7.1                          

#./configure                                                                                

#make                                

#make install                                                                    

#python                               

如果没有报错,即Python安装完成。

步骤:下载安装包->将安装包移至指定的目录->解压缩->将工作目录改为Python所在目录->检查Python特征,cc,gcc等->编译->安装->检查是否安装成功

二、安装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代码->运行程序

)

2.下载RedisLive软件包

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

配置RedisLive

配置文件为redis-live.conf,在src文件夹下

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

"DataStoreType" : "redis",

"RedisStatsServer":
{
"server" : "127.0.0.1",
"port" : 6381
}
}

其中RedisServers为你要监控的redis实例,可以添加多个,RedisStatsServer是存储RedisLive监控数据的实例,如果redis有密码,可以在实例配置中加入password选项;如果没有存储RedisLive数据的实例,需要将DataStoreType改成”DataStoreType” : “sqlite”这种设置。

启动RedisLive

1.启动监控脚本,监控120秒,duration参数是以秒为单位
./redis-monitor.py --duration=120

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

./redis-live.py

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

以上所有需要的安装文件在这里可以找到:

http://download.csdn.net/detail/huangchao1010/4903511

安装问题:

Failed to build these modules:
_sqlite3 

在网上查了一下解决办法:编辑源码下的connection.c这个文件

vi Python-2.7.3/Modules/_sqlite/connection.c

#include "cache.h"
#include "module.h"
#include "connection.h"
#include "statement.h"
#include "cursor.h"
#include "prepare_protocol.h"
#include "util.h"
#include "sqlitecompat.h"

#include "pythread.h"

#define ACTION_FINALIZE 1
#define ACTION_RESET 2

#if SQLITE_VERSION_NUMBER >= 3003008
#ifndef SQLITE_OMIT_LOAD_EXTENSION
#define HAVE_LOAD_EXTENSION
#endif
#endif


下面添加
#ifdef SQLITE_INT64_TYPE
typedef SQLITE_INT64_TYPE sqlite_int64;
typedef unsigned SQLITE_INT64_TYPE sqlite_uint64;
#elif defined(_MSC_VER) || defined(__BORLANDC__)
typedef __int64 sqlite_int64;
typedef unsigned __int64 sqlite_uint64;
#else
typedef long long int sqlite_int64;
typedef unsigned long long int sqlite_uint64;
#endif
typedef sqlite_int64 sqlite3_int64;
typedef sqlite_uint64 sqlite3_uint64;

再次make,没有报错。


原创粉丝点击