zabbix

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > zabbix > Zabbix Timeout 设置不当

Zabbix Timeout 设置不当导致的问题及解决方案

作者:edisonfish

这篇文章主要介绍了Zabbix Timeout设置不当导致的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

今天跟大家分享一个关于 zabbix Timeout 值设置不当导致的问题,这个问题不知道大家有没有碰到过

问题

事情经过是这样的:

把某一台 zabbix agent 的模板由原来的 Template OS Windows by Zabbix agent 换成了 Template OS Windows by Zabbix agent active

Template OS Windows by Zabbix agent active 使用 主动模式 主动获取数据

Template OS Windows by Zabbix agent 使用 被动模式 等待 Server 请求数据

也就是说在主动模式下,Zabbix Agent 主动连接到 Zabbix Server 并发送监控数据,Zabbix Server 只需监听指定的端口,接收 Agent 发送过来的数据

结果发现 zabbix server 接收不到数据

排查

查看 agent 日志(/var/log/zabbix/zabbix_agentd.log),发现 ZBX_TCP_READ() timed out

8452:20230620:134942.947 active check configuration update from [192.168.149.129:10051] started to fail (ZBX_TCP_READ() timed out) 8452:20230620:135044.072 active check configuration update from [192.168.149.129:10051] is working again 8452:20230620:140049.959 active check configuration update from [192.168.149.129:10051] started to fail (ZBX_TCP_READ() timed out) 8452:20230620:140149.093 active check configuration update from [192.168.149.129:10051] is working again

而且经过进一步排查,发现:

综合上面的现象,怀疑是网络原因导致 TCP 建立连接时间超时,agent 向 server 发送数据失败

既然是网络原因,那为什么我在修改模板(即被动模式)之前,server 是能够向 agent 获取数据的

怎么被动模式就没超时,主动模式就超时了呢?

解决

在 Zabbix 中,timeout(超时)是指在进行监控数据获取或传输时,等待响应的时间限制

在配置文件中如下所示,默认值是 3 s

### Option: Timeout
#       Spend no more than Timeout seconds on processing
# Timeout=3

我们分别来看下 server 和 agent 关于超时时间的配置

#server 端
Timeout=30

#agent 端
Timeout=3

可以看到,sever 端设置的超时时间是 30 s,agent 端设置的超时时间是 3s,这两个时间相差太大了吧

如果 agent 的 timeout 设置得太短,可能会导致一些请求无法完成;而如果 server 的 timeout 设置得太短,可能会导致 agent 的请求被错误地判定为超时

结合上面的情况,可以得知:

我们把 agent 端的超时时间改一下,跟 server 端一致

#agent 端

Timeout=30

重启 agent 后发现日志没有报 started to fail (ZBX_TCP_READ() timed out) 错,zabbix server 端也能够获取数据了

总结一下:

If used with the passive agent, Timeout value in server configuration may need to be higher than Timeout in the agent configuration file. Otherwise the item may not get any value because the server request to agent timed out first.

到此这篇关于Zabbix Timeout 设置不当导致的问题的文章就介绍到这了,更多相关Zabbix Timeout 设置不当内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文