新用户注册入口 老用户登录入口

[转载]zabbix监控项之自动发现规则,通过shell脚本输出json格式数据

文章作者:转载 更新时间:2023-07-16 17:10:56 阅读数量:85
文章标签:监控项自动发现Zabbix进程端口自动发现规则监控指标监控项原型
本文摘要:本文详细介绍了如何在Zabbix中利用自动发现功能针对每台服务器上运行的动态变化的服务进程端口进行监控。首先,通过编写`discovery_process.sh`脚本调用netstat命令获取所有进程的端口号,并以JSON格式输出数据,其中{#PROCESS}作为宏值用于监控项原型的键值区分。然后,在Zabbix前端配置自动发现规则并关联此脚本,接着定义监控指标和监控项原型,专注于每个进程的端口号。为了确保每个监控项正确关联到对应的端口值,使用了双$$符号进行引用和区分。最后,重启Zabbix Agent服务完成整个自动发现与监控设置过程。通过这种方法,实现了对服务器上不同服务进程端口状态的自动化、精准监控。
转载文章

本篇文章为转载内容。原文链接:https://blog.csdn.net/qq_55723966/article/details/117706262。

该文由互联网用户投稿提供,文中观点代表作者本人意见,并不代表本站的立场。

作为信息平台,本站仅提供文章转载服务,并不拥有其所有权,也不对文章内容的真实性、准确性和合法性承担责任。

如发现本文存在侵权、违法、违规或事实不符的情况,请及时联系我们,我们将第一时间进行核实并删除相应内容。

例:假如要监控所有正在运行的服务进程端口,因为每台服务器的进程都不同,是一个会变化的监控项,所以应用模板对每台服务器监控时需要用到自动发现添加监控项,以netstat命令查看到的所有进程举例。

一、首先要设置一个监控项自动发现规则,自定义键值并通过脚本自动发现到所有监控项#PROCESS,并通过脚本设置为json格式输出(以便定义监控项原型的键值区分每个监控项)

1.###注意取监控项的时候这两行多余的内容要去掉,可以把所需内容输出到/tmp/netstat_port.txt文件方便监控项取值。

2.编写输出json格式数据脚本discovery_process.sh,得到所需自动发现规则的宏值{#PROCESS}用来做后面监控项原型的键值。

#!/bin/bash
#设置数组item为需要得到的所有监控项键值数据,变量itemnum为数据的个数
item=`netstat -ntlp|awk '{print $7}'|sed '1,2d'`
itemnum=`netstat -ntlp|awk '{print $7}'|sed '1,2d'|wc -l`
#输出json格式数据
num=0
echo "{"\"data\"":["
for name in ${item[@]}
dolet num=num+1if [ "$num" -eq "$itemnum" ]thenecho "{"\"{#PROCESS}\"":"\"${name}\""}"elseecho "{"\"{#PROCESS}\"":"\"${name}\""},"fi
done
echo "]}"

3.自定义自动发现规则的监控指标

4.在zabbix前端添加自动发现规则

5.设置监控项原型,需要监控的指标  例子中为每个进程的端口号

6.自定义监控项原型所要监控的最终监控项

      双"$$"符是zabbix用来引用系统的"$"符号时和这里传递的位置参数"[*]"做区分,egrep -w "$1$"是用正则以及精确匹配出以键值参数[*]中的第一个参数"$1"结尾的那一行,使每个监控项得到对应自己的那一个值。

例如:

7.重启agent服务然后大功告成

本篇文章为转载内容。原文链接:https://blog.csdn.net/qq_55723966/article/details/117706262。

该文由互联网用户投稿提供,文中观点代表作者本人意见,并不代表本站的立场。

作为信息平台,本站仅提供文章转载服务,并不拥有其所有权,也不对文章内容的真实性、准确性和合法性承担责任。

如发现本文存在侵权、违法、违规或事实不符的情况,请及时联系我们,我们将第一时间进行核实并删除相应内容。

相关阅读
文章标题:[转载][洛谷P1082]同余方程

更新时间:2023-02-18
[转载][洛谷P1082]同余方程
文章标题:[转载]webpack优化之HappyPack实战

更新时间:2023-08-07
[转载]webpack优化之HappyPack实战
文章标题:[转载]oracle 同时更新多表,在Oracle数据库中同时更新两张表的简单方法

更新时间:2023-09-10
[转载]oracle 同时更新多表,在Oracle数据库中同时更新两张表的简单方法
文章标题:[转载][Unity] 包括场景互动与射击要素的俯视角闯关游戏Demo

更新时间:2024-03-11
[转载][Unity] 包括场景互动与射击要素的俯视角闯关游戏Demo
文章标题:[转载]程序员也分三六九等?等级差异,一个看不起一个!

更新时间:2024-05-10
[转载]程序员也分三六九等?等级差异,一个看不起一个!
文章标题:[转载]海贼王 动漫 全集目录 分章节 精彩打斗剧集

更新时间:2024-01-12
[转载]海贼王 动漫 全集目录 分章节 精彩打斗剧集
名词解释
作为当前文章的名词解释,仅对当前文章有效。
监控项自动发现在IT监控系统(如Zabbix)中,监控项自动发现是一种智能化机制,它能够动态地发现并添加新的监控对象(如服务器进程端口)。通过预定义的规则和脚本,系统能定期扫描目标设备或服务以获取实时状态信息,并自动生成相应的监控项,确保对不断变化的环境进行有效、及时的监控。
宏值{#PROCESS}在Zabbix监控系统中,宏是一种特殊变量,可用于传递动态参数并在多个地方引用。文章中的宏值{#PROCESS}是在设置监控项自动发现规则时生成的一个特定键值,用于唯一标识每个被监控的服务进程端口。通过将netstat命令获取到的端口号赋给这个宏值,在创建监控项原型时可以引用此宏,从而实现为每个不同的端口分别创建对应的监控项。
JSON格式输出JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,也易于机器解析和生成。在本文提到的场景中,通过编写shell脚本discovery_process.sh,将netstat命令查询到的所有运行服务进程的端口信息转换成JSON格式数据输出。这样做的好处是,Zabbix可以方便地解析这种结构化数据,根据JSON对象中的键值关系来创建和关联相应的监控项,进而实现实时监控每台服务器上不同服务进程的端口状态。
延伸阅读
作为当前文章的延伸阅读,仅对当前文章有效。
在IT运维管理领域,实时监控网络服务进程端口的状态对于保障系统稳定性和安全性至关重要。Zabbix作为一款功能强大的开源监控解决方案,通过其内置的自动发现机制,能够有效地实现对服务器上动态变化的服务进程端口进行高效、精准的监控。最近,Zabbix团队持续优化其自动发现规则和宏变量功能,以更好地适应云原生环境和容器化应用的监控需求。
近期发布的Zabbix 5.4版本中,强化了对Kubernetes等容器编排平台的支持,允许用户利用自动发现功能追踪Pod和服务端口的变化,确保无论是在传统服务器架构还是在复杂多变的微服务环境中,都能实现无缝隙的端口监控。同时,新版本还改进了与第三方脚本的集成方式,使得像本文所述那样,利用netstat或其他命令获取信息并转化为JSON格式供Zabbix解析的过程更为便捷。
此外,结合时下流行的DevOps理念和实践,自动化监控不仅是提升运维效率的重要手段,也是保障CI/CD流程顺畅运行的关键环节。例如,在持续部署过程中,通过预设的自动发现规则,可以即时捕获新增或变更的服务端口状态,从而及时发现问题并触发告警,为运维人员提供迅速响应的时间窗口。
综上所述,借助Zabbix及其灵活的自动发现机制,我们可以构建一个全面且智能的端口监控体系,无论是针对传统服务进程,还是面向现代化云原生应用,都能确保系统的平稳运行,有效降低故障发生的风险。随着IT技术的不断演进与发展,深入理解和掌握这类监控工具的能力将日益成为运维工程师不可或缺的核心技能之一。
知识学习
实践的时候请根据实际情况谨慎操作。
随机学习一条linux命令:
du -sh * - 显示当前目录下所有文件和目录大小。
随便看看
拉到页底了吧,随便看看还有哪些文章你可能感兴趣。
基于Redis的分布式锁互斥性与可靠性实现及命名空间与原子性保障 04-22 可自定义刻度动画的jQuery进度条插件 02-07 jQuery和css3网站操作提示向导插件 12-28 jQuery创意响应式两栏滚动幻灯片特效 11-30 带视频播放的全屏轮播图布局特效 09-07 黑色炫酷个人摄影师网站通用模板下载 01-20 Cassandra中哈希分区与范围分区策略:数据分布、Murmur3Partitioner与负载均衡实践 11-17 [转载]java培训后好找工作吗 11-13 响应式环保包装盒设计公司网站静态模板 11-04 本次刷新还10个文章未展示,点击 更多查看。
中文建筑工程公司静态html网站模板下载 07-03 红色大气高端特色餐厅加盟网站模板 06-21 Vue.js 中的数据绑定与取消绑定:事件监听器、$destroy() 方法及 v-model 指令的运用与虚拟DOM、组件销毁的关系解析 06-20 响应式游戏应用商店单页网站html模板 06-15 自考大学通用模板下载 06-13 jqtimeline.js-简单又好用的jquery时间轴插件 06-04 [转载]Java Work 05-26 红色简洁电影售票平台网站html模板 05-02 投资集团项目展示页面网站HTML5模板 03-22 soulmate粉色干净浪漫唯美婚礼单页响应式网站模板 03-07 页面滚动时动态为元素添加class的jQuery插件 03-05
时光飞逝
"流光容易把人抛,红了樱桃,绿了芭蕉。"