在多节点Docker环境中设置Akka集群的可行方法是什么?

时间:2014-12-16 23:35:00

标签: scala akka docker

假设下图。每个Docker容器属于一个Akka集群“foo”,每个都是 容器已运行一个群集节点。 Docker(在容器内)分配的IP地址是 以绿色给出。所有内部端口都是9090,但映射到主机上的各种外部端口。

enter image description here

Docker 5中节点的Akka URI是什么?它是akka.tcp://foo@10.0.0.195:9101

我已经阅读了一些关于Akka和Docker的博客涉及链接,但这似乎不可行(?) 多节点部署,我不确定链接如何扩展到100个节点。

我需要一些方法让Akka知道其集群的地址。留给自己的设备,Docker 5可能会 决定它可以在akka.tcp://foo@192.178.1.2:9090上找到,这在它自己的容器之外无用/无法到达。

此时我想我将主机的IP和端口(例如10.0.0.195:9101)传递给Docker容器 作为Akka在启动配置时启动的参数。

这会有效,还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

事实上!新的Akka(发布时的快照)确实有很好的新绑定来解决这个问题。使用示例:https://github.com/gzoller/docker-exp/tree/cluster