zabbix监控项介绍(item)
zabbix中自带了很多的键值,在自建item时,可以根据自己的需要进行选择,这些键值都是zabbix内置的,设置即用,不需要进行其他设置.但是自带的监控项毕竟只是满足了部分需求,有时候我们需要根据自己的业务场景进行监控调整,这时候就需要我们自建监控项进行监控体系的完善.下图为zabbix自带的监控项键值
自定义键值示例(探测nginx8080端口)
item键值设置有两种方式,不过都要开启UnsafeUserParameters=1(关闭为0)
- 在agent配置文件中直接定义
#为了方便演示,直接在server上操作
[root@zabbix-server opc]# yum -y install nginx
#修改nginx默认端口
[root@zabbix-server opc]# systemctl start nginx
[root@zabbix-server opc]# netstat -ntlp|grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 34348/nginx: master
tcp6 0 0 :::8080 :::* LISTEN 34348/nginx: master
[root@zabbix-server opc]# vim zabbix-4.1/etc/zabbix_agentd.conf
#开启自定义键值
UnsafeUserParameters=1
#此处为自定义键值,nginx_alive为key,后面的命令为值(可以为shell命令.也可以是一个脚本),如果8080存则返回1,如果不存在则返回0
UserParameter=nginx_alive, netstat -ntlp|grep 8080|grep -v tcp6|awk -F':' '{print $2}'|awk '{print $1}'|wc -l
#重启zabbix-agent
[root@zabbix-server opt]# pkill -15 -f zabbix_agentd
[root@zabbix-server opt]# cd zabbix-4.1/sbin/
[root@zabbix-server sbin]# ./zabbix_agentd
#解决netstat -p参数的报错(如果不做下面操作,使用zabbix-get获取时,会有报错,-p参数默认仅root用户可使用)
[root@zabbix-server sbin]# chmod +s /bin/netstat
#测试键值是否可以使用,使用zabbix-get,获取到值则说明键值可用
[root@zabbix-server sbin]# ../bin/zabbix_get -s zabbix-server -k nginx_alive
1
- 加载配置文件配置item键值(推荐)
[root@zabbix-server sbin]# grep '^[a-Z]' ../etc/zabbix_agentd.conf
#开启加载配置文件路径
Include=/opt/zabbix-4.1/etc/zabbix_agentd.conf.d/
#开启自定义键值参数
UnsafeUserParameters=1
#编写配置文件
[root@zabbix-server sbin]# cat ../etc/zabbix_agentd.conf.d/nginx_port.conf
UserParameter=nginx_alive, /bin/netstat -ntlp|grep 8080|grep -v tcp6|awk -F':' '{print $2}'|awk '{print $1}'|wc -l
#测试是否可以使用
[root@zabbix-server sbin]# ../bin/zabbix_get -s zabbix-server -k nginx_alive
1
上面的键值设置完成后配置web端的监控项
配置------>主机------>监控项------>创建监控项
名称:建议设置可以根据名称就能推断出是什么监控项
键值:必须和agent配置文件中配置的一样
描述:建议做个说明
#查看监控项状态,为绿色说明已经开始使用
#进一步查看是否已经有获取数据
监测------>最新数据------>名称(输入监控项名称)
zabbix触发器介绍
在日常工作中,我们不可能时刻关注着服务器的指标性能,这时就需要对我们所需要获取的数据进行一个瓶颈值设置,当达到这个瓶颈值时,通知到我们进行处理.触发器的作用就是对获取的数据进行一个预警设置,通常是配合监控项使用
设置触发器
前面我们已经增加了一个新的监控项,基于新增的监控项进行设置一个新的触发器,该触发器的功能是用于如果检测到的nginx_alive值为0时则触发告警
配置------>主机------>触发器------->创建触发器
名称:建议定义名称较为辨认的名称
严重性:根据个人进行设置
表达式:可以手写,也可以用右边的添加,然后生成表达式,手写:{主机名:监控项:值()}=0
描述:简介下该触发器的功能
描述:为了方便测试,将最后一次获取的值设置为1时进行告警
值的选择建议使用last和nodata
不建议使用max,min和avg
这样设置对于zabbix的性能压力会降低不少,提高zabbix的整体运行速度
触发器规则设置完成后,在首页会显示告警的主机和告警项,如果有设置其他告警方式,会直接发送到对应的告警方式上.
监测------>仪表板