1

我有一个应用程序,我无法提前知道种子节点以放入应用程序配置中。因此,应用程序在一个节点上启动,当它在其他节点上启动时,它们使用 Cluster.join 在第一个节点上加入集群。问题是连接永远不会完成,集群永远不会启动。问题是什么?

4

1 回答 1

5

问题是还没有集群加入。仅在第一个节点上实例化集群对象不会启动集群。文档中有一个很容易漏掉的小注释:

也可以使用 Cluster(system).join 以编程方式执行加入。请注意,您只能加入现有的集群成员,这意味着为了引导某些节点必须加入自身。

因此,第一个节点应该加入自己以启动集群。这会导致创建负责在集群中添加和删除节点的“领导者”。

于 2014-04-01T15:42:05.820 回答