Zabbix监控Redis性能状态
监控原理示意图:
监控原理
Zabbix-server通过agent监控中配置文件调用shell脚本。Redis中提供redis-cli 命令使用info可以获得redis大部分信息。在使用shell命令获取到需要的信息。
监控操作步骤:
1、编辑脚本
2、上传脚本到指定位置
3、修改zabbix_agent配置文件
4、zabbix_server的web界面导入模版(编辑模板)
5、主机关联
1、配置zabbix_agent配置文件,添加以下内容
[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
UserParameter=Redis.Info[*],/data/scripts/auto_detection_redis_state.sh $1
#保存退出
2、重启Zabbix_agentd服务
[root@localhost ~]# service zabbix_agentd restart
3、下载脚本文件(获取监控值)
[root@localhost ~]# cd /data/scripts
[root@localhost scripts]# wget -c https://mirrors.yangxingzhen.com/shell/auto_detection_redis_state.sh
[root@localhost scripts]# cat auto_detection_redis_state.sh
#脚本内容如下
#!/bin/bash
#Date:2017-5-20 13:14:00
#Author blog:
# https://www.yangxingzhen.com
#Author site:
# https://www.yangxingzhen.com/sitemap.html
#Author mirrors site:
# https://mirrors.yangxingzhen.com
#About the Author
# BY:小柒博客
# QQ:675583110
# Mail:675583110@qq.com
#Zabbix监控Redis状态和性能
HOST='127.0.0.1'
PORT='8877'
if [[ $# == 1 ]];then
case $1 in
version)
redis-cli -h $HOST -p $PORT info | grep redis_version | awk -F: '{print $2}'
;;
uptime)
redis-cli -h $HOST -p $PORT info | grep uptime_in_seconds | awk -F: '{print $2}'
;;
connected_clients)
redis-cli -h $HOST -p $PORT info | grep connected_clients | awk -F: '{print $2}'
;;
blocked_clients)
redis-cli -h $HOST -p $PORT info | grep blocked_clients | awk -F: '{print $2}'
;;
used_memory)
redis-cli -h $HOST -p $PORT info | grep used_memory_human | awk NR==1 | awk -F: '{print $2}'
;;
used_memory_rss)
redis-cli -h $HOST -p $PORT info | grep used_memory_rss_human | awk NR==1 | awk -F: '{print $2}'
;;
used_memory_peak)
redis-cli -h $HOST -p $PORT info | grep used_memory_peak_human | awk NR==1 | awk -F: '{print $2}'
;;
used_memory_lua)
redis-cli -h $HOST -p $PORT info | grep used_memory_lua_human | awk NR==1 |awk -F: '{print $2}'
;;
used_cpu_sys)
redis-cli -h $HOST -p $PORT info | grep used_cpu_sys | awk NR==1 | awk -F: '{print $2}'
;;
used_cpu_user)
redis-cli -h $HOST -p $PORT info | grep used_cpu_user | awk NR==1 | awk -F: '{print $2}'
;;
used_cpu_sys_children)
redis-cli -h $HOST -p $PORT info | grep used_cpu_sys_children | awk -F: '{print $2}'
;;
used_cpu_user_children)
redis-cli -h $HOST -p $PORT info | grep used_cpu_user_children | awk -F: '{print $2}'
;;
rdb_last_bgsave_status)
redis-cli -h $HOST -p $PORT info | grep rdb_last_bgsave_status | awk -F: '{print $2}' | wc -l
;;
aof_last_bgrewrite_status)
redis-cli -h $HOST -p $PORT info | grep aof_last_bgrewrite_status | awk -F: '{print $2}' | wc -l
;;
aof_last_write_status)
redis-cli -h $HOST -p $PORT info | grep aof_last_write_status | awk -F: '{print $2}' | wc -l
;;
db0_keys)
redis-cli -h $HOST -p $PORT info | grep -w keys | awk -F '=|,' '{print $2}'
;;
db0_expires)
redis-cli -h $HOST -p $PORT info | grep -w expires | awk -F '=|,' '{print $4}'
;;
db0_avg_ttl)
redis-cli -h $HOST -p $PORT info | grep avg_ttl | awk -F '=' '{print $4}'
;;
*)
echo -e "\033[32mUsage: $0 { uptime | connected_clients | blocked_clients | used_memory | used_memory_rss | used_memory_peak | used_memory_lua | used_cpu_sys | used_cpu_user | used_cpu_sys_children | used_cpu_user_children | rdb_last_bgsave_status | aof_last_bgrewrite_status | aof_last_write_status | db0_keys | db0_expires | db0_avg_ttl}\033[0m"
;;
esac
else
echo -e "\033[32mUsage: $0 { uptime | connected_clients | blocked_clients | used_memory | used_memory_rss | used_memory_peak | used_memory_lua | used_cpu_sys | used_cpu_user | used_cpu_sys_children | used_cpu_user_children | rdb_last_bgsave_status | aof_last_bgrewrite_status | aof_last_write_status | db0_keys | db0_expires | db0_avg_ttl}\033[0m"
fi
[root@localhost scripts]# chmod +x auto_detection_redis_state.sh
5、验证server端验证是否能获取agent端的key值
#使用zabbix_get命令获取key值
Zabbix监控平台配置
1、下载监控模板文件
模板附件下载:
2、导入Redis监控模板
进入后台->配置->模板->导入(右上角)-> 选择下载的模板文件->最后点击导入 。
至此Redis监控模板已经导入到Zabbix中。
3、关联模板
需要把Redis监控模板链接到你的监控主机上,进入后台->配置->点击你的主机->模板->选择刚才导入模板,点击添加,最后点击更新即可。
4、效果图展示
至此,Zabbix监控Redis性能配置完毕。
若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如本文“对您有用”,欢迎随意打赏,谢谢!
广东省东莞市 电信 0F
真不错
广东省东莞市 电信 0F
厉害
广东省东莞市 电信 0F
哇哇哇哇哇
广东省东莞市 电信 0F
老鼠爱大米
上海市 联通 0F
不错
广东省深圳市 电信 B1
@ william 不能加载?
上海市 联通 0F
1111可以
广东省东莞市 电信 0F
nice超棒
浙江省杭州市 电信 0F
asdasdasdasdganx 啊实打实
浙江省杭州市 电信 0F
感谢asd
浙江省杭州市 电信 0F
感谢
浙江省杭州市 电信 0F
感谢
美国 马萨诸塞州大波士顿区麻省理工学院 0F
模板
浙江省 电信 0F
可以
中国 移动 0F
要模板的
广东省深圳市 电信 0F
可以,谢谢
浙江省杭州市 联通 0F
我是来要模板的
浙江省杭州市 联通 0F
你好
浙江省杭州市 联通 0F
感谢
美国 马萨诸塞州大波士顿区麻省理工学院 0F
感謝
安徽省 联通 0F
111测测1
上海市 电信 0F
要模板的
上海市 电信 0F
我是来要模板的
福建省厦门市 电信 0F
我是来要模板的
江苏省南京市 电信 0F
我是来要模板的
内蒙古呼和浩特市 联通 0F
我要下载模板,快点给我。我要
内蒙古呼和浩特市 联通 0F
我要下东西,快点让我看
浙江省杭州市 电信 0F
这个模板对zabbix的版本有要求么?
广东省深圳市 电信 B1
@ plbyy 我用的是4.4.3哦,其他版本试试咯,应该通用的
江苏省南京市 电信 0F
我去试试看看行不行 谢谢
广东省深圳市 电信 B1
@ 元夕丫 欢迎
江苏省南京市 电信 0F
赞
北京市丰台区 联通 0F
我去试试可不可以
加拿大 0F
sdfsdfsd非常嘎和的时候的时候
北京市丰台区 联通 0F
我去试试可不可以
广东省深圳市 电信 B1
@ 流云 欢迎
山东省德州市 联通 0F
感谢
江苏省苏州市 电信 0F
感谢
广东省深圳市 电信 B1
@ ledger
湖南省 电信 0F
为了模板下载
广东省深圳市 电信 B1
@ 1231231 可以的
江苏省 电信 0F
是否正的有用 有待验证
广东省深圳市 电信 B1
@ 网盘01 可以用的
北京市 联通 0F
好哈 好啊哦
北京市 网宿科技 0F
谢谢,很好的网站
广东省深圳市 电信 B1
@ 169 谢谢
安徽省宿州市 电信 0F
redis内存总量的键值 (used_memory) 建议改为 used_memory_human 会显示单位G
广东省深圳市 电信 B1
@ 歇斯底里 谢谢,已修改
广东省广州市 电信 0F
谢谢分享 很好的网站
安徽省宿州市 电信 0F
无法下载
广东省深圳市 电信 B1
@ 歇斯底里 已修改,请再试一下
安徽省宿州市 电信 0F
下载下载
安徽省宿州市 电信 0F
谢谢分享
广东省深圳市 电信 B1
@ 歇斯底里 已修复下载地址,请再次试试
台湾省 中华电信HiNet 0F
下载
广东省深圳市 电信 B1
@ StarSky 欢迎欢迎、
台湾省 中华电信HiNet 0F
谢谢分享 很好的网站
广东省广州市 联通 0F
不错
广东省广州市 电信 0F
谢谢分享 很好的网站
江苏省南京市 电信 0F
liha牛逼
菲律宾 Bayan通讯公司用户 0F
谢谢分享 很好的网站
湖北省襄阳市 联通 0F
哈哈哈哈
湖北省武汉市 电信 0F
下载
湖北省武汉市 电信 0F
感谢分享
广东省揭阳市 电信 0F
咋不上天呢
湖北省武汉市 电信 B1
@ test 下不了啊
广东省深圳市 电信 B2
@ test 打开浏览器,输入Ctrl+j,复制链接进去就可以下载
台湾省台北市 中华电信 0F
不错
台湾省台北市 中华电信 0F
不错
广东省深圳市南山区 电信 0F
写的不错
广东省深圳市南山区 电信 0F
地板
广东省深圳市南山区 电信 B1
@ 小柒博客
广东省深圳市南山区 电信 0F
不错