hseeberger / constructr

Coordinated (etcd, ...) cluster construction for dynamic (cloud, containers) environments
Apache License 2.0
212 stars 37 forks source link

akka.remote.netty.tcp.bind-hostname vs hostname #161

Closed RomanIakovlev closed 7 years ago

RomanIakovlev commented 7 years ago

From what I observe in my testing, and what I see in the code, nodes use akka.remote.netty.tcp.bind-hostname (via akka.cluster.Cluster#selfAddress, which calls akka.remote.RemoteTransport#defaultAddress), not akka.remote.netty.tcp.hostname, as self-address in coordination backend.

This means, nodes running in Docker can't form the cluster, since they try to join the internal address of the other nodes, which is obviously inaccessible from outside.

Is this understanding correct? If yes, maybe we can somehow accommodate for this (quite popular) deployment scenario?

RomanIakovlev commented 7 years ago

I've tested more carefully, and found this issue invalid. ConstructR uses the correct hostname from the cluster, and everything works fine in that sense.