安装环境
Zabbix server和agent通过编译方式安装在服务器192.168.25.106上。Zabbix server/agent的安装目录为:/usr/local/zabbix。
创建脚本
创建自动发现Shell脚本
创建Shell脚本,使用zabbix_sender命令将监控项的值发送给监控项。脚本主要分为三部分:检查自定义配置文件的合法性,发送json数据给自动发现规则的键值,为每个监控项发送值。
在/usr/local/zabbix/目录下创建script/目录,用于存放脚本,注意修改权限(添加可执行权限,拥有着和所属组为zabbix)。脚本具体如下:
#!/bin/bash
# Discovery port list and get status of port.
# port_discovery.sh
ZABBIX_SENDER=/usr/local/zabbix/bin/zabbix_sender
CONFIG_FILE=/usr/local/zabbix/etc/port.conf
PROXY_IP=192.168.25.106
# HOSTNAME 必须和zabbix前端定义的主机名称一致。
HOSTNAME=192.168.25.106
# 检查自定义配置文件的合法性,除注释和空行外只能包含有效的端口号。
checkConfig(){
grep -vE '(^ *#|^$)' ${CONFIG_FILE} | grep -vE '^ *[0-9]+' &> /dev/null
if [ $? -eq 0 ]
t