【问题标题】:ejabberd Clustering with master Slave and Master Master not avoid single point of failureejabberd Clustering with master Slave 和 Master Master 不能避免单点故障
【发布时间】:2016-05-05 19:41:07
【问题描述】:

每当 Master 在 ejabberd Cluster 中宕机时,slave 将无法处理请求。我遵循以下教程:http://chadillac.tumblr.com/post/35967173942/easy-ejabberd-clustering-guide-mnesia-mysql 并尝试使用 join_node() 和 join_as_master() 。但它不起作用。我的集群正在运行,我使用 mysql 数据库作为两个节点的单独数据库。我也尝试使用 join 作为 master slave 和 master master 方法。两者都不能避免单点故障。 是否需要同步从属和主控mnesia数据库?请任何人都可以帮助我...

【问题讨论】:

标签: ejabberd


【解决方案1】:

如果配置正确,ejabberd 不会出现单点故障。 ejabberd中没有主从之类的东西。 ejabberd 是 master-master,如果您按照 ejabberd 官方文档中的说明使用 join_clustercommand 配置它:http://docs.ejabberd.im/admin/guide/clustering/

您还需要将其他服务配置为冗余: - 负载均衡器 - MySQL

一旦完成,我看不出您可以将什么视为故障点。如果一个节点必须关闭,该服务会继续为连接在其他节点上的用户正常工作,而已断开连接的用户可以在任何剩余节点上重新连接。

如果你的意思是如果你停止两个节点然后尝试只启动第一个停止的节点,这是 Mnesia 分布式数据库的正常行为。那么这里已经回答了一个重复的问题:ejabberd clustering, Slave doesn't work when master goes down

注意:您指向的博文已过时。

【讨论】:

  • 感谢您回答我的问题...我按照整个文档并在 AWS 上设置 ejabberd 集群。 2 个节点,即节点 1 和节点 2 在集群中连接,它也显示在 Web 门户中。问题是当我关闭节点 2 时,整个集群工作正常。但是每当我关闭节点 1 时,整个集群就会停止工作。再次启动 node1 后,两个节点都保留在集群中。主要问题是在我关闭节点 1 时保持集群正常工作。
  • 由于 ejabberd 没有任何 master,如果任何节点宕机,服务将继续工作。如果不是这种情况,则说明您的配置错误。要获得进一步的帮助,您需要更具体地了解“整个集群停止工作”。你的意思是 ?有什么症状?日志中有什么?等
  • 是的,先生,我参考了官方网站上的建议文档。现在我所做的是按照文档:是的,先生,我从官方网站上参考了您建议的文档。我在 ejabberd1 和 ejabberd2 节点上设置了集群。我将 ejabberd.yml 文件放在两个节点上相同,并更改 ejabberdctl.cfg 文件中的 erlangnode 选项。 erlangcookie 文件具有相同的内容。在 ejabberd 1 的 /etc/hosts 中提到了 ejabberd1 的地址。继续............
  • 在 ejabberd 2 的 /etc/hosts 中提到了 ejabberd 1 和 ejabberd 2 的 IP 地址。根据您的文档,运行命令 $ ejabberdctl join_cluster 'ejabberd@ejabberd01' 最后集群完成。它显示了所有内容以及两个节点服务请求。但是当我关闭 ejabberd 2 时,ejabberd 1 仍然可以正常工作。但是,一旦我放下 ejabberd 1,一切就都消失了。我使用了 ejabberd 15.09 版本。我也用 ejabberd 16.01 试过这个。请给我任何博客参考或告诉我我在哪里做错配置?
  • 您的意思是您有两个节点,关闭节点 2 一切正常,然后关闭节点 1 并停止工作。看起来很正常。如果你有两个节点并关闭它们,你就没有服务。如果您的意思是,如果您在关闭节点 1 后启动节点 2,它会在服务请求之前等待,这是一个重复的问题,在此回答:stackoverflow.com/questions/34715119/…
猜你喜欢
  • 2011-11-17
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-06
  • 2018-07-09
  • 1970-01-01
相关资源
最近更新 更多