How elasticsearch distribute the requests from client

I want to know the whole process where elasticsearch distribute the request received from client server (logstash, application, fluentd etc.)

does the master node in cluster just assign the request to the most stable node after checking the network status of other nodes? or requests are distributed depending on the client's ip address? I saw this article but it seems to discuss a bit older es version Elasticsearch from the Top Down | Elastic Blog

Im asking this because I tested es cluster(4 nodes, 1 index, 1 primary and 1 replica) with only one client server. If the es node assigns the request per client's ip, then Im wondering whether my test still has meaning because it probably assign the request to only two node which are responsible at client's ip address. I wanted to test the whole es cluster.

The node that receives the request will handle it and the master role does not play a part in normal request processing. Your client should have all data nodes listed (assuming no dedicated ingest or coordinsting only nodes) and it will then distribute load across the appropriate nodes. You should never send all requests to the master node.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.