若干配置 parameters 定义了当 agent 检查(Zabbix、SNMP、IPMI、JMX)失败且 一个主机 接口不可达时,Zabbix 服务器应如何响应。
一个主机接口在检查失败后被视为不可达(网络 错误、超时)由Zabbix、SNMP、IPMI或JMX agents检测。由于Zabbix 6.2.0,主动式Zabbix agent检查也会影响接口可用性。当主动检查不可用时,它们将影响agent接口的整体可用性状态。
从接口不可达的那一刻起,unreachabledelay 定义了使用 监控项(包括LLD规则)重新检查的频率。 这些重新检查由不可达轮询器(或针对IPMI检查的IPMI轮询器)执行。 默认情况下,连续可达性检查之间的间隔为15秒。
由异步轮询器执行的检查不会转移到不可达轮询器。
在Zabbix server日志中,不可达状态通过如下消息标识:
Zabbix agent 监控项 "system.cpu.load[percpu,avg1]" 在 主机 "新建 主机" 上失败: 首次网络错误,等待 15 秒
Zabbix agent 监控项 "system.cpu.load[percpu,avg15]" 在 主机 "新建 主机" 上失败:网络错误再次出现,请等待 15 秒
日志消息会明确指出失败的监控项及其类型(Zabbix agent)。
Timeout 参数还会影响 接口在不可达期间会重新检查。如果超时设置为20 将秒数和UnreachableDelay设置为30秒,下一次检查将在50 首次尝试后的秒数。
UnreachablePeriod 参数定义了不可达状态的总持续时间 默认情况下,UnreachablePeriod 为 45 秒。 该值应比UnreachableDelay大数倍,以确保接口在被标记为不可用之前会被多次重新检查。
一个内部监控项,zabbix[主机,active_agent,available],可用于在无法访问的场景下监控主动检查的可用性。
当不可达周期结束后,接口会再次被轮询,同时降低导致接口进入不可达状态的监控项的优先级。如果不可达的接口重新出现,监控将自动恢复正常:
一旦接口变为可用,主机不会立即轮询其所有监控项,原因有两个:
因此,在接口变为可用后,监控项不会立即被轮询,而是被重新安排到下一轮轮询中。
不可达周期结束后,如果接口仍未重新出现,则该接口将被视为不可用。
在服务器日志中,会显示如下消息:
并且在 frontend 主机 可用性图标从绿色/灰色变为黄色/红色(将鼠标悬停在 主机 可用性图标上时,提示框中会显示不可用接口的详细信息):
UnavailableDelay 参数定义了在接口不可用期间对接口进行检查的频率。
默认情况下是 60 秒(因此在这种情况下,从上面的日志消息来看,“暂时禁用”意味着禁用检查一分钟)。
当接口的连接恢复后,监控也会自动恢复正常: