Multicast


#1

Elasticsearch removed multicast on 2.0
I read some stuff and you guys advise to use something like
discovery.zen.ping.unicast.hosts: [ 192.168.1.2, 192.168.1.3 ]
If I add 2 new nodes to the cluster, lets say 192.168.1.4 using [ 192.168.1.2, 192.168.1.3 ] and then 192.168.1.5, will .5 be aware there's a .4 node present in the cluster?
Assuming yes, if later I add node .6 with [ 192.168.1.4, 192.168.1.5 ] and remove node .2 and node .3 will node .4 be able to know it can ping nodes .5 and .6?


(Nik Everett) #2

Discovery is really only used when the node isn't in the cluster. Once its
in the cluster the nodes freely share the list of nodes in the cluster. The
upshot is that if you set the list of hosts before the node starts you are
generally in good shape.


#3

There's something extremely wrong with this.
I've 3 nodes, node-A, node-B, node-C.
I create node-A with settings:

               -Des.cluster.name="My-Cluster" \
               -Des.network.bind_host=192.168.50.1 \
               -Des.transport.publish_host=192.168.50.1 \
               -Des.http.publish_host=192.168.50.1

node-B and node-C with this where X is .2 or .3 depending if it is node-B or node-C:

               -Des.cluster.name="My-Cluster" \
               -Des.network.bind_host=192.168.50.X \
               -Des.transport.publish_host=192.168.50.X \
               -Des.http.publish_host=192.168.50.X \
               -Des.discovery.zen.ping.unicast.hosts= 192.168.50.1

The problem is right after starting the cluster if I want to POST or PUT data into the cluster my environment gets extremely slow a POST takes at least 3 seconds (each POST). I don't see high CPU usage, I don't see large amount of traffic nor I/O to disk. However if I remove the following line: -Des.discovery.zen.ping.unicast.hosts from node-B and node-C this doesnt happen.
With the Des.discovery.zen.ping.unicast.hosts and if I couple minutes after I create the cluster and then I insert the data then I don't see any delays. What is causing this?


(system) #4