zabbix 监控redis
1. 在zabbix_agent 配置脚本
#!/bin/bashredis_status(){R_PORT=$1R_COMMAND=$2(echo -en "INFO \r\n";sleep 1;) | ncat 127.0.0.1 "$R_PORT" > /usr/local/zabbix/redis_"$R_PORT".tmpREDIS_STAT_VALUE=$(grep ""$R_COMMAND":" /usr/local/zabbix/redis_"$R_PORT".tmp | cut -d ':' -f2)echo $REDIS_STAT_VALUE}help(){echo "${0} + redis_status + PORT + COMMAND"}main(){case $1 inredis_status)redis_status $2 $3;;*)help ;;esac}main $1 $2 $3
root@Z4:~# mkdir /usr/local/zabbix
root@Z4:~# chown zabbix.zabbix /usr/local/zabbix -R
root@Z4:/etc/zabbix/zabbix_agentd.d# chmod +x redis.sh
2. 调用脚本
先再本机测
root@Z4:/etc/zabbix/zabbix_agentd.d# bash redis.sh redis_status 6379 connected_clients
1
再修改zabbix-agent.conf
UserParameter=redis.status[*],/etc/zabbix/zabbix_agentd.d/redis.sh "$1" "$2" "$3"
再在proxy 或server 上测,若遇到以下问题 ,是由于/usr/local/zabbix/redis_6379.tmp 刚才脚本用bash执行过,删除即可
root@z2:~
/etc/zabbix/zabbix_agentd.d/redis.sh: 7: /etc/zabbix/zabbix_agentd.d/redis.sh: cannot create /usr/local/zabbix/redis_6379.tmp: Permission denied
1
在server或proxy 上测
root@z2:~# zabbix_get -s 192.168.1.104 -p 10050 -k redis.status[redis_status,6379,connected_clients]
2
root@z2:~# zabbix_get -s 192.168.1.104 -p 10050 -k redis.status[redis_status,6379,used_memory]
881992
3. 创建模板、监控项、图形


4.创建触发器
当redis 连接数大于3时报警

验证
当redis 连接数大于3时报警

长黑虚线为3 ,触发器的准线

