Akka:种子节点是否应该为新节点运行以加入akka-cluster?

时间:2016-10-13 09:25:07

标签: scala akka distributed-computing akka-cluster

重现问题的步骤:

  1. 启动Seed1节点(conf中提到的第一粒种子)
  2. 启动另一个节点(Node2)。它将发现种子节点并加入集群系统。 //请求由两个节点提供。
  3. 现在,停止Seed1。 //所有请求都由Node2提供。
  4. 启动另一个节点(Node3)。它将开始但是说种子节点无法访问。 //所有请求仍由Node2提供。我假设因为此节点无法加入群集。
  5. 重新启动Seed1。 // Logs显示Seed1和Node3的MemberUp日志,但是 //所有请求仍然由Node2提供!

1 个答案:

答案 0 :(得分:1)

根据文件:

  

种子节点可以按任何顺序启动,并且不必运行所有种子节点,但最初启动集群时必须启动配置为种子节点配置列表中第一个元素的节点,否则其他种子节点将不会被初始化,其他节点也无法加入群集。 一旦启动了两个以上的种子节点,关闭第一个种子节点就没有问题。如果重新启动第一个种子节点,它将首先尝试加入现有集群中的其他种子节点。