zabbix 3.4 直接 发现端口并作存活监控(带服务名)
客户端配置
1.脚本
[root@es1 home]# cat /home/port_service.sh
#!/bin/bash
#by Mr.lu
#su root
portarray=(`sudo -u root /usr/bin/netstat -tnlp|egrep -i "$1"|awk {'print $4'}|awk -F':' '{if ($NF~/^[0-9]*$/) print $NF}'|sort|uniq`)
length=${#portarray[@]}
printf "{\n"
printf '\t'"\"data\":["
for ((i=0;i<$length;i++))
do
printf '\n\t\t{'
printf "\"{#TCP_PORT}\":\"${portarray[$i]}\","
printf "\"{#TCP_NAME}\":\"`sudo -u root /usr/bin/netstat -ntpl|awk '{if($4~/:'${portarray[$i]}'$/) print $7}'|awk -F '/' '{print $2}'|uniq|awk '{print $1}'`\"}"
if [ $i -lt $[$length-1] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"
2. zabbix agnet 配置文件
[root@es1 home]# cat /etc/zabbix/zabbix_agentd.d/port_service.conf
UnsafeUserParameters=1
UserParameter=tcpportlisten,/home/port_service.sh "$1"
3. 权限
/etc/sudoers
增加:
zabbix ALL = NOPASSWD: ALL
4.重启zabbix-agent
服务端配置
1.增加模板(如增加到现有模板,直接点自动发现)
1.自动发现配置
注意:键值要与zabbix 客户端配置一样
2.监控原型
注意:变量名要与脚本里一样
3.报警
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构