小知识:关于zabbix自定义监控项和触发器问题

目录 一.监控端口 关系说明 操作 二.监控服务 关系说明 操作 三.模板的导入和导出

一.监控端口

关系说明

触发器: 根据客户端的脚本获取值,当客户端的某项值达到要求后,将发出告警

监控项:根据客户端的脚本获取值,可设定采集值得间隔时间,将值保留记录下来,可形成曲线图

应用集:用来分类存放监控项,比如将监控80,8080等web服务的监控项放在web应用集中,将监控22,21等小服务的监控项放入small应用集中。

模板:模板是一套定义好的监控项的合集,任何主机连接模板,则将模板中的监控项等等在主机上应用,但要修改这些监控项只能去模板中修改,并且修改后其他连接的主机也会跟着变动。

操作

1.创建模板,模板名称用来表示,这里监控端口,取名为port,模板必须加入某群组,可单独创建群组来区分。

%小知识:关于zabbix自定义监控项和触发器问题-猿站网-插图

2.创建应用集,应用集只用取名字即可

%小知识:关于zabbix自定义监控项和触发器问题-1猿站网-插图

3.创建监控项,名称用来区分监控的哪些值,可能是监控nginx的访问数量,也可能是mysql的读数量。

%小知识:关于zabbix自定义监控项和触发器问题-2猿站网-插图

键值有2种,一种是点击选择使用系统自带值,另一种自定义脚本key。

这里选择net.tcp.listen[port],通过telnet来查找某主机是否监听某端口,[port]填写需要监控的端口号。

4.创建触发器,{host.name}将获取主机名,用作报警显示。表达式点击添加,或复制其他自带触发器的值进行修改。

连接监控项,这个就是刚刚创建的监控项,其余不动。

%小知识:关于zabbix自定义监控项和触发器问题-3猿站网-插图

5.选择相应群组,从群组里找到刚建立的监控项。

%小知识:关于zabbix自定义监控项和触发器问题-4猿站网-插图

6.port是模板名,如果这里选择写主机名或主机ip,则会变成单个主机的监控项,而不是模板的。

%小知识:关于zabbix自定义监控项和触发器问题-5猿站网-插图

二.监控服务

关系说明

脚本:执行脚本获得值

配置文件:允许自定义key,将key的键值和脚本获取值关联起来。

服务端测试: 服务端发送指令给客户端,客户端运行脚本获取值再返回给服务端。

操作

1.创建脚本,用于获取值

cd /etc/zabbix/script

vim web_status.sh

?
1
2
3
4
5
6
7
8
9
10
#!/bin/bash
case $1 in
lian)
netstat -anptu | grep 172.26.98.247:80 | wc -l ;;
ping)
netstat -unltp | grep -w 80 &>/dev/null && echo 1 || echo 0 ;;
*)
echo “lian | ping” ;;
esac

测试脚本 ./web_status.sh ping,看是否可以获得1

2.修改客户端配置文件,让他允许自定义key

vim /etc/zabbix/zabbix_agentd.conf
?
1
2
include=/etc/zabbix/zabbix_agentd.conf.d/*.conf #加载其他配置文件
unsafeuserparameters=1 #开启允许自定义 key

systemctl restart zabbix-agent

3.修改配置文件,设定键值的名字和脚本所在位置,这样配置文件才能知道这个键值需要执行哪个脚本获得

web.ping是自定义的键值名字,后面是脚本路径

vim /etc/zabbix/zabbix_agentd.d/web_status.conf
?
1
2
userparameter=web.ping,/etc/zabbix/script/web_status.sh ping
userparameter=web.lian,/etc/zabbix/script/web_status.sh lian

如果执行的是命令要用绝对路径,如下也能获取值,并不一定要用脚本。

比如
?
1
userparameter=web.shu,/bin/netstat -anptu | wc -l

4.检测,客户端测试

zabbix_agentd -t web.ping #返回1则正确

服务端测试:

/ops/server/zabbix/bin/zabbix_get -s 192.168.1.1 -k web.ping #获得1则正确

5.出现(not all processes could be identified, non-owned process info

will not be shown, you would have to be root to see it all.)

是因为脚本中用netstat 这个命令,但是客户端使用zabbix这个用户启动脚本,没有权限用这个命令。

客户端执行chmod +x /bin/netstat即可

网页操作:

键值是找不到的,手动写上,触发器的表达式也是连接这个监控项。

三.模板的导入和导出

导入:

%小知识:关于zabbix自定义监控项和触发器问题-6猿站网-插图

导出:

选择模板拉倒最下面

%小知识:关于zabbix自定义监控项和触发器问题-7猿站网-插图

到此这篇关于zabbix自定义监控项和触发器的文章就介绍到这了,更多相关zabbix自定义监控项内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/rxysg/p/15701080.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Apache 文件上传与文件下载案例详解

2023-3-12 10:26:27

建站知识

小知识:Docker容器定时备份数据库并发送到指定邮箱(设计思路)

2023-3-12 10:41:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索