共计 2691 个字符,预计需要花费 7 分钟才能阅读完成。
不得不说,我在监控 redis 这里卡了有一天半的时间,zabbix_get 也可以获取到数据,就是没有自动生成监控项和监控图像,后来干脆把别人的模板抛弃,自己重新建立模板和监控项,就都出来了。真是无语的很。大概因为是 zabbix 的版本号不一样导致的吧
一:客户端配置
1. 自动发现 redis 端口的脚本,脚本要给 755 权限,属主是 zabbix
chmod 755 /etc/zabbix/alertscripts/zabbix_discovery_redis.sh
chown zabbix.zabbix /etc/zabbix/alertscripts/zabbix_discovery_redis.sh
1234567891011121314151617181920212223 #!/bin/bash
#Fucation:MySQL low-level discovery
#Script_name zabbix_discovery_redis.sh
redis() {
port=($(sudo netstat -tpln | awk -F “[ :]+” ‘/redis/ && /0.0.0.0/ {print $5}’))
printf ‘{\n’
printf ‘\t”data”:[\n’
for key in ${!port[@]}
do
if [[“${#port[@]}” -gt 1 && “${key}” -ne “$((${#port[@]}-1))” ]];then
socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F ‘=’ ‘{print $10}’|cut -d ‘ ‘ -f 1`
printf ‘\t {\n’
printf “\t\t\t\”{#REDISPORT}\”:\”${port[${key}]}\”},\n”
else [[“${key}” -eq “((${#port[@]}-1))” ]]
socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F ‘=’ ‘{print $10}’|cut -d ‘ ‘ -f 1`
printf ‘\t {\n’
printf “\t\t\t\”{#REDISPORT}\”:\”${port[${key}]}\”}\n”
fi
done
printf ‘\t ]\n’
printf ‘}\n’
}
$1
因为要在模板里面套用 redis 端口。所以脚本检测出来的端口格式必须是 json
其他问题:
zabbix_agentd 是 zabbix 用户启动的,默认不能执行 netstat - p 等命令,因此可以配置 sudo 解决,也可以使用 chmod +s /bin/netstat 进行解决。
这里我使用了 sudo
vim /etc/sudoers
#Defaults requiretty
Defaults:zabbix !requiretty
zabbix ALL=(root) NOPASSWD:/bin/netstat
2. 添加 zabbix_agent 配置文件
[root@test zabbix_agentd.conf.d]# cat /etc/zabbix/zabbix_agentd.conf.d/check_redis.conf
UserParameter=redis.discovery[*],/etc/zabbix/alertscripts/zabbix_discovery_redis.sh $1
UserParameter=redis_stats[*],(echo info; sleep 1) | telnet 127.0.0.1 $1 2>&1 |grep $2|cut -d : -f2
测试 zabbix_get 是否能获取到 redis 数据
[root@test alertscripts]# /usr/local/zabbix/bin/zabbix_get -s 127.0.0.1 -k redis_stats[6379,connected_clients]
1
3. 重启 zabbix_agent
service zabbix_agentd restart
二. 服务器端配置
1、创建模板
模板名称:Template_Redis_Monitor,创建应用 check_redis
2、创建自动发现规则
给已创建好的模板 Template_Redis_Monitor 添加自动发现规则。
创建自动发现监控项
3. 配置正则
4、添加监控项原型
5. 再来看看主机关联模板后的监控项:
6. 查看监控数据图
这里我只是监控了一个项。其他的请自行拓展,如有问题请留言。
一些 Zabbix 相关教程集合:
Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装 http://www.linuxidc.com/Linux/2015-05/117657.htm
安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm
《安装部署分布式监控系统 Zabbix 2.06》http://www.linuxidc.com/Linux/2013-07/86942.htm
CentOS 6.3 下 Zabbix 安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htm
Zabbix 分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/136933.htm