Zabbix6.0自定义监控项

一、自定义监控整体流程

操作端流程备注
Agent端1️⃣ linux:通过命令、脚本取出对应的值
2️⃣ linux:根据zbx要求按照格式、编写配置文件、创建键值键值key用于获取客户端数据
3️⃣ linux:重启zabbix-agent
Server端4️⃣ linux:服务端测试键值是否可用zabbix_get命令测试
5️⃣ web页面:创建监控项
6️⃣ web页面:创建图形(可选)
7️⃣ web页面:创建触发器(可选)
8️⃣ web页面:测试

二、自定义监控案例

1、监控TCP 443端口案例

PS:此案例只是练习自定义监控流程,仅此而已,监控TCP端口一般使用zabbix自带的 net.tcp.listen[port] 键值实现起来更方便!

1、编写脚本取出对应的值

使用nc命令来判断端口是否可以建立连接,所以先安装nc命令:

yum -y install nc

编写脚本取出对应的值

mkdir /etc/zabbix/zabbix6.0/shell
vi /etc/zabbix/zabbix6.0/shell/tcpPortCheck.sh

#!/bin/bash
checkPort=$1

if (nc -z localhost $checkPort);then
	echo "1" # 存在返1
else
	echo "0" # 不存在返0
fi

赋予执行权限

chmod +x /etc/zabbix/zabbix6.0/shell/tcpPortCheck.sh

2、创建键值

修改zabbix_agentd.conf配置文件

vim /usr/local/conf/zabbix_agentd.conf
# 添加
Include=/usr/local/conf/zabbix_agentd/*.conf
# 追加16.32.15.0/24,不然无法使用zabbix_get命令(16.32.15.0/24修改为自己的IP网段或者0.0.0.0/0全部放开)
Server=10.10.10.0/24,16.32.15.0/24

创建键值

vim /usr/local/conf/zabbix_agentd/tcp_port.conf
# UserParameter=key,cmd(固定格式)
UserParameter=tcp.port.443,/etc/zabbix/zabbix6.0/shell/tcpPortCheck.sh 443

3、重启zabbix-agent

systemctl restart zabbix-agent

4、服务端测试键值是否可用

zabbix_get -s 16.32.15.115 -k tcp.port.443

5、创建监控项

在这里插入图片描述

  • 历史数据保留时长:每个更新间隔获取到的数据,占用空间比较大,推荐设置60d
  • 趋势数据保留时长:记录数据变化的趋势,占用空间较小,推荐保留365d

在这里插入图片描述

这里端口不通是属于正常情况,我本地并没有443端口!

6、创建图形

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
在这里插入图片描述

在这里插入图片描述

查看最新数据

在这里插入图片描述

在这里插入图片描述

如上图可以很清晰的观察到443端口在那个时间点Down了

7、创建触发器

触发器的作用是:当满足触发器的条件时,将触发报警通知。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

8、测试

运行Nginx容器来占用443端口

docker run -itd --name nginx -p 443:80 nginx

将Nginx容器停止后,zabbix页面就会报警,如下图:

docker stop nginx

在这里插入图片描述

启动Nginx后,报警则会恢复,如下图:

docker start nginx

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2、监控服务器异地登入(带参监控项)

1、使用命令获取最近一次登入IP地址

lastlog |grep -w root|awk '{print $3}'

2、创建键值

vim /usr/local/conf/zabbix_agentd/user_login.conf
UserParameter=user.login[*],lastlog |grep -w "$1"|awk '{print $$3}'

小细节:如果使用自定义键值传参,awk取列的时候要使用$$列,如果没有使用传参,正常使用awk即可!

3、重启zabbix-agent

systemctl restart zabbix-agent

4、服务端测试

# 获取root用户最后一次登入IP地址
zabbix_get -s 16.32.15.115 -k user.login[root]
# 获取qinzt用户最后一次登入IP地址
zabbix_get -s 16.32.15.115 -k user.login[qinzt]

5、添加监控项,监控root用户是否异地登入

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6、创建触发器

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

7、测试

使用其他IP地址登入root用户,查看页面告警

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如上图,已经触发了告警通知,但是这个告警等待10s后会自动恢复,原因是在恢复表达式填写逻辑是 与上次IP对比一致即可恢复,而监控项是10s取一次,所以10s后自动恢复!

为了掌握在Zabbix 6.0自定义监控并利用新特性提升监控效率的技能,你应该参考《Zabbix 6.0 中文文档:全面指南与配置手册》。这份文档为用户提供了最新版本的详细操作指导,涵盖了自定义监控的创建与配置以及如何利用新功能提高监控效率的方方面面。 参考资源链接:[Zabbix 6.0 中文文档:全面指南与配置手册](https://wenku.csdn.net/doc/73kbgyn6kc) 自定义监控监控特定应用或服务的关键。在Zabbix中,你可以通过以下步骤自定义监控: 1. 登录到Zabbix前端界面。 2. 导航至“配置”菜单,选择“模板”。 3. 点击“创建模板”,并为其命名。 4. 在模板配置页面,选择“监控”标签页,然后点击“创建监控”。 5. 在创建监控页面,输入监控名称、键值等详细信息,并选择适当的类型。 6. 根据需要配置“应用集”、“更新间隔”、“保持历史数据”等选。 7. 保存并链接模板到相应的主机。 Zabbix 6.0版本引入了多新功能,以进一步提升监控效率和用户体验。例如,新的API接口可以更方便地与第三方服务集成,性能优化可以提高系统响应速度和处理能力。利用这些新特性,你可以: - 使用API自动化监控的创建和管理。 - 优化触发器表达式和依赖关系,减少不必要的警报。 - 利用改进的用户界面来快速诊断问题和进行日常管理。 通过这些步骤和新特性的应用,你可以定制监控策略,提高监控系统的性能和效率。进一步了解详细内容和最佳实践,建议深入阅读《Zabbix 6.0 中文文档:全面指南与配置手册》,这份文档不仅提供了操作指南,还包含了从安装到日常维护的全面知识,是学习和掌握Zabbix 6.0版本不可或缺的资源。 参考资源链接:[Zabbix 6.0 中文文档:全面指南与配置手册](https://wenku.csdn.net/doc/73kbgyn6kc)
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神奇的海马体

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值