我的应用程序使用以下ActiveMQ Artemis群集配置,因为我需要最少数量的节点和HA。
这是针对生产系统的正确集群配置吗?如果没有,你推荐什么?
在上述集群中,当主服务器发生故障时,我们将失去HA。因此,我想到要有2个奴隶。
对于裂脑,我发现以下文档有帮助
具体来说,备份将在失去连接时变为活动状态 到其实时服务器。这可能会有问题,因为这也可能 由于暂时的网络问题而发生。为了解决 此问题,备份将尝试确定是否仍然可以 连接到群集中的其他服务器。如果可以连接更多 超过一半的服务器,它将变为活动状态,如果超过一半 服务器也随着实时消失,备份将等待尝试 重新与现场联系。这避免了脑裂情况。 https://activemq.apache.org/components/artemis/documentation/2.0.0/ha.html
以上文档是否意味着当我的主服务器和从服务器之间出现临时网络故障时,从服务器将在升级为主服务器之前检查其他从服务器的可达性,从而减轻大脑裂开的情况?
答案 0 :(得分:1)
如果使用的是复制,则建议的缓解裂脑的最小节点数为6。建立适当的仲裁的三个生命和三个相应的备份。请记住,只有 live 个节点参与法定投票,因此,在临时网络故障的情况下,具有1个实时和2个备份将无助于减轻裂脑。
如果您使用的是 shared-storage ,则建议的减少裂脑的最小节点数为2。只有一个活动和一个备份。这是因为文件系统(例如SAN或NAS)上的文件锁可以缓解脑裂。