zabbix-低级自动发现LLD

一、低级自动发现LLD

低级自动发现是用来自动化添加监控项,通过自动发现规则和监控项原型实现。

二、LLD监控主机端口实践

1、自动发现规则:编写脚本,获取所有的端口,然后将这个脚本制作为一个特殊的Key

脚本输出固定格式

{
  "data":[
    {"{#TCP_PORT}":"10050"},
    {"{#TCP_PORT}":"22"},
    {"{#TCP_PORT}":"80"}
  ]
}

按照输出固定格式编写自动发现脚本

# cat /etc/zabbix/zabbix_agentd.d/port.discovery.sh
#!/bin/bash

array_port=($(netstat -nltp | awk '{print $4}' | awk -F ":" '{print $NF}' | egrep "^[0-9]+" | sort | uniq | xargs))
length=${#array_port[@]}

printf "{\n"
printf "\t\"data\":[\n"

index=0
for i in ${array_port[@]}
do
	index=$[ $index + 1 ]
	if [ ${index} -eq ${length} ]
	then
		printf "\t\t{\"{#TCP_PORT}\":\"${i}\"}\n"
	else
		printf "\t\t{\"{#TCP_PORT}\":\"${i}\"},\n"
	fi
done
printf "\t]\n"
printf "}\n"

将该脚本制作为监控项

# cat /etc/zabbix/zabbix_agentd.d/port.discovery.conf
UserParameter=port.discovery,sudo /bin/bash /etc/zabbix/zabbix_agentd.d/port.discovery.sh

在zabbix server验证该监控项

# zabbix_get -s 192.168.239.138 -k port.discovery
{
	"data":[
		{"{#TCP_PORT}":"10050"},
		{"{#TCP_PORT}":"10050"}
	]
}

在zabbix web创建自动发现规则

  • 创建模板

  • 创建自动发现规则

2、基于发现规则准备监控项

编写脚本,自动义监控项 ,在监控项原型中创建该监控项。

此处示例直接使用自带的监控项

  • 创建监控项原型

  • 创建触发器原型

将该模板链接到要监控的主机,链接主机查看自动生成的监控项

posted @   原来是你~~~  阅读(123)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
历史上的今天:
2023-08-15 kingbase-备份恢复
点击右上角即可分享
微信分享提示