2 instances of ElasticSearch deployed with docker can't see each other


(carlos ruiz) #1

Good evening,

I've started two instances of elasticsearch on two hosts as docker containers

the issue now is the elasticsearch instances are not able to see each other

does anyone know what configuration changes or command parameters shall be used in order to have these two instances working together as a cluster?

Thanks in advance

Kind Regards


(Magnus Bäck) #2

Are you using multicast or unicast discovery?


(carlos ruiz) #3

good morning,

i have not set any special discovery option when i started the containers

docker run -d -p 9200:9200 -p 9300:9300 elasticsearch

is the command used to start the container on each node

regards

Enviado desde mi iPhone


(Magnus Bäck) #4

Okay, but what does the elasticsearch container come from?


(carlos ruiz) #5

sorry magnus,

But I don't really understand your last question, I'm using the official
elasticsearch container available in the docker hub page

I've deployed one instance on compute1 server and the second one compute2
one, and the issue is that the containers can't see each other so up to now
i've two clusters with one node each

regards


(Magnus Bäck) #6

But I don't really understand your last question, I'm using the official elasticsearch container available in the docker hub page

Thanks, that's exactly the missing piece of information. And it's version 1.7 you're using, i.e. the one currently with the "latest" tag?

I'm pretty sure this is an issue with Docker and multicast (which ES uses as its default discovery mechanism). See github.com/docker/docker/issue #3043.

It's often recommended to use unicast discovery instead of multicast, so that could be something to explore. You could build your own Docker image with a custom elasticsearch.yml that disables multicast and references both ES hosts so that they can contact each other.


(system) #7