我正在尝试设置跨区域的galera设置,其中dc1是一个主节点,其余的是从节点。这里提到了类似的设置(但只有2个dcs):http://galeracluster.com/documentation-webpages/weightedquorum.html#weighted-主要和次要站点场景的仲裁
DC1:
node1: pc.weight = 2
node2: pc.weight = 2
DC2:
node3: pc.weight = 0
node4: pc.weight = 0
DC3:
node5: pc.weight = 0
node6: pc.weight = 0
在其中一个失败场景中,可能会出现以下情况。 node5
变成 non-primary
,同时 node6
停留 primary
. 在这种情况下,在dc3我想 writes
到node6,而reads可以到任何节点(最好是node6)。
另一种情况可能是 node5
以及 node6
变成 non-primary
在这种情况下,我希望将只读查询发送到两个节点,但拒绝“写”查询。
我看不出用一个负载平衡器就可以轻松实现上述目标。我应该有两个负载均衡器,一个用于读取,一个用于写入吗?
在写负载平衡器节点处于非主状态时,应将其从lb中移除。例如,如果读取查询失败,或者仅仅是在端口3306上无法访问,则应删除读取负载平衡器节点。
解决上述问题的可靠方法是什么?
暂无答案!
目前还没有任何答案,快来回答吧!