Akka远程连接点节点需要运行吗?

Akka远程连接点节点需要运行吗?,akka,akka-cluster,akka-supervision,akka-remote-actor,Akka,Akka Cluster,Akka Supervision,Akka Remote Actor,我是阿克卡和阿克卡远程处理和阿克卡集群的新手。我已经用以下配置构建了一个系统 Application.conf akka { actor.provider = "akka.cluster.ClusterActorRefProvider" extensions = ["akka.contrib.pattern.ClusterReceptionistExtension"] actor.provider = "akka.cluster.ClusterActorRefProvider"

我是阿克卡和阿克卡远程处理和阿克卡集群的新手。我已经用以下配置构建了一个系统

Application.conf

akka {
  actor.provider = "akka.cluster.ClusterActorRefProvider"


  extensions = ["akka.contrib.pattern.ClusterReceptionistExtension"]

  actor.provider = "akka.cluster.ClusterActorRefProvider"

  remote{
    netty.tcp{
        port = 0
        hostname = "127.0.0.1"
    }
  }
  cluster {
    seed-nodes = [
      "akka.tcp://ClusterSystem@172.16.23.67:8551",
      "akka.tcp://ClusterSystem@172.16.23.67:8552"]

    auto-down-unreachable-after = 10s
  }

  extensions = ["akka.contrib.pattern.ClusterReceptionistExtension"]

  persistence {
    journal.plugin = "akka.persistence.journal.leveldb-shared"
    journal.leveldb-shared.store {
      # DO NOT USE 'native = off' IN PRODUCTION !!!
      native = off
      dir = "target/shared-journal"
    }
    snapshot-store.local.dir = "target/snapshots"
  }

}
worker.conf

akka {

  actor.provider = "akka.remote.RemoteActorRefProvider"

   remote{
    netty.tcp{
        port = 0
        hostname = "127.0.0.1"
    }
  }

}

contact-points = [
  "akka.tcp://ClusterSystem@172.16.23.67:8551",
  "akka.tcp://ClusterSystem@172.16.23.67:8552"]
未理解的是akka系统将在我的本地启动,并使用种子节点形成集群。这是否意味着种子节点应该准备好运行。这意味着进程应该在这些ip:端口上启动吗

原因是:如果没有运行这个procress-aldready,我得到的关联失败,因为它是封闭的

*******厄帕德*******

上述问题是由于使用浮动IP造成的。我的节点运行在Openstack虚拟机上,它们确实有一个静态IP。使用静态IP解决了这个问题


另一个有趣的发现。启动节点时,remote.netty.tcp中的主机名应该是机器inet,正如Ryan提到的,需要启动一个种子节点才能启动集群,因此将本地机器作为种子节点更好。如果您有分布式种子节点,则更喜欢使用localhost inet IP而不是127.0.0.1。

是的,如文档所述,必须运行列为种子的第一个节点,才能正确初始化其他种子:

种子节点可以按任何顺序启动,无需 运行所有种子节点,但将节点配置为第一个 种子节点配置列表中的元素必须在 最初启动集群,否则其他种子节点将无法启动 初始化,其他节点无法加入群集。原因 对于特殊的第一种子节点是为了避免形成分离岛 从空集群启动时。这是最快的开始 同时配置种子节点顺序无关紧要, 否则,它最多需要配置的种子节点超时,直到 节点可以加入


正如你所看到的,我的节点运行在不同的服务器上。这是否意味着相同的clustersystem将在另一台主机上运行,该主机将作为该系统在我的本地主机上运行的种子?谢谢Ryan。今天早上就解决了。如果感兴趣,请检查更新节。