安装RedisLive

升级python

1.1.安装:

tar -xf Python-2.7.10.tar.xz 
cd Python-2.7.10
./configure --prefix=/usr/local/pyhon2.7
make
make install


1.2.备份老版本文件

mv /usr/bin/python /usr/bin/python2.6.6


1.3.连接新文件

ln -s /usr/local/pyhon2.7/bin/python /usr/bin/python

安装完成


验证:

[root@ckl-soft]# python
Python 2.7.10 (default, Jun 21 2016, 09:33:37)


2.安装setuptools

tar -xf setuptools-23.0.0.tar.gz
cd setuptools-23.0.0
python setup.py install


3.安装tornado

git https://github.com/tornadoweb/tornado.git
unzip tornado-master.zip 
cd tornado-master
python setup.py install

4.安装redis-py

wget https://github.com/andymccurdy/redis-py/archive/master.zip
unzip master
cd redis-py-master/
python setup.py install


5.安装python-dateutil

tar -xf python-dateutil-2.4.2.tar.gz
cd python-dateutil-2.4.2
python setup.py install


6.安装argparse

tar -xf argparse-1.4.0.tar.gz
cd argparse-1.4.0
python setup.py install

7.安装RedisLive

https://github.com/nkrode/RedisLive
tar -xf RedisLive-master.zip -C /data/
cd /data/
mv RedisLive-master RedisLive

修改配置文件:

cd /data/RedisLive/src
cp redis-live.conf.example  cp redis-live.conf
vim redis-live.conf
{
        "RedisServers":
        [
                {
                        "server": "192.168.1.11",
                        "port" : 6379,
                        "password" : "112233"
                }
        ],

        "DataStoreType" : "sqlite",

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

        "SqliteStatsStore" :
        {
                "path":  "/data/RedisLive/src/db/redislive.sqlite"
        }
}

增加crontab

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

启动进程:

 ./redis-live.py &

[1] 9483
[root@pro-kibana src]# Traceback (most recent call last):
  File "./redis-live.py", line 10, in 
    from api.controller.ServerListController import ServerListController
  File "/data/RedisLive/src/api/controller/ServerListController.py", line 1, in 
    from BaseController import BaseController
  File "/data/RedisLive/src/api/controller/BaseController.py", line 1, in 
    from dataprovider.dataprovider import RedisLiveDataProvider
  File "/data/RedisLive/src/dataprovider/dataprovider.py", line 2, in 
    import sqliteprovider
  File "/data/RedisLive/src/dataprovider/sqliteprovider.py", line 3, in 
    import sqlite3
  File "/usr/local/python2.7/lib/python2.7/sqlite3/__init__.py", line 24, in 
    from dbapi2 import *
  File "/usr/local/python2.7/lib/python2.7/sqlite3/dbapi2.py", line 28, in 
    from _sqlite3 import *
ImportError: No module named _sqlite3

解决:安装sqlite

tar -xf setuptools-23.0.0.tar.gz
cd sqlite-autoconf-3130000
./configure --prefix=/usr/local/sqlite3
make && make install

重新编译python:

vi Python-2.7.10/setup.py
        ...
        sqlite_inc_paths = [ '/usr/include',
                             '/usr/local/sqlite3/include', #增加到这里
                             '/usr/include/sqlite',
                             '/usr/include/sqlite3',
                             '/usr/local/include',
                             '/usr/local/include/sqlite',

重新编译即可

再次启动:

./redis-live.py &

[1] 21249
[root@pro-kibana src]# Traceback (most recent call last):
  File "./redis-live.py", line 10, in 
    from api.controller.ServerListController import ServerListController
  File "/data/RedisLive/src/api/controller/ServerListController.py", line 1, in 
    from BaseController import BaseController
  File "/data/RedisLive/src/api/controller/BaseController.py", line 7, in 
    class BaseController(tornado.web.RequestHandler):
  File "/data/RedisLive/src/api/controller/BaseController.py", line 9, in BaseController
    stats_provider = RedisLiveDataProvider.get_provider()
  File "/data/RedisLive/src/dataprovider/dataprovider.py", line 16, in get_provider
    data_store_type = settings.get_data_store_type()
  File "/data/RedisLive/src/api/util/settings.py", line 24, in get_data_store_type
    config = get_settings()
  File "/data/RedisLive/src/api/util/settings.py", line 10, in get_settings
    return json.load(config)
  File "/usr/local/python2.7/lib/python2.7/json/__init__.py", line 290, in load
    **kw)
  File "/usr/local/python2.7/lib/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/local/python2.7/lib/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/python2.7/lib/python2.7/json/decoder.py", line 382, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting , delimiter: line 7 column 25 (char 101)

[1]+  Exit 1                  ./redis-live.py


检查配置文件json格式语法有错误,少了一个","


启动后8888端口

http://192.168.1.80:8888/index.html

RedisLive & redis-stat监控工具部署_第1张图片

RedisLive & redis-stat监控工具部署_第2张图片

RedisLive & redis-stat监控工具部署_第3张图片

安装redis-stat

卸载老版本:

yum erase ruby ruby-libs ruby-mode ruby-rdoc ruby-irb ruby-ri ruby-docs

1.安装ruby 2.0以上

tar -xf ruby-2.1.9.tar.gz 
cd ruby-2.1.9
./configure --prefix=/usr/local/ruby2.0
make
make install


配置连接:

cd /usr/local/ruby2.0/
for i in `ls`;do ln -s /usr/local/ruby2.0/bin/$i /usr/bin/$i;done

添加淘宝源:

gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/


2.安装redis-stat

cd /data/
git clone https://github.com/junegunn/redis-stat.git
cd /data/redis-stat/bin/
# ./redis-stat --help
usage: redis-stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
    -a, --auth=PASSWORD              Password
    -v, --verbose                    Show more info
        --style=STYLE                Output style: unicode|ascii
        --no-color                   Suppress ANSI color codes
        --csv[=CSV_FILE]             Print or save the result in CSV
        --es=ELASTICSEARCH_URL       Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
        --server[=PORT]              Launch redis-stat web server (default port: 63790)
        --daemon                     Daemonize redis-stat. Must be used with --server option.
        --version                    Show version
        --help                       Show this message

命令行运行:

redis-stat
redis-stat 1
redis-stat 1 10
redis-stat --verbose
redis-stat localhost:6380 1 10
redis-stat localhost localhost:6380 localhost:6381 5
redis-stat localhost localhost:6380 1 10 --csv=/tmp/output.csv --verbose

RedisLive & redis-stat监控工具部署_第4张图片

redis-stat运行为服务:

redis-stat --server
redis-stat --verbose --server=8080 5
# redis-stat server can be daemonized
redis-stat --server --daemon

# Kill the daemon
killall -9 redis-stat-daemon

以守护进程模式启动:

redis-stat --verbose --server=8080 5 --daemon


运行其它主机实例:

 ./redis-stat 192.168.1.12 --auth='1234' --verbose --server=8080 5 --daemon

RedisLive & redis-stat监控工具部署_第5张图片