【发布时间】:2015-09-28 08:55:27
【问题描述】:
在Akka FAQ 指定的application.conf 中配置bind-hostname 和bind-port 并启动集群后,我收到一个错误:
[ERROR] [07/09/2015 19:54:24.132] [default-akka.remote.default-remote-dispatcher-20]
[akka.tcp://default@54.175.105.30:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2Fdefault%4054.175.105.30%3A2552-757/endpointWriter]
dropping message [class akka.actor.ActorSelectionMessage]
for non-local recipient[Actor[akka.tcp://default@54.175.105.30:32810/]]
arriving at [akka.tcp://default@54.175.105.30:32810]
inbound addresses are [akka.tcp://default@54.175.105.30:2552]
这似乎是说,参与者收到了一条发往端口 32810(外部端口)的消息,但由于内部端口 (2552) 不匹配而将其丢弃。
文件的相关部分是:
hostname = 54.175.105.30
port = 32810
bind-hostname = 172.17.0.44
bind-port = 2552
我在 2.4-M1、2.4-M2 和 2.4-SNAPSHOT 上试过这个,效果都一样。
有没有其他人遇到过这种情况?有什么建议吗?
编辑: 这个演员系统在 docker 容器的 ECS 中运行。 docker 容器配置设置为在容器的私有 IP 上从临时范围转发到 2552。 ECS 已成功将 hostname:port 映射到 bind-hosname:bind-port。 Actor 成功运行并绑定到本地绑定主机名和绑定端口,但正在丢弃消息并发出上述错误。
【问题讨论】:
-
只是好奇,您能够将
bind-hostname设置为网桥而不是0.0.0.0?通过将网络类型设置为host?
标签: docker akka akka-cluster amazon-ecs