简单检查通常用于检查远程未安装Zabbix agent的服务。
请注意,简单检查不需要Zabbix agent,由Zabbix server和Zabbix proxy来负责处理(例如创建外部连接等)。
简单检查使用示例:
net.tcp.service[ftp,,155]
net.tcp.service[http]
net.tcp.service.perf[http,,8080]
net.udp.service.perf[ntp]
在简单检查项的配置中,User name 和 Password字段用于Vmware的监控项;非VMware监控项则可忽略。
Zabbix支持的简单检查列表:
另请参考:
键值 | ||||
---|---|---|---|---|
描述 | 返回值 | 参数 | 注释 | |
icmpping[<target>,<packets>,<interval>,<size>,<timeout>] | ||||
通过ICMP ping 检测主机的可访问性. | 0 - ICMP ping 失败 1 - ICMP ping 成功 |
target - 主机 IP 或者域名 packets - 数据包数量 interval - 连续两个数据包之间的时间间隔,单位是毫秒 size - 数据包大小,单位是字节 timeout - 超时时间,单位是 毫秒 |
示例: => icmpping[,4] → 4 个数据包中只要一个有返回,那么该项返回值为 1. 另请参考: 默认值表格。 |
|
icmppingloss[<target>,<packets>,<interval>,<size>,<timeout>] | ||||
发出的数据包丢包的百分比. | 浮点数 | target - 主机 IP 或者域名 packets - 数据包数量 interval - 连续两个数据包之间的时间间隔,单位是毫秒 size - 数据包大小,单位是字节 timeout - 超时时间,单位是毫秒 |
另请参考: 默认值表格。 | |
icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>] | ||||
ICMP ping 响应时间,单位是秒. | 浮点数 | target - 主机 IP 或者域名 packets - 数据包数量 interval - 连续两个数据包之间的时间间隔,单位是毫秒 size - 数据包大小,单位是字节 timeout - 超时时间,单位是毫秒 mode - 可能的值: min, max, avg (缺省值) |
传输过程中丢失或者超时的数据包不会被计算在内. 如果主机不可用或者超时,这个监控项会返回 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 或者域名 (默认使用主机 IP/DNS port - 端口号 (默认使用标准服务端口). |
示例: => net.tcp.service[ftp,,45] → 通过检测 TCP 的 45 端口来检测 FTP 服务器的可用性. 请注意:使用 tcp 服务必须指定端口. 这些检测可能会在系统守护进程日志文件中产生额外的信息 (通常会记录 SMTP 和 SSH 会话). 目前不支持检测加密协议 (比如 993 端口的 IMAP 或者 995 端口的 POP) . 可以使用 net.tcp.service[tcp,<ip>,port] 作为一种检测方式进行检测 . 从 Zabbix 2.0 以后开始支持 https 和 telnet 服务。 |
|
net.tcp.service.perf[service,<ip>,<port>] | ||||
检测 TCP 服务性能. | 浮点数 0.000000 - 服务停止 seconds - 连接到服务花费的时间,单位是秒 |
service - 可能的值: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (另见 详情) ip - IP 地址或者域名 (默认使用 IP/DNS ) port - 端口号 (默认使用标准服务端口). |
示例: => net.tcp.service.perf[ssh] → 可以用来测试 SSH 服务器的初始响应速度. 使用 tcp 服务必须指定端口. 目前不支持检测加密协议 (比如 993 端口的 IMAP 或者 995 端口的 POP). 可以使用 net.tcp.service.perf[tcp,<ip>,port] 作为一种检测方式进行检测. 从 Zabbix 2.0 以后开始支持 https 和 telnet 服务. 在 Zabbix 2.0 之前调用的是 tcp_perf 。 |
|
net.udp.service[service,<ip>,<port>] | ||||
检测服务是否正在运行并响应UDP请求. | 0 - 服务停止 1 - 服务正在运行 |
service - 可能的值: ntp (另见 详情) ip - IP 地址或者域名 (默认使用 IP/DNS) port - 端口号 (默认使用标准服务端口). |
示例: => net.udp.service[ntp,,45] → 可用于测试 UDP 45 端口上 NTP 服务的可用性. 从 Zabbix 3.0以后开始支持这个监控项, 但在之前的版本中 ntp 服务可用 net.tcp.service[] 监控项来监控。 |
|
net.udp.service.perf[service,<ip>,<port>] | ||||
检测 UDP 服务的性能. | 浮点数 0.000000 - 服务停止 seconds - 等待服务响应的时间,单位是秒 |
service - 可能的值: ntp (另见 详情) ip - IP 地址或者域名 (默认使用 IP/DNS) port - 端口号 (默认使用标准服务端口). |
示例: => net.udp.service.perf[ntp] → 可用于测试NTP服务的响应时间. 从 Zabbix 3.0以后开始支持这个监控项, 但在之前的版本中 ntp 服务可用 net.tcp.service[] 监控项来监控。 |
· ::: noteimportant 对于 LDAP 简单检查(例如 net.tcp.service[ldap]
)中的 SourceIP 支持,需要 OpenLDAP 2.6.1 或更高版本。 从 Zabbix 6.0.1 开始,LDAP 简单检查支持 SourceIP。 :::
如果简单检查时间超过了 Zabbix server 或是 proxy 配置文件中设置的超时时间,Zabbix 将不会做处理。
Zabbix 使用外部程序 fping 来处理 ICMP pings。
Fping不包含在Zabbix的发行版中,您需要另外安装。 如果程序未安装、程序权限错误或者程序路径与配置文件中('FpingLocation' 参数)定义的不匹配,则不会处理ICMP ping (icmpping, icmppingloss, icmppingsec)。
另请参考: 已知问题
fping 必须可以被 Zabbix 守护进程以 root 身份执行,需要设置 setuid 权限。为设置正确的权限,请以 root 身份来执行这些命令:
执行以上两句命令,然后检查fping的权限。在某些情况下,可以通过执行chmod命令来重置所有权。
还要检查一下,如果用户zabbix属于zabbix组,则运行:
如果没有添加成功,通过如下命令解决:
ICMP检测参数的默认值、限制和以及数值的描述:
参数 | 单位 | 描述 | Fping 的参数 | Fping 默认设置 | Zabbix 允许的限制 |
||
---|---|---|---|---|---|---|---|
fping | Zabbix | min | max | ||||
packets | 计数 | 发送到目标的请求报文数 | -C | 3 | 1 | 10000 | |
interval | 毫秒 | 连续数据包之间的间隔时间 | -p | 1000 | 20 | 不限制 | |
size | byte | 用字节描述的包大小 x86 架构是 56 byte, x86_64架构是68 byte |
-b | 56 or 68 | 24 | 65507 | |
timeout | 毫秒 | fping v3.x - 上次发送数据包后等待超时时间,影响 -C 参数 fping v4.x - 每个包的单独超时时间 |
-t | fping v3.x - 500 fping v4.x - 继承 -p 参数的值,但是不能超过 2000 |
50 | 不限制 |
此外,Zabbix 使用 fping 参数 -i interval ms (不要和上边表格中的监控项参数 interval 混淆,它对应 fping 的 -p 参数) 和 -S source IP address (或者旧版本的 -I i)。这些参数通过使用不同的参数组合运行自动检测。 Zabbix尝试检测fping允许对-i参数一起使用的最小值(以毫秒为单位),尝试 3个值: 0, 1 和 10。第一个成功的值将用于后续的ICMP检查. 这个过程是由每个 ICMP pinger 进程单独完成的。
从Zabbix 5.0.4版本开始,fping 自动检测的参数每小时都会失效,并且在下一次尝试执行ICMP检查时再次加载。设置 DebugLevel>=4 可以在服务器或代理日志文件中查看该进程的详细信息。
警告: 根据平台和版本的不同,fping的默认值也会有所不同 - 如有疑问, 请参考fping文档。
Zabbix将三个 icmpping* 键值中任何一个IP地址写入一个临时文件中,然后传递给 fping。如果监控项有不同的键值参数,则只有具有相同键值参数的监控项IP才会被写入相同的单个文件。
所有写入到单个文件的IP地址将被fping并行检查,因此Zabbix icmp pinger进程将花费固定的时间来处理监控项,而不管文件中的IP地址数量。