一、概述

为什么需要自定义监控呢?

虽然zabbix已经给我们准备好了很多的模板,但是有的东西还是无法监控,这时候就要我们自定义监控了。

自定义监控的思路

比如我们现在想要监控这个值,如下所示,模板里面并没有。

二、步骤

第一步:我们首先要把需要的值取出来

iostat | awk '/^sda/{print $2}'
4.11

第二步:在被监控端增加增加监控项

[root@web01 ~]#yum -y install zabbix-agent 
[root@web01 ~]#systemctl start zabbix-agent
[root@web01 ~]# systemctl enable zabbx-agent
[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.conf
Format: UserParameter=<key>,<shell command> #这就是格式
Include=/etc/zabbix/zabbix_agentd.d/*.conf
Server 192.168.80.22 #修改这一处即可,这时的IP是zabbix端的IP,而不是被监控端的,就是告诉被监控端,把数据交给谁。
[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.d/iotop.conf
UserParameter=iotop,iostat | awk '/^sda/{print $2}'
[root@web01 ~]# systemctl restart zabbix-agent #重启
[root@web01 ~]# zabbix_agentd -p | grep iotop #验证是否生效
iotop [t|3.96]

第三步:在zabbix-server上验证zabbix-agent是否有对应的监控项

[root@zabbix ~]# yum -y install zabbix-get
[root@zabbix ~]# zabbix_get -s 192.168.80.240 -p10050 -k iotop
3.91

第四步:在zabbix-web界面进行关联对应的主机

单位和更新时间随便写,单位可以自定义,写”个“,”帧“都可以,没问题。

更新时间就是多长时间刷新一次。

历史保留时长不要搞太长,动不动就很长时间,如果着急取一个值,但是数据库满了,数据放不进进去了,web界面也无法显示,到时候干瞪眼!!

这个查看值值得说一下:

错误总结

问题一:

后来再复现这个实验时出了问题,什么问题呢?zabbix通过zabbix_get 命令控测被监控端老是报错:

Check access restrictions in Zabbix agent configuration

检查过程当中也没有发现什么错误,到最后在agent端上看日志时发现了这么一条:

22640:20191230:111447.722 failed to accept an incoming connection: connection from "192.168.80.173" rejected, allowed hosts: "192.168.80.22"

原来代理仅允许80.22访问,而zabbix有两个网卡,一个网卡是80.22另一个网卡是80.173,zabbix探测agent的时候是通过80.173网卡过去的,结果被agent端给拒绝了,其实也很好解决这个问题,在zabbix把带有173地址的那个网卡在down了就可以了,怎么down呢?ifconfig eth1 down。

问题2:

在配置agent代理时,我们要进入agent的配置文件设置ansible-server的IP地址,原本以为这个地址的意思是将收集好的信息交给哪台主机?后来通过查看日志之后发现不是这样,server的意思是我只允许哪台服务器从我这里面通过zabbix协议获取信息,默认的日志地址:var/log/zabbix/zabbix_agentd.log ,这同时也说明了为什么只有zabbix的服务端才能使用zabbix-get命令。

6、zabbix自定义监控的更多相关文章

  1. Zabbix自定义监控8080端口的连接数

    Zabbix自定义监控8080端口的连接数 一 zabbix自定义监控实现思路 实际上我们要想使用zabbix来监控一些服务的原理很简单,步骤分别是:1.写一个脚本用于获取待监控服务的一些状态信息2. ...

  2. zabbix自定义监控阿里云RDS服务

    zabbix自定义监控rds zabbix通过阿里云api 自动发现.监控阿里云RDS-Mysql数据库 注意事项  脚本会收集RDS别名,  不要默认别名 不要使用中文别名(zabbix不识别)  ...

  3. zabbix自定义监控项、添加图形、设置触发器、远程执行命令

    监控项是在zabbix中手机数据的基础,没有监控项就没有数据,系统自带模板带有大量默认item,自定义item可以定义在模板中,在应用模板即可使用对应item:也可直接在host中定义 目标:自定义监 ...

  4. zabbix自定义监控项

    原因:zabbix监控系统自带的监控规则有限,如果需要更加灵活的定义监控项,可以通过修改配置文件实现 vim xxx/zabbix_agentd.conf UnsafeUserParameters=1 ...

  5. zabbix自定义监控

    有的时候zabbix提供的监控项目,不能满足我们生产环境下的监控需求,此时我们就要按照zabbix的规范自定义监控项目,达到监控的目的 zabbix_get:模拟zabbix_server和agent ...

  6. zabbix 自定义监控文本内容

    需求:监控服务器硬盘使用率是否有超过80%的 需要监控的文本 root@zabbix zabbix]# cat /etc/zabbix/scripts/data/monitor_disk.txt &q ...

  7. zabbix 自定义监控nginx

    zabbix自定义nginx监控项 查看nginx编译安装是否加上该选项,如果没有请重新编译安装 配置nginx.conf vim /usr/local/cpgroup/nginx/conf/vhos ...

  8. zabbix自定义监控项一

    1.在agent端配置 1.1 添加自定义监控项 zabbix中监控项叫做item,监控项的取值方法叫做key item: Items是从agnet主机里面获取的所有数据.通常情况下我叫itme为监控 ...

  9. zabbix自定义监控项二

    为zabbix增加支持传参的自定义监控项 例如使用zabbix来监控tcp的12种状态 tcp的12种状态可以通过man netstat来找到,即 LISTEN:等待从任何远端TCP 和端口的连接请求 ...

  10. Zabbix自定义监控项(模板)

    虽然Zabbix提供了很多的模板(简单理解为监控项的集合),在zabbix界面点击share按钮就可以直接跳到模板大全的官方网站,但是由于模板内的监控项数量太多不好梳理且各种模板质量参差不齐,还是建议 ...

随机推荐

  1. May 19th, 2019. Week 21st, Sunday

    Fight for what matters to you. 为自己珍视的东西奋斗吧! We all want to make our life goals true, and we all expe ...

  2. go语言设计模式之interpreter

    interpreter.go package interpreter import ( //"fmt" "strconv" "strings" ...

  3. MYSQL 命令导出事件、存储过程、触发器

    普通导出某个数据库 mysqldump -u username -p passowrd databasename > file.sql 顺便导出事件 使用 –events 参数 mysqldum ...

  4. 9.jenkins 集群

    一. 集群配置 实际生产中,需要配置集群,来配合使用. jenkins  主节点需要安装插件 SSH Slaves 从节点(就是slave的机器)需要安装 jdk 开发包 yum install -y ...

  5. luoguP4022 [CTSC2012]熟悉的文章

    题意 显然这个\(L\)是可以二分的,我们只需要判断\(L\)是否合法即可. 显然有一个\(O(n^2)\)的DP: 设\(f_i\)表示当前匹配到\(i\)的最大匹配长度. \(f_i=max(f_ ...

  6. MYSQL高可用集群架构-MHA架构

    1  MHA简介:MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司 ...

  7. matlab练习程序(螺线拟合)

    这里待拟合的螺线我们选择阿基米德螺线,对数螺线类似. 螺线的笛卡尔坐标系方程为:   螺线从笛卡尔坐标转为极坐标方程为:   阿基米德螺线在极坐标系下极径r和极角theta为线性关系,方程为:   计 ...

  8. django执行源生的mysql语句

    执行源生sql在python中我们可以借助pymysql模块来进行执行源生sql关于pymysql执行源生sql可以看我的另外一篇博文:pymysql应用 本篇博客只介绍django中执行的源生sql ...

  9. jquery延迟加载

    jquery实现图片延时加载,实现原理:不设置img的src地址,把地址存在img的alt中,当img标签出现在可视区域,alt值传给src.为避免看到替换文本alt,把字体的颜色设置为背景的颜色,如 ...

  10. PHP 7.4.0 发布

    近日,PHP 7.4.0 发布了,此版本标志着 PHP 7 系列的第四次特性更新. PHP 7.4.0 进行了许多改进,并带来了一些新特性,包括: Typed Properties  类型属性 类属性 ...