配置zabbix自定义监控项

该文详细介绍了如何在Zabbix5.0环境下安装zabbix-agent服务,创建监控服务脚本,设置权限,并通过zabbix_agentd配置文件进行参数传递。同时,文中提到了解决netstat权限问题的方法,并在Zabbixserver端配置监控项和触发器,以便测试和验证服务监控的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.需要安装zabbix-agent服务,使用的zabbix版本为5.0版本

参考:zabbix监控linux主机_Apex Predator的博客-优快云博客

2.创建存放脚本目录并编辑监控服务的脚本(此处监控一下服务是否存活)

mkdir /opt/zabbix_jb

vi /opt/zabbix_jb/service_status.sh

#!/bin/bash
b=`ps -ef |grep "$2"|grep -v grep|wc -l`  #统计服务存活的进程数量
a=`netstat -tlpn |grep "$1"|wc -l`   #统计存活服务端口的数量
if [ $b == 0 ]; then   #判断服务是否存活
  echo '0'    #不存活输出值为0,后面的zabbix server监控会用到此值
else
  if [ $a == 0 ]; then   #判断服务的端口是否存活,一般通过服务名称判断服务是否存活会不太准确,还需要和服务端口一起判断才能确定
      echo '0'
  else
      echo '1'
  fi
fi

3.给脚本赋予执行权限,并更改所属用户

chmod +x /opt/zabbix_jb/service_status.sh

chown zabbix.zabbix /opt/zabbix_jb/service_status.sh

4.编辑一个新的zabbix_agent子配置文件

vi /etc/zabbix/zabbix_agentd.d/check_service_status.conf

#check_service_status[*]参数为zabbix server调用的参数,*的内容为,在zabbix server上填入的所有内容,此内容作为队列被赋予到service_status.sh脚本内容变量的$1和$2中,一定要在命令后加上$1 $2两个参数,不然传参不成功,传不到脚本里
UserParameter=check_service_status[*],/bin/sh /opt/zabbix_jb/service_status.sh $1 $2

5.编辑zabbix_agent服务的配置文件

vi /etc/zabbix/zabbix_agentd.conf

Server=10.1.60.118  #配置为zabbix server的ip地址
ListenPort=10050 #保持默认配置
ListenIP=0.0.0.0   #保持默认配置
StartAgents=3   #保持默认配置
ServerActive=10.1.60.118  #配置为zabbix server的ip地址
Include=/etc/zabbix/zabbix_agentd.d/*.conf  #保持默认配置,调用zabbix_agentd.d目录下所有以conf结尾的配置文件

6.重启zabbix-agent服务

systemctl restart zabbix-agent

7.使用 zabbix_get测试此项监控是否可用

需要先在zabbix server主机上安装zabbix_get服务

yum -y install zabbix-get

测试监控项

zabbix_get -s '10.1.60.112' -k 'check_service_status[:10050,zabbix-agent]'

 符合上面脚本的设定,脚本设定中服务挂掉输出值为0,存活输出值为1,-k指定的是zabbix_agent子配置文件中调用的参数

执行的时候会报错,原因是zabbix用户不能使用netstat的-p参数

报错输出为

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的权限(+s为用户使用此命令的时候,临时具有root权限)

chmod u+s /usr/bin/netstat

8.在zabbix server web中配置监控项

 

 

9.配置触发器

 

 

 

 

 10.测试

停掉112主机的kafka服务

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值