我需要使用CDC Binlog客户端从前面带有负载均衡器的MariaDB Galera群集(v10.3.10)捕获更改。
具有负载平衡器的MariaDB Galera群集可提供容错能力。如果某个节点死亡,则负载均衡器运行状况检查将检测到该故障并将流量路由到其他节点。那很好。我们想要高可用性。
当直接连接到任何群集节点时,CDC客户端可以完美地工作。但是,当CDC客户端通过HAProxy负载平衡器连接到MariaDB Galera群集时,它将失败:
在二进制日志索引文件中找不到第一个日志文件名
大概是,客户端连接到一个节点,获取文件名,位置等...,随后的请求被路由到具有不同binlog属性的另一个节点。
是否有一种方法可以从不依赖单个节点的高可用性MariaDB Galera集群中进行CDC?我们希望避免单点故障。