文章目录
- 24. zabbix 低级自动发现
- 24.1 查看自动发现规则
- 24.2 案例:自动发现新增网卡
- 24.3 修改配置文件
- 24.4 案例:自定义监控项原型检测网卡 mac 地址
- 24.5 查看监控项原型
- 24.6 问题?
24. zabbix 低级自动发现
解释说明:
自动发现:自动发现添加主机
低级自动发现:自动发现添加监控项
点击监控项可以看到一些 “非模本监控项”,这些 “非模板监控项” 就是 “低级自动发现” 自动发现添加的模板
24.1 查看自动发现规则
24.2 案例:自动发现新增网卡
新增加一块网卡
24.3 修改配置文件
# 在 /etc/zabbix/zabbix_agentd.d 目录下增加新的监控 .conf 文件,本次为查询 mac 地址,新建文件 mac.conf ,增加如下内容
[root@zabbix zabbix_agentd.d]# cat mac.conf
UserParameter=net_mac[*],ifconfig $1 | grep ether | awk '{print $2}'
24.4 案例:自定义监控项原型检测网卡 mac 地址
1)选择对应主机的 “自动发现”
2)选择对应模板的 “监控原型”
3)选择创建监控项原型
参数说明:
{#IFNAME} 网卡名称,参考 zabbix 自带的其他模板(例如:Outgoing network traffic on {#IFNAME})
这个参数是来自 Template OS Linux 模板
24.5 查看监控项原型
注意修改监控间隔时间,默认是1小时,这里测试所以时间设置很短
在配置的的主机中找到对应的 “非模板监控项”
查看最新数据
24.6 问题?
1)为什么在 “监控原型” 中的变量要写成 {#IFNAME}
解释说明如下:
因为当前测试的机器使用了一个 zabbix 自带的模板 Template OS Linux ,
当前看到的自动发现规则实际是继承 Template OS Linux 这个模板
在自动发现规则中的 net.if.discovery 这个键值,其实算是一个特殊的“监控项”,
我们可以直接在 server 中测试取值,会得到一个 json 格式的字符串,在这个字符串中就定义了这个 key 值
[root@zabbix ~]# zabbix_get -s 127.0.0.1 -k net.if.discovery
{"data":[{"{#IFNAME}":"ens37"},{"{#IFNAME}":"lo"},{"{#IFNAME}":"ens33"}]}
2)上面 zabbix_get -s 127.0.0.1 -k net.if.discovery 获取的值中还有一个 lo 页面中为什么没有显示出来
解释说明如下:
因为在对应的“自动发现规则”下有个过滤的正则表达式,将我们不想展示的内容过滤掉
配置 --> 主机 --> 自动发现
配置 --> 主机 --> 自动发现 --> 监控原型
配置 --> 主机 --> 自动发现 --> 对应规则名称
下图对应上面 问题? 2)中,为什么 lo 网卡没有显示的问题
自动发现规则过滤器中匹配的正则表达式的位置
管理 --> 一般 --> 右侧的下拉框
如果想要修改正则表达式内容,只需要点击想要修改的正则表达式名称,进入修改页面