Zabbix_server.log说 MySQL服务器已经消失

环境

CentOS 6.6,Zabbix 2.4

数据库MySQL Galera集群有3个节点
MySQL的-wsrep服务器,5.6-5.6.23-25.10.el6.x86_64
加莱拉,3-25.3.10-2.el6.x86_64

错误

[Z3005] query failed: [2006] MySQL server has gone away [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null] [Z3005] query failed: [2006] MySQL server has gone away [begin;] [Z3005] query failed: [2006] MySQL server has gone away [begin;] 

我曾经得到这个错误更多,但下面的调整已经减less了频率。 我有一种感觉,这是由于haproxy

设置

zabbix通过haproxy连接到mysql服务器,它位于本地zabbix上
haproxy驻留在zabbix服务器上
一切都在vmware下的同一个虚拟networking上。 相同的子网等

现在在这种情况下,主机“Zabbix服务器”不存在。 或者,我改名主机,并改变了IP等,所以它被称为“DC1 zabbix服务器”。

haproxy.cfg(大方超时设置)


 retries 3 timeout queue 45s timeout connect 60s timeout client 5m timeout server 5m timeout check 30s maxconn 1020 

在MySQL服务器上

/etc/my.cnf中

 wait_timeout = 28000 max_allowed_packet = 64M max_connections = 512 join_buffer_size=300 table_open_cache=2500 innodb_buffer_pool_instances=1 innodb_buffer_pool_size=2G query_cache_type=1 query_cache_size=128M 

zabbix_server.conf

 CacheSize = 128M Timeout=30 Timeout=29 (on agent node) ValueCacheSize=128M StartPollers=100 StartDBSyncers = 8 

一个相关的问题:如果这个问题发生和zabbix d / c与MySQL。 它是否立即连接而不丢失监控数据?

我已经做了很多Google的尝试,并尝试了几个与这个错误有关的解决scheme,但它不会消失。 我可以尝试什么?

谢谢!

您可能有持续的Zabbix DB连接问题。 调整你的TCP堆栈 – 查看持久连接的提示http://www.slideshare.net/Severalnines/haproxy-mysql-slides

让我们坚持文档,并做笔记:

MySQL服务器消失的最常见原因是服务器超时并closures了连接。

  • 如果mysqld收到更大或乱序的数据包,连接将被closures。 你可能想要twick max_allowed_packetvariables。 设置一些比它大的东西。
  • 运行查询之前,您的连接是否已closures?
  • 你可以连接到指定的主机,而不是使用简单的MySQL客户端的MySQL? 连接不是问题! 看看下面的工作: mysql -uUSER -pPASS

同样按照默认设置,客户端在断开连接时进行自动重新连接。

虽然max_allowed_pa​​cket通常在大多数情况下工作。 这个问题实际上是Zabbix数据库连接中的一个错误。

所以要回答这个问题,你必须修补或使用Zabbix版本2.5.0或以上。

来源: https : //support.zabbix.com/browse/ZBX-6163