参考官方文档: https://www.zabbix.com/documentation/2.0/manual/discovery/low_level_discovery
说明:本节将使用脚本形式批量监控WEB页面,再多的URL都可以写在weblist文件中进行自动监控;由于监控网页不需要依赖某台监控主机,因此直接在Zabbix Server上配置即可。
1、新建脚本文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| [iyunv@zabbix ~]# cd /usr/local/zabbix/sbin
[iyunv@zabbix sbin]# vi discoverwebsite.sh
#!/bin/bash
WEB_SITE=($(cat /usr/local/zabbix/sbin/weblist.txt | grep -v "^#"))
length=${#WEB_SITE[@]}
printf '{\n'
printf '\t'"\"data\":["
for((i=0;i<$length;i++))
do
printf '\n\t\t{'
printf "\"{#SITE_NAME}\":\"${WEB_SITE[$i]}\"}"
if [ $i -lt $[$length-1] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"
|
2、新建weblist.txt
有多少URL都可以写在这里,注意要加上协议头http://
weblist.txt文件的存放路径必须和脚本中参数WEB_SITE内指定的路径一致。
3、增加website的key
1
2
3
4
5
6
| [iyunv@zabbix sbin]# cd ..
[iyunv@zabbix zabbix]# vi etc/zabbix_agentd.conf
UnsafeUserParameters=1
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
[iyunv@zabbix zabbix]# vi etc/zabbix_agentd.conf.d/discoverwebsite.conf
UserParameter=website,/usr/local/zabbix/sbin/discoverwebsite.sh "$1"
|
4、重启zabbix_agentd服务
1
| [iyunv@zabbix zabbix]# service zabbix_agentd restart
|
按第2步修改配置zabbix_agentd.conf需要重启服务,以后可以在/zabbix_agentd.conf.d/目录下添加配置文件,不用重启服务就能生效。
5、测试
1
2
3
4
5
6
7
8
9
10
| [iyunv@zabbix sbin]# cd sbin
[iyunv@zabbix sbin]# chmod +x discoverwebsite.sh
[iyunv@zabbix sbin]# ./discoverwebsite.sh
{
"data":[
{"{#SITE_NAME}":"http://10.188.1.103/zabbix/dashboard.php"},
{"{#SITE_NAME}":"http://www.baidu.com"},
{"{#SITE_NAME}":"http://mail.qq.com"}
]
}
|
6、在Linux模板中创建端口自动发现规则
7、查看自动发现结果
|