解决方案
在zabbix_agentd.conf中添加这些。
BufferSend = 10
BufferSize = 150
MaxLinesPerSecond = 100
Timeout = 29
重新启动代理
ps -ef | grep zabbix | grep -v grep | awk '{print $2}' | xargs kill -9
在zabbix_server里面添加
Timeout = 29
重启zabbix_server
ps -ef | grep zabbix_server | grep -v grep | awk '{print $2}' | xargs kill -9
问题网上给的解决方案
zabbix server上日志报错: 11110:20160816:114903.664 resuming Zabbix agent checks on host "master1": connection restored 11110:20160816:114906.675 Zabbix agent item "tcp_connect.closing" on host "master1" failed: first network error, wait for 15 seconds zabbix agent上日志报错: 18601:20160816:113151.290 active check configuration update from [10.51.176.130:10051] started to fail (cannot connect to [[10.51.176.130]:10051]: [4] Interrupted system call) 从web界面查看overview显示没有数据,但是从zabbix_server上直接使用zabbix_get获取可以获取到数据, 考虑:1、进程运行正常; 2、端口可以正常通信; 3、item配置正确; 百度许多,都是查看防火墙,端口,进程之类的。 最后发现可能是超时造成的,因此,修改配置文件: vi zabbix_server.conf Timeout=30 vi zabbix_agentd.conf Timeout=30 重启server和agent,问题解决。
资料扩展(配置文件):
LogFile=/usr/local/zabbix/log/zabbix_agentd.log #日志 Server=10.10.88.20 # zabbix server IP,此种表示被动监听。可以有多个IP,以逗号分隔,如 Server=123.56.178.128,192.168.0.41 ListenPort=10050 # agent 监听端口。默认也是10050 ListenIP=0.0.0.0 # agent监听的网络接口。0.0.0.0表示监听所有IP StartAgents=3 #处理被动检查的预启动的zabbix_agent进程。默认值为3 ServerActive=10.10.88.20:10051 #主动模式。主动检查zabbix server的端口,如果没有指明端口,则默认为10051 Hostname=slave2 # 该项需要主动检查,并且必须与服务器上服务器上配置的主机名一致。如果未定义,则从HostnameItem获取值。 How often list of active checks is refreshed, in seconds. RefreshActiveChecks=120 # 主动模式下,agent主动检查监控项的刷新频率(隔多久从server获取一次item),单位s,默认120s BufferSend=5 #数据在缓冲区的保留时间。默认只保留5秒 BufferSize=100 #内存缓冲区中的最大值。 如果缓冲区已满,代理将发送所有收集的数据到Zabbix Server或Proxy。默认值为100 Timeout=30 # 处理超时时间。默认30秒为超时 AllowRoot=0 # 是否允许agent以 root用户运行。0表示不允许,1表示允许,默认值为0 User=zabbix # Include=xxx # 包含的配置文件,默认没有值。如Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf UserParameter=xxx # 用户自定义监控项,即自定义key。如