I'm creating a cluster for Elasticsearch having 3 nodes (one acting as master)
I was to ask that while indexing or searching (considering we have a single index) will i be providing the IP-Address of same node for every cause and Elasticsearch will determine on its own which node to assign which task (or it will divide the load equally between the nodes)
or do i need to provide different IPs to access and manipulate nodes from my application
From a client point of view, you can use any node in the cluster, then the cluster will handle allocation of the request with the other nodes and then return the response to the client.
That means you can use a single IP, or all 3, or use a CNAME or load balancer endpoint that talks to all the nodes. It's up to you.
Also having a single master is going to cause you issues, you should make all 3 master eligible.
this is what i get when i run the command "GET _cat/nodes" so i guess all these nodes are master eligible and it will work fine in a production environment.
and if i use the IP 172.21.0.2 i will be able to index and search data from all three nodes and (not causing any overhead to this single node)
So it is advised to use different ips on for different querying purposes. if so how do we calculate/determine how many number of request (or which tasks) a node can handle or any help regrading the usage of multi-node cluster.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.