自定义添加item Key(基于Zabbix2.2.15)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义添加item Key(基于Zabbix2.2.15)相关的知识,希望对你有一定的参考价值。

实验环境说明:

2台虚拟机

VM01角色:Zabbix server ubuntu14.04系统,ip192.168.1.136      

VM02角色:zabbix agentubuntu14.04系统,IP192.168.1.135

 

 

一、什么是item

    Items是从主机里面获取的所有数据。通常情况下我叫itme为监控项,例如我们ttlsa云服务器加入了zabbix监控,我需要监控它的cpu负载,那么实现这个方法的东西就叫item。接下来提到的item都翻译为监控项。

    item由key+参数组成,item详细介绍请看下回分析。

    监控项中需要获取cpu信息,则需要一个对应的监控key:system.cpu.load。如果是获取网卡流量,那么获取网卡这个监控项需要key:net.if.in或者net.if.out。

    一般情况下key要与参数结合起来使用,例如获取5分钟的负载情况:system.cpu.load[avg5],avg5是对应的参数,如果是1分钟则使用avg1,如果是15分钟则使用avg15(有人会问,如果是2分钟是不是avg2,-!-,没有这种说法)。网卡流量net.if.in[eth0],使用eth0作为参数可以获取到eth0网卡的进入流量,同样看一看换成eth1,eth2等等。

二、用户自定义参数

Key的两种的格式

1key

2key[接受参数]

#Key可以带参数,该参数为一个数组列表,可以同时传递多个参数

编辑agentd.conf配置文件

[email protected]:~# vim /usr/local/zabbix/etc/zabbix_agentd.conf

Key自定义语法格式(设置其中一种格式即可)

UserParameter=key,command

UserParameter=key[*] command $1 $2 $3 …..     #$1 $2代表位置参数12,如果定义的字符中出现$后面接数字,需要使用$$,例如:awk ‘{print $$2}’


自定义key中对特殊字符的处理

UnsafeUserParameters=0       #默认是无法对特殊字符处理,因此要设置为1

 

了解一些基本的东西之后,下面来玩个例子

三、自定义key例子

192.168.1.135机器上做如下配置

1、打开agentd配置文件

[email protected]:~# vim /etc/zabbix/zabbix_agentd.conf

UserParameter=get.os.type, head -1 /etc/issue    # -1是数字1,不是字母l

2、重启agentd

技术分享

 

3、在192.168.1.136机器上运行测试命令,查看key

3.1、如没有安装则要安装zabbix-get

Zabbix-get下载地址:http://repo.zabbix.com/zabbix/2.2/ubuntu/pool/main/z/zabbix/

技术分享

3.2、安装完成后继续查看key

3.2.1、用zabbix_get命令,查看刚刚自定义的key

[email protected]:/home/toby# zabbix_get -s 192.168.1.135 -p 10050 -k  get.os.type

技术分享

结果:结果是OK

注意:get.os.type是自己定义的名称

 

3.2.2、再做一次测试,回到135的机器上进行再次编辑agentd配置文件

改成命令ifconfig,保存退出后,重启agentd服务

技术分享

技术分享

 

 

3.2.3、接着回到136的机器,再次查看

技术分享

结果:也就是说,执行了get.os.type 等价于执行了ifconfig

 

 

四、子配置文件的配置

4.1、为了便于维护和分类管理,agentd.conf中的UserParameter的内容可以单独写一个配置文件。

编辑配置文件

[email protected]:~# vim /etc/zabbix/zabbix_agentd.conf

技术分享

将红色箭头处的#号注释去掉

Include也就是zabbix_agentd.conf中部分内容的子配置文件路径

 

4.2、同时把UserParameter= 注释掉

技术分享

 

4.3/etc/zabbix/zabbix_agentd.conf.d/ 目录下的所有配置文件都会被当做子配置文件

技术分享

目前没有子配置文件

 

4.4、创建子配置文件

[email protected]:/etc/zabbix/zabbix_agentd.conf.d# vim get_os.type.conf

添加如下内容:

UserParameter=get.os.type,head -1 /etc/issue

技术分享

这时候,完成了一个字配置文件

 

4.5、重启agentd服务

技术分享

 

4.5、在136机器上测试key

[email protected]:~# zabbix_get -s 192.168.1.135 -k get.os.type

技术分享

结果:测试通过

 

4.6、也可以再用zabbix_agentd查看key是否被支持(在135机器上操作)

[email protected]:/etc/zabbix/zabbix_agentd.conf.d# zabbix_agentd -p | grep get\.os

技术分享

结果:如果能看到key名称,且能获取到数据,说明自定义的key是正确的


本文出自 “运维小老虎” 博客,请务必保留此出处http://trtan.blog.51cto.com/8272891/1862025

以上是关于自定义添加item Key(基于Zabbix2.2.15)的主要内容,如果未能解决你的问题,请参考以下文章

zabbix 用户自定义监控参数添加

zabbix自定义监控

React添加自定义属性

zabbix表分区(适用于zabbix2.0.x,zabbix2.2.x和zabbix2.4.x)[推荐]

移除 Item RecyclerView 时添加自定义动画

zabbix错误总结:ZBX_NOTSUPPORTED: Unsupported item key.