Akka Singleton Cluster:重新启动后,master的一个worker失败

时间:2016-04-16 01:36:18

标签: scala akka akka-cluster

我正在使用Akka Cluster 2.4.3并尝试在我的机器中设置一个简单的集群,以了解它的工作效果。我有一个单一的集群,启用了远程主服务器和一个工作节点的远程处理。这3个中的每一个都在不同的JVM中运行

第一次启动所有节点时,工作正常。如果我杀死并重新启动工作人员,我会看到发生以下问题

重新启动工作人员

当工作人员在重新启动后返回时,接收MemberUp事件的主人尝试通过以下方式从成员地址解析actorRef

context.actorSelection(member.address.toString).resolveOne(15 seconds)

此操作失败,并显示ActorNotFound。当群集中的所有节点第一次出现时,这没有问题。

重新启动工作人员

这次,工作人员提出以下信息

[WARN] [04/15/2016 18:24:24.991] [clustersystem-akka.remote.default-remote-dispatcher-5] [akka.remote.Remoting] Tried to associate with unreachable remote address [akka.tcp://clustersystem@host1:2551]. Address is now gated for 5000 ms, all messages to this address will be delivered to dead letters. Reason: [The remote system has quarantined this system. No further associations to the remote system are possible until this system is restarted.]

重新启动工作人员

这次resolveOne活动的MemberUp有效。

我在理解这里发生的事情时遇到了一些困难,我已经查看了文档,但我找不到任何可以帮助我的内容。

application.conf

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

  remote {
    enabled-transports = ["akka.remote.netty.tcp"]
  }

  log-dead-letters = off
  jvm-exit-on-fatal-error = on

  loglevel = "DEBUG"

  remote {
    log-remote-lifecycle-events = off
    netty.tcp {
      hostname = "host1"
      port = 0
    }
  }

  cluster {
    seed-nodes = [
      "akka.tcp://clustersystem@host1:2551",
      "akka.tcp://clustersystem@host1:2552"]

    auto-down-unreachable-after = 10s
  }


  extensions = ["akka.cluster.metrics.ClusterMetricsExtension"]
}

我在端口2551和2552启动主节点(将端口作为命令行参数提供)并在端口3551上启动工作程序

0 个答案:

没有答案