zabbix------key的创建

1 建议大家使用英文界面

2 添加一个主机host,Centos主机

sp1.在客户端安装agent端

./configure--prefix=/usr/local/zabbix --enable-agent或者rpm安装 

sp2.修改/etc/zabbix/zabbix_agentd.conf

Server=60.60.60.11#你的Zabbix Server的地址

ServerActive=60.60.60.11:10051#如果开启,那么就是客户端主动发送信息,否则服务端主动过来提取信息

sp3.启动zabbix_agentd服务

sp4.在zabbix的网页配置界面,选择Configuration-Hosts-Create host,注意hostname一定要和原来的系统的一致

wKioL1XuwJ_Qg9p5AASjnoBSGGM753.jpg

然后选择模板,注意一定要add

wKiom1XuvvzgfMxoAAHEqhbIdXg189.jpg

如何查看刚刚添加的那么多内容呢

进入Configuration-Host就可以看到刚刚添加的host了,点击那一排的graph

priview就可以看到基本信息了

由于模板预定义是一分钟,所以如果你看不到信息请耐心等待

wKioL1XuxNnA_ou4AAUkP_w3Yqw612.jpg

发现一个graph不够全面,我们还可以添加screen,Configuration-screen-create screen

wKioL1XuxcqRcGIyAAU4_DrMu1Q298.jpg

3 简单自定义模板

sp1.添加不含参数key

1.1 在客户端的/etc/zabbix/zabbix_agentd.conf.d/添加一个count.line.passwd的key,文件名为key_name.conf,当然方便的可以去在/etc/zabbix/zabbix_agentd.conf直接加上如下一行

UserParameter=<key_name>,scripts

这里的例子是

UserParameter=count.line.passwd,wc -l /etc/passwd|awk '{print $1}' 

1.2 在服务器端检查是否能从key获得数据,有数据返回才行

# zabbix_get -s 127.0.0.1 -k 'count.line.passwd'

32

1.3在Web UI添加template,Configration-Templates-create templates

wKioL1XuyLPTok5ZAAHklpCRrFk664.jpg

1.4 找到刚刚的模板,Configuration-Templates,单机模板后面一排的items项,这是最小单位了,然后create item

wKiom1Xux7XzGdQkAAMUZubCxKo094.jpg

New application自己填一个

1.5 添加graph

wKioL1Xuyp-R_-ebAAQpongR-Lc595.jpg

这时候priview是没有数据的,因为没绑定主机呢,自己点进host增加模板吧

wKiom1XuybDgYHGEAAUKU3Dsc2c400.jpg

把它放到刚刚的屏幕里面

wKiom1XuyffQpCjAAAeXGMcHmx0107.jpg

这样基本一个自定义的模板就ok了


sp2.带参数的key

UserParameter=key_name[*],scripts

scripts中可以使用Web UI给的参数,$1为第一个参数,如果脚本中用到$1,用$$1代替避免混淆

这里举个获取网卡流量的例子,大家可以看下

可以获得多少MiB流量

perl如下,我写的很烂啦

#!/usr/bin/perl -w

my $nic = $ARGV[0];

my $type = $ARGV[1];

my $line = `ifconfig $nic|grep bytes`;

my @info = $line =~ /\((\d+\.\d+)\s+MiB\)/g;

if ("\U$type" eq "RX"){

        print $info[0];}

elsif ("\U$type" eq "TX"){

        print $info[1];}

else {

        print 0;}


# mkdir /etc/zabbix/externalscripts

# cp NIC.flow.pl /etc/zabbix/externalscripts/

然后在/etc/zabbix/zabbix_agentd.conf.d/添加NIC.flow.conf文件

UserParameter=NIC.flow[*],/usr/bin/perl  NIC.flow.pl $1 $2


检验你的key

# zabbix_get  -s 60.60.60.11 -k 'NIC.flow[eth0,rx]'

27.2

然后在模板中添加key,相信大家已经轻车熟路了,添加模板,添加item

添加graph,然后在主机上应用模板

如果有问题请注意几个问题:

1 你的item选择的类型是不是float型,有没有自己乘上1024*1024

2 在添加host的时候,你的host name那么是否是真的hostname,不是请自己修改

最终我把它放到了屏幕上

wKioL1Xv9FLD-1DmAAK3ycR9hZM373.jpg

最终我们自定义的带参数的key添加成功。




QAQ:

补上最近一个问题:

1 key怎么添加都添加不上,原来的key却能用?

之前一直想不明白,各种排除法,打开zabbix.agentd.log文件,发现没有重启成功,瞬间自己都尴尬了,使用

fuser -k -n tcp 10050 && service zabbix_agentd start解决

2 自带模版监控mysql?

需要把编译解压的conf目录中的user_parameter_mysql.conf文件放到你放conf文件的地方,然后最好cp /etc/my.cnf ~/.my.cnf有时候会找不到path 

你可能感兴趣的:(zabbix,key添加)