使用场景
当被监控端无法安装agent,可以使用外部监查
准备
1.需要在server端配置ExternalScripts参数,指定脚本路径
2.准备获取监控数据的脚本
数据收集流程
脚本一般放在server/proxy上,当有外部检查监控项获取数据时,zabbix-server会到配置文件指定的路径查找监控项对应的脚本并且执行。脚本会到被监控的设备获取数据并将输出的结果返回给zabbix-server。
语法
script[ parameter1, parameter2,...]
1.zabbix-server端配置
首先查看配置文件
vim /etc/zabbix/zabbix_server.conf
查看ExternalScripts路径
ExternalScripts=/usr/lib/zabbix/externalscripts
在/usr/lib/zabbix/externalscripts目录下编写监控项脚本
[root@localhost externalscripts]# vim dns_time.sh
#!/bin/bash
TIMEOUT=15
DNS_SERVER=$1
DOMAIN=$2
if test -z "$1"
then
echo"未指定DNS Server"
fi
if test -z "$2"
then
echo "未指定解析域名"
exit
fi
RESOLVE_TIME=`(time dig @$1 $2) 2>&1|grep real|cut -dm -f 2 |sed 's/[s.]//g'`
echo $RESOLVE_TIME
脚本是用来返回DNS响应时间的,此作为参考
[root@localhost externalscripts]# ./dns_time.sh 114.114.114.114 www.baidu.com
0029 #已经获取到DNS响应时间
2.添加zabbix监控项

查看最新数据,已经可以正确获取dns解析时间

欢×××
