zabbix-自动发现。
用于检测新加机器是否含有我们所需要的一些服务(php,java都可以)
1.编写自动发现的脚本,执行脚本后回去本机的使用的服务。返回的数据格式要统一。[以及收集数据的脚本]
data.append({"{#APPNAME}": i})
print json.dumps({'data': data})
运行结果:即可
{"data": [{"{#APPNAME}": "xxxxx"}, {"{#APPNAME}": “x x x x x x”}]}
添加自定义的key
UserParameter=app.discovery,/usr/bin/python /xxxx/app_status.py discovery
UserParameter=app_status[*],/usr/bin/python /xxxx/app_status.py $1
2.zabbix-server模版上添加自动发现规则
确认模版上添加自动发现!
构建键值与上一致
上述获取的变量 $app_name 可以根据自定义的正则去筛选,也可以不塞选。
自动注册
一:添加动作
发现规则可以根据主机名去添加模版!
这个模版可以结合上述的自动发现
二、客户端主机命名
因为自动注册是基于主机名的。客户端的主机名在配置文件/etc/zabbix/zabbix_agentd.conf中配置。