詳解Redis 可視化圖形監控界面 RedisLive
作為一款開源的 Redis 圖形化監控工具,RedisLive 提供對 Redis 實例的內存使用情況,接收的客戶端命令,接收的請求數量以及鍵進行監控。RedisLive 的工作原理基於 Redis 的 INFO 和 MONITOR 命令,通過向 Redis 實例發送 INFO 和 MONITOR 命令來獲取 Redis 實例當前的運行數據。
RedisLive 提供的圖形化展示界面如下圖所示:
安裝
RedisLive 使用 Python 實現,使用 Tornado 作為自己的 Web 服務器。運行 RedisLive 並不需要額外的編譯過程。下載 RedisLive 的代碼後,只須安裝好依賴的相關 Python 擴展包就可以直接運行。
可以通過 Git 下載最新的 RedisLive 源代碼:
git clone https//githup.com/kumarnitin/RedisLive.git
進下下載後的 RedisLive 目錄,可以看下 RedisLive 依賴的 Python 擴展包都已經寫在 requirements.txt 文件中了。requirements.txt 的內容如下:
argparse==1.2.1 python-dateutil==1.5 redis tornado==2.1.1
熟悉 Python 的朋友對於 requirements.txt 文件也一定感覺很親切了,使用下面的命令可以安裝裏面的擴展包(指定豆瓣源來安裝速度更快):
pip install -r requirements.txt -i http://pypi.douban.com/simple/–trusted-host pypi.douban.com
運行
安裝好依賴後,接下來就可以運行 RedisLive 了。進入 RedisLive/src 目錄,可以看到redis-live.conf.example文件,這個文件是 RedisLive 的示例配置文件,內容如下:
RedisServers:監控的 Redis 實例列表,RedisLive 支持同時監控多個 Redis 實例
RedisStatsServer:用來存儲監控數據的 Redis 實例,此配置不同於 RedisServers,RedisLive 並不監控 RedisStatsServer,RedisStatsServer 只是用作存儲監控數據使用
DataStoreType:監控數據的存儲方案,可以配置為redis或者sqlite
SqliteStatsStore:存儲監控數據的 sqlite 配置
我們實例使用的redis-live.conf(需要去除.example後綴)置如下所示:
即監控的 Redis 實例為 127.0.0.1:6379 ,使用 sqlite 作用存儲監控數據方案,sqlite 數據庫路徑為
db/redislive.sqlite
配置完成後,便可以將 RedisLive 運行起來。RedisLive 的運行包括兩個部分(在 RedisLive/src 目錄),redis-monitor.py用於向 Redis 實例發送 INFO 和 MONITOR 命令並獲取其返回,redis-live.py用於運行 Web 服務器。
我們首先啟動redis-monitor.py腳本,並將duration參數設置為 120 秒。duration參數指定了監控腳本的運行持續時間,例如設置為 120 秒,即經過 120 秒後,監控腳本會自動退出,並在終端打印 shutting down… 的提示。
./redis-monitor.py --duration=120
接下來啟動 Web 服務器:
./redis-live.py
打開瀏覽器,在地址欄輸入 http://localhost:8888/index.html,按下回車後,便可以看到 Redis 實例的監控數據。
需要指出的是,由於redis-monitor.py腳本采用向 Redis 實例發送 MONITOR 命令和 INFO 命令的方式來取得監控數據,而 MONITOR 命令對於 Redis 實例的性能有較大影響,因此,對於生產環境下的redis-monitor.py的部署,需要設置一個較適宜的duration參數,並使用 crontab 來定時執行該腳本。
參考資料
https://github.com/nkrode/RedisLive
http://www.nkrode.com/article/real-time-dashboard-for-redis
http://wxmimperio.tk/2016/02/25/Redis-Monitor-Tools/
深入理解Redis,Jeremy Nelson 著,汪佳南譯,電子工業出版社,2017年4月
http://redis.io/commands/monitor
原文地址:http://www.linuxprobe.com/redis-graphical-redislive.html
本文出自 “小華的博客” 博客,請務必保留此出處http://coderhsf.blog.51cto.com/12629645/1932129
詳解Redis 可視化圖形監控界面 RedisLive