概述
自动发现(LLD)提供了一种为受监控节点的不同监控指标自动创建监控项,触发器和图形的分发。例如,Zabbix可以在你的机器上自动开始监控服务端口,而无需为每个服务端口手动创建监控项。
此外,可以配置Zabbix根据定期执行发现后的得到实际结果,来移除不需要的监控。
用户可以自己定义发现类型,只要它们遵循特定的JSON协议。
发现过程的一般架构如下。
首先,用户在“配置”→“模板”→“发现”列中创建一个发现规则。
发现规则包括
(1)发现需要监控的指标(例如,服务短口)
(2)根据发现的监控指标的值来创建监控项,触发器和图形的原型
发现需要监控的指标通常都是agent端的自定义脚本获取,获取为JSON格式的数据。
JSON格式内容
举例
{
"data": [
{
"{#TCP_PORT}": "25"
},
{
"{#TCP_PORT}": "10050"
}
}
{#TCP_PORT}为自动发现设定的宏,宏的名字由用户在agent端脚本自定义。
这些宏可用于名称,键值和其他原型字段中;然后zabbix-server会查看宏→值对,每对都根据监控项原型,触发器原型和图形原型生成实际监控项,触发器、图形。
以服务端口为例做自动发现LLD
步骤1 创建发现规则
在Template OS Linux模板中测试。
步骤2 设置对应agent端自定义脚本
步骤3 设置监控原型
上图中键值一栏,对于{TCP_PORT}漏了#符号,修改为{#TCP_PORT}
步骤4 设置图形原型
检查成果
检测中 --> 最新数据
关闭8080端口后