運行環境:
OS:CentOS 6.8 / Python: 2.6.6 / Pip: 7.1.0 / Redis:3.0 / Zabbix:3.0.3
Zabbix官方提供的監控模板。
項目地址:https://github.com/blacked/zbx_redis_template
官方提供Python和Nodejs兩種版本的監控腳本,本文使用Python腳本。
Zabbix所有官方模板:http://www.zabbix.org/wiki/Zabbix_Templates
運行環境配置:
1、 修改Host文件:
[root@localhost /] vim /etc/hosts
添加如下內容:
172.16.1.172 L-172.16.1.172
2、安裝Python依賴包:
[root@localhost /]# yum -y install python-pip [root@localhost /]# pip install argparse [root@localhost /]# pip install redis
配置開始:
1、 將zbx_redis_status.py上傳至/etc/zabbix/script/redis目錄並修改執行權限:
[root@localhost /]# mkdir -p /etc/zabbix/script/redis [root@localhost /]# scp /usr/local/src/ zbx_redis_template-master/zbx_redis_stats.py 172.16.1.172:/etc/zabbix/script/redis [root@localhost /]# chmod +x /etc/zabbix/script/redis/zbx_redis_stats.py
2、 根據實際情況修改zbx_redis_status.py中的下列參數:
zabbix_host = '172.16.1.186' # Zabbix Server IP zabbix_port = 10051 # Zabbix Server Port
3、 測試zbx_redis_status.py是否可以正常連接數據庫:
[root@localhost /]# /etc/zabbix/script/redis/zbx_redis_stats.py -h localhost -p 6379 -a MyPassword
前方有坑,請小心:
如果redis服務運行端口為其它值,請自行修改
如果出現如下圖所示的提示,說明可以正常連接數據庫,如果出現其他錯誤,請自行排錯。

4、 將zbx_redis.conf文件上傳至/etc/zabbix/zabbix_agentd.d目錄:
[root@localhost /]# scp /usr/local/src/zbx_redis_template-master/zbx_redis_stats.py 172.16.1.172:/etc/zabbix/script/redis
5、 修改zbx_redis.conf中的參數:
UserParameter=redis[*],/etc/zabbix/script/redis/zbx_redis_stats.py –p 6379 -a MyPassword $1 $2 $3
前方有坑,請小心:
原配置文件是沒有” -a MyPassword”的,如果登錄redis需要提供密碼,就要加上這個選項。如果登錄redis不需要密碼,則不需要添加。
原配置文件也沒有” –p 6379”的,如果redis服務運行端口為其它值,請自行修改
6、 檢查zabbix_agentd.conf配置文件是否包含如下配置,如沒有請自行添加:
Include=/etc/zabbix/zabbix_agentd.d/
7、 測試腳本是否可以正常運行:
[root@yqtrack-userredis02 zabbix]# /etc/zabbix/script/redis/zbx_redis_stats.py -p 6379 -a MyPassword L-172.16.1.172 gcc_version none

如果取得返回值,就說明腳本正常運行。
參數解釋:
$1: L-172.16.1.172
$2: gcc_version
$3: none
參數“-p 6379 -a MyPassword”,
根據redis服務運行的端口及登錄是否提供密碼,請根據實際情況確定
8、 在zabbix配置界面導入模板配置文件(zbx_redis_templates.xml)
9、 參考文檔:README.md
其它思路:
通過shell腳本來取得數據:
[root@localhost /]# /usr/local/redis/bin/redis-cli -h 172.16.1.172 -p 6379 -a MyPassword info | grep gcc_version | cut -d : -f2

[THE END]
