监控Redis集群服务

一、基础环境安装

https://pypi.python.org/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.4.0.2.tar.gz

tar xvzf backports.ssl_match_hostname-3.4.0.2.tar.gz 
cd backports.ssl_match_hostname-3.4.0.2
python setup.py install
  • 1
  • 2
  • 3

https://github.com/facebook/tornado/archive/v3.2.0.tar.gz

tar xvzf tornado-3.2.0.tar.gz
cd tornado-3.2.0
python setup.py install
  • 1
  • 2

https://pypi.python.org/packages/source/r/redis/redis-2.9.1.tar.gz

tar xvzf redis-py-2.9.1.tar.gz
cd redis-py-2.9.1
python setup.py install
  • 1
  • 2
  • 3

https://pypi.python.org/packages/source/s/six/six-1.5.2.tar.gz

tar xvzf six-1.5.2.tar.gz
cd six-1.5.2
python setup.py install
  • 1
  • 2
  • 3

https://pypi.python.org/packages/source/p/python-dateutil/python-dateutil-2.2.tar.gz

tar xvzf python-dateutil-2.2.tar.gz
cd python-dateutil-2.2
python setup.py install
  • 1
  • 2

https://pypi.python.org/packages/18/dd/e617cfc3f6210ae183374cd9f6a26b20514bbb5a792af97949c5aacddf0f/argparse-1.4.0.tar.gz#md5=08062d2ceb6596fcbc5a7e725b53746f

tar xvzf argparse-1.4.0.tar.gz
cd argparse-1.4.0
python setup.py install
  • 1
  • 2
  • 3

https://codeload.github.com/nkrode/RedisLive/zip/master

unzip RedisLive-master.zip
mv RedisLive-master RedisLive

http://distfiles.macports.org/py-setuptools/
setuptools-36.2.7.zip
unzip setuptools-36.2.7.zip
sh setuptools*

二、 RedisLive配置
1、安装RedisLive
 
https: //github.com/nkrode/RedisLive
tar -xf RedisLive-master.zip -C /data/
cd /data/
mv RedisLive-master RedisLive


其中redis-live.conf.example是作者给出的一个示例配置文件,启动服务之前把.example后缀删掉变成.conf文件,打开redis-live.conf,配置好redis实例的信息:
root@storm-master-01:/home/redis/monitor/RedisLive-master/src#ls
api  dataprovider  db  __init__.py  redis-live.conf  redis-live.conf.example  redis-live.py  redis-monitor.py  util  www
root@storm-master-01:/home/redis/monitor/RedisLive-master/src#more redis-live.conf
{
    "RedisServers":
    [
        {
              "server": "192.168.1.247",
              "port" : 6379
        },
        
        {
              "server": "192.168.1.111",
              "port" : 6379
        }        
    ],

    "DataStoreType" : "sqlite",

    "RedisStatsServer":
    {
        "server" : "192.168.1.247",
        "port" : 6379
    },
    
    "SqliteStatsStore" :
    {
        "path":  "/home/redis/monitor/RedisLive-master/src/db/redislive.sqlite"
    }
}
root@storm-master-01:/home/redis/monitor/RedisLive-master/src#

在RedisServers中设置需要监控的Redis-server;

DataStoreType决定使用那种类型的数据存储,
如果是redis,使用RedisStatsServer作为数据存储的目标;
如果是sqlite,使用SqliteStatsStore作为数据存储的目标。


整个配置实际上是一个json对象,RedisServers是redis服务器的信息,由于是数组类型所以配置多个redis实例。DataStoreType是监控信息的存储方式,有”redis”和” sqlite”两种方式,分别对应下面RedisStatsServer和SqliteStatsStore,编辑完成后保存。

redis-live.py是用来启动web服务的,默认端口是8888 。redis-monitor.py就是redis监控的核心服务。

2、初始化DB
cd db
cat schema.sql | sqlite3 redislive.sqlite
  • 1

3、配置RedisLive的定期监控

*/5 * * * * cd /data/Redis-Monitor/RedisLive/src; ./redis-monitor.py --duration 20 >/dev/null 2>&1

4、服务启动

RedisLive的功能分两个部分:
一个部分是redis-server状态数据的采集,通过src/redis-monitor.py来执行;
另外一部分功能是提供对状态数据的查询服务,通过src/redis-live.py来提供web服务。

./redis-monitor.py --duration  120  &   
//启动监控,duration是心跳时间
./redis-live.py&
//启动web服务,默认监听8888端口
netstat -ntpl |grep python
root@storm-master-01:/home/redis/monitor/RedisLive-master/src#netstat  -anltp|grep pythontcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN      194074/python       tcp        0      0 192.168.1.247:43929     192.168.1.247:3309      ESTABLISHED 126445/python3      tcp        0      0 192.168.1.247:45314     192.168.1.247:3309      ESTABLISHED 192761/python3      tcp        0      0 192.168.1.247:8888      192.168.0.250:65142     ESTABLISHED 194074/python       tcp        0      0 192.168.1.247:8888      192.168.0.250:64907     ESTABLISHED 194074/python       tcp        0      0 192.168.1.247:8888      192.168.0.250:64594     ESTABLISHED 194074/python       tcp        0      0 192.168.1.247:45313     192.168.1.247:3309      ESTABLISHED 192761/python3      tcp        0      0 192.168.1.247:8888      192.168.0.250:63135     ESTABLISHED 194074/python       tcp6       0      0 :::8888                 :::*                    LISTEN      194074/python       root@storm-master-01:/home/redis/monitor/RedisLive-master/src#5、然后在浏览器中打开 
http://192.168.1.247:8888/index.html,就可以看到监控信息了: 

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值