环境

环境

环境

CentOS 6.6,Zabbix 2.4

DB MySQL Galera 集群,带有 3 个节点
mysql-wsrep-server-5.6-5.6.23-25.10.el6.x86_64
galera-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;]

我以前经常遇到这种错误,但下面的调整减少了发生频率。我感觉这是由于 haproxy 造成的。

设置

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

现在,在这种情况下,主机“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服务器配置文件

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

相关问题:如果发生此问题并且 zabbix d/c 与 mysql 关联。它会立即重新建立连接而不会丢失监控数据吗?

我已经在 Google 上搜索了很多次,并尝试了几种与此错误相关的解决方案,但问题依然没有解决。我该尝试什么?

谢谢!

答案1

您可能遇到了 Zabbix DB 持久连接问题。还请调整您的 TCP 堆栈 - 请参阅持久连接的提示http://www.slideshare.net/Severalnines/haproxy-mysql-slides

答案2

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

因此要回答这个问题,您必须修补或使用 Zabbix 2.5.0 或更高版本。

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

答案3

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

MySQL 服务器已消失错误的最常见原因是服务器超时并关闭了连接。

  • 如果 mysqld 收到较大或无序的数据包,则连接将关闭。您可能需要 twickmax_allowed_packet变量。将其设置为比当前值大一些。
  • 运行查询之前您的连接是否关闭了?
  • 您能否使用简单的 mysql 客户端连接到指定主机上的 mysql?连接不是问题!查看以下操作是否有效:mysql -uUSER -pPASS

此外,根据默认设置,客户端会在断开连接时自动重新连接。

相关内容