赞
踩
Zabbix自带的key不需要再进行配置,可以直接在web端直接使用建立trigger(触发器)。
自定义keys的配置流程:
|
①一般新建的keys应该自定义在客户端配置文件zabbix_agentd.conf
举个例子,若要添加一个名字为keepalived.shift.check的key,只需要在配置文件zabbix_agentd.conf按照格式:UserParameter=<key>,<shell command>添加就可以了:
#(例子)
UserParameter=keepalived.shift.check, /van/svr/zabbix-3.0.0/bin/keepastatus.py
↑ ↑
(key的名字) (key调用脚本的路径,或者直接系统命令)
自定义key通过调用脚本返回的信息zabbix可接受的常用数据类型有:Numeric(整型),Numeric(浮点型),Text(文本)
客户端配置完成后,重启zabbix客户端,自定义的key才会生效。
在客户端配置好自定义key后,zabbix_get工具可以在服务器端直接测试key在Server端返回的结果,zabbix_get在/usr/zagt/bin下。
zabbix_get使用命令:
sudo ../bin/zabbix_get -s 192.168.182.87 -k agent.ping
命令解释:
-s 你要查的ip地址,本地的,或者远程的都可以
-p zabbix_agentd的端口
-k key值
1 也就是我们得到的结果,说明87主机的zabbix客户端有起来。
当keys的数量或者种类不断扩大的时候,配置文件一个个按照”UserParameter=”添加自定义keys会让配置文件zabbix_agentd.conf变得累赘而且自定义keys 难以管理,所以可以使用配置文件中的include选项。
|
指定的include文件不一定只带有”UserParameter=”参数,可以带有所有配置文件支持的参数。
以下是使用include指定的一个配置文件,主要自定义了keepalived相关的keys:
|
文件路径及文件名:/usr/zagt/etc/zabbix_params/dis_keepalived.conf
Keys | 说明 | 返回 |
agent.hostname |
返回被监控端名称(字符串) |
Cloudlab087 |
agent.ping | 检测被监控端是否存活(1:运行中 其他:未运行)-使用函数 nodata()检测客户端是否正在运行 |
|
agent.version | zabbix agent版本字符串 | 3.0.0 |
system.cpu.load[<cpu>,<mode>] | CPU负载浮点数 | system.cpu.load[,avg5] 返回:0.010000 |
system.cpu.num[<type>] | CPU数量处理器个数type - 可用值: online (默认值) | system.cpu.num 返回:2 |
system.cpu.util[<cpu>,<type>,<mode>] | CPU利用率百分比 | system.cpu.util[,idle,avg5] 返回:99.355550 |
system.hostname[<type>] | 返回主机名字符串 | system.hostname 返回:cloudlab087 |
system.localtime[<type>] | 系统时间.数字或者字符串 | 返回:1457597460 |
system.run[command,<mode>] | 在制定的主机上运行命令文本(配置文件必须开启RemoteCommand) | system.run[‘ls -l /tmp’] |
system.stat[resource,<type>] | 虚拟内存状态数字ent |
|
system.sw.os[<info>] | 返回系统信息字符串 | system.sw.os[full] 返回: |
system.sw.packages[<package>,<manager>,<format>] | 已安装软件列表文本值 | system.sw.packages[keepalived,,short] 返回: keepalived-1.2.13-7.el7.x86_64 |
system.uname | 返回主机相信信息.字符串 | 返回: Linux cloudlab087 3.10.0-327.3.1.el7.x86_64 #1 SMP Wed Dec 9 14:09:15 UTC 2015 x86_64 |
system.uptime | 系统运行时长(秒)多少秒使用s/uptime来获取 | 返回:5702506 |
system.users.num | 登陆用户数量多少用户agent使用who命令获取 | 返回:2 |
proc.mem[<name>,<user>,<mode>,<cmdline>] | 用户进程消耗的内存内存使用量 (字节单位). | proc.mem[zabbix_server,zabbix]
返回:6759755776 |
proc.num[<name>,<user>,<state>,<cmdline>] | 某用户某些状态的进程的数量进程数量 | proc.num[nginx,root]
返回:1 若返回0则表示nginx已经down掉 |
net.dns[<ip>,zone,<type>,<timeout>,<count>] | 检测DNS服务是否开启0 – DNS挂了 1 - DNS运行中 | net.dns[8.8.8.8,zabbix.com,MX,2,1] |
net.if.discovery | 列出网卡.通常用于低级别(low-discovery)的discovery.JSON对象 | 返回:{"data":[{"{#IFNAME}":"eth0"},{"{#IFNAME}":"eth1"},{"{#IFNAME}":"lo"}]} |
net.if.in[if,<mode>] | 网卡入口流量整数. | net.if.in[ens192] 返回:2742810501
返回:0 |
net.if.out[if,<mode>] | <mode>解释同net.if.in | net.if.out[eth0] |
net.if.total[if,<mode>] | <mode>解释net.if.in | net.if.total[eth0] |
net.tcp.listen[port] | 检测端口是否开启0 – (not listen) | net.tcp.listen[80] |
net.tcp.port[<ip>,port] | 是否可以连接到指定的TCP端口 | net.tcp.port[,80] 返回:1 |
net.tcp.service[service,<ip>,<port>] | 检测服务是否开启,并且端口可用 | net.tcp.service[http,,80] 返回:0 端口应用层挂了 |
net.tcp.service.perf[service,<ip>,<port>] | 检测服务器性能 | net.tcp.service.perf[http,192.168.182.87,80] 返回:0.000319 |
vfs.file.exists[file] | 检测文件是否存在 | vfs.file.exists[/etc/hosts] 返回:1 |
vfs.file.size[file] | 文件大小字节zabbix必须有可读此文件的权限 | vfs.file.size[/van/svr/zabbix-3.0.0] 返回:78 |
vfs.fs.size[fs,<mode>] | 磁盘空间,返回本地文件系统的使用量字节 | vfs.fs.size[ext3,free] |
vfs.file.time[file,<mode>] | 文件时间信息Unix 时间戳. | vfs.file.time[/etc/passwd,change] 返回: 1455674845 |
vm.memory.size[<mode>] | 内存大小字节或百分比 |
|
vfs.dev.read[<device>,<type>,<mode>] | 磁盘读取状态整数,浮点数(如果type为如下) | vfs.dev.read[,ops] 返回:0.000000 |
vfs.dev.write[<device>,<type>,<mode>] | 磁盘写入状态整数, | vfs.dev.write[,ops] 返回:55.888889 |
vfs.file.cksum[file] | 计算文件校验 UNIX cksum. | vfs.file.cksum[/etc/passwd] 返回:1699646614 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。