Zabbix Documentation 3.4

2.23.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.43.23.4

User Tools

Site Tools


Sidebar

zh:manual:config:items:itemtypes:simple_checks

5 简单检查

概述

简单的检查通常用于远程无代理监控服务。

请注意,Zabbix代理不需要简单的检查。Zabbix服务器/代理服务器负责处理简单的检查(使外部连接等)。

使用简单检查的例子:

net.tcp.service[ftp,,155]
net.tcp.service[http]
net.tcp.service.perf[http,,8080]
net.udp.service.perf[ntp]
简单检查监控项配置中的用户名密码字段通常用于VMware监控项目,否则忽略。

被支持的简单检查

支持的简单检查列表:

请参考:

Key
描述 返回值 参数 注释
icmpping[<target>,<packets>,<interval>,<size>,<timeout>]
主机可通过ICMP ping访问。 0 - ICMP ping失败

1 - ICMP ping 成功
target - 主机IP或者DNS名
packets - 数据包数量
interval - 连续数据包之间的时间(以毫秒为单位)
size - 数据包大小(以字节为单位)
timeout - 超时(以毫秒为单位)
示例:
⇒ icmpping[,4] → 如果返回四个的至少一个数据包,则该项将返回1。

可参考: 默认值表。
icmppingloss[<target>,<packets>,<interval>,<size>,<timeout>]
丢失数据包的百分比。 Float. target - 主机IP或者DNS名
packets - 数据包数量
interval - 连续数据包之间的时间(以毫秒为单位)
size - 数据包大小(以字节为单位)
timeout - 超时(以毫秒为单位)
可参考: 默认值表。
icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>]
ICMP ping响应时间(以秒为单位)。 Float. target - 主机IP或者DNS名
packets - 数据包数量
interval - 连续数据包之间的时间(以毫秒为单位)
size - 数据包大小(以字节为单位)
timeout - 超时(以毫秒为单位)
mode - 可能的值: min, max, avg (default)
如果主机不可用(达到超时),则该监控项将返回0。
如果返回值小于0.0001秒,该值将设置为0.0001秒。

可参考: 默认值表。
net.tcp.service[service,<ip>,<port>]
检查服务是否正在运行并接受TCP连接。 0 - 服务停止

1 - 服务正在运行
service - 可能的值: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (参考细节)
ip - IP地址或者DNS名 (默认使用主机IP/DNS)
port - 端口号(默认使用标准服务端口号)。
示例:
⇒ net.tcp.service[ftp,,45] → 可用于测试TCP端口45上FTP服务器的可用性。

请注意,使用tcp服务指示端口是必需的。\\这些检查可能会产生系统守护程序日志文件中额外的其它消息(通常会记录SMTP和SSH会话)。\\检查加密协议(如993端口上的IMAP或端口995上的POP)当前不受支持。作为解决方法,请使用net.tcp.service[tcp,<ip>,port]进行检查。
httpstelnet 服务从Zabbix 2.0开始支持。
net.tcp.service.perf[service,<ip>,<port>]
检查TCP服务的性能。 0 - 服务不可用

seconds - 连接到服务时花费的秒数
service - 可能的值: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (参考详细信息)
ip - IP地址或者DNS名 (默认使用主机IP/DNS)
port - 端口号(默认使用标准服务端口号)。
示例:
⇒ net.tcp.service.perf[ssh] → 可以用来测试SSH服务器的初始响应速度。

请注意,使用tcp服务指示端口是必需的。
目前不支持检查加密协议(如端口993上的IMAP或端口995上的POP)。作为解决方法,请使用 net.tcp.service.perf[tcp,<ip>,port] 进行如下检查。
httpstelnet 从Zabbix 2.0开始支持。
在Zabbix 2.0之前调用tcp_perf。
net.udp.service[service,<ip>,<port>]
检查服务是否正在运行并响应UDP请求。 0 - 服务停了

1 - 服务正在运行
service - 可能的值: ntp (参考详细信息)
ip - IP地址或DNS名称(默认使用主机IP/DNS)
port - 端口号(默认使用标准服务端口号)。
示例:
⇒ net.udp.service[ntp,,45] → 可用于测试UDP端口45上NTP服务的可用性。

这个监控项从Zabbix 3.0开始支持, 但是对于以前版本的net.tcp.service[]监控项,可以使用ntp服务。
net.udp.service.perf[service,<ip>,<port>]
检查UDP服务的性能。0 - 服务停止

seconds - 等待服务响应的秒数
service - 可能的值: ntp (参考详细信息)
ip - IP地址或DNS名称(默认使用主机IP/DNS)
port - 端口号(默认使用标准服务端口号)。
示例:
⇒ net.udp.service.perf[ntp] → 可用于测试NTP服务的响应时间。

从Zabbix 3.0以后支持此监控项,但是在以前的版本中,ntp服务可用于net.tcp.service[]监控项。
超时处理

Zabbix将不会处理比Zabbix服务器/代理服务器配置文件中定义的超时秒数更长的简单检查。

ICMP ping

Zabbix使用外部实用程序fping来处理ICMP ping。

该实用程序不是Zabbix发行版的一部分,必须另外安装。如果该实用程序丢失,那么其权限或其位置与Zabbix服务器/代理服务器配置文件(“FpingLocation”参数)中设置的位置不匹配,则不会处理ICMP ping(icmpping,icmppingloss,icmppingsec)。

fping必须由用户执行Zabbix守护程序运行as和setuid root。以root用户身份运行这些命令,以便设置正确的权限:

shell> chmod 4710 /usr/sbin/fping
shell> chown root:zabbix /usr/sbin/fping

还要检查一下,如果用户zabbix属于组zabbix,则运行:

shell> groups zabbix

如果不是通过如下命令添加:

shell> usermod -a -G zabbix zabbix

ICMP检查参数的默认值、限制值和描述值:

参数 单位 描述 Fping的标志 默认设置 允许的限制
by Zabbix
fping Zabbix 最小 最大
packets number 到目标的请求数据包的数量 -C 3 1 10000
interval milliseconds 在连续数据包之间等待的时间 -p 1000 20 无限
size bytes 数据包大小(以字节为单位)\\x86上的56个字节,x86_64上的68个字节 -b 56 or 68 24 65507
timeout milliseconds 最后一个包发送后等待的超时(受“-C”标志影响) -t 500 50 无限
警告:根据平台和版本,fping默认值可能有所不同 - 如果有疑问,请检查fping文档。

Zabbix将IP地址通过3个icmpping*key中的任一个写入临时文件,然后将其传递给fping。如果监控项具有不同的Key参数,则只有具有相同Key参数的参数被写入到单个文件。
写入单个文件的所有IP地址将通过fping并行检查,因此Zabbix icmp pinger进程将花费固定的时间来忽略文件中的IP地址数量。