作为集群种子节点序列
Akka cluster seed nodes sequence
所有节点是否应该具有相同的簇节点序列,特别是种子列表中的第一个节点?
例如
Node-1: Seed nodes
{Node-1, Node-2}
Node-2: Seed nodes
{Node-2, Node-1}
两个节点的节点顺序不同。根据我的测试节点不加入集群,这将不起作用。谁能说说这是什么原因?
第一个种子节点是特殊的,如集群文档中所述:
http://doc.akka.io/docs/akka/snapshot/java/cluster-usage.html
它必须是所有节点上的第一个配置节点,以便所有节点真正确定它们加入了同一个集群。
引用:
种子节点可以按任意顺序启动,不需要所有种子节点运行,但必须启动seed-nodes配置列表中配置为第一个元素的节点在最初启动集群时,否则另一个 seed-nodes 将不会初始化,并且没有其他节点可以加入集群。 第一个种子节点之所以特殊,是为了避免空集群启动时形成孤岛。同时启动所有配置的种子节点是最快的(顺序无关紧要) ), 否则它可以占用配置的 seed-node-timeout 直到节点可以加入。
一旦启动了两个以上的种子节点,关闭第一个种子节点是没有问题的。如果第一个种子节点重启,它会首先尝试加入现有集群中的其他种子节点。
所有节点是否应该具有相同的簇节点序列,特别是种子列表中的第一个节点?
例如
Node-1: Seed nodes
{Node-1, Node-2}
Node-2: Seed nodes
{Node-2, Node-1}
两个节点的节点顺序不同。根据我的测试节点不加入集群,这将不起作用。谁能说说这是什么原因?
第一个种子节点是特殊的,如集群文档中所述: http://doc.akka.io/docs/akka/snapshot/java/cluster-usage.html
它必须是所有节点上的第一个配置节点,以便所有节点真正确定它们加入了同一个集群。
引用:
种子节点可以按任意顺序启动,不需要所有种子节点运行,但必须启动seed-nodes配置列表中配置为第一个元素的节点在最初启动集群时,否则另一个 seed-nodes 将不会初始化,并且没有其他节点可以加入集群。 第一个种子节点之所以特殊,是为了避免空集群启动时形成孤岛。同时启动所有配置的种子节点是最快的(顺序无关紧要) ), 否则它可以占用配置的 seed-node-timeout 直到节点可以加入。
一旦启动了两个以上的种子节点,关闭第一个种子节点是没有问题的。如果第一个种子节点重启,它会首先尝试加入现有集群中的其他种子节点。