# Load balancer ( like F5) vs Coordinating node

**URL:** <https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168>\
**Category:** Elasticsearch\
**Created:** [May 25, 2017, 6:49pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168 "2017-05-25T18:49:09Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![venkata\_sreekanth\_bh](https://avatars.discourse-cdn.com/v4/letter/v/65b543/32.png) [@venkata\_sreekanth\_bh](https://discuss.elastic.co/u/venkata_sreekanth_bh)\
**Post date:** [May 25, 2017, 6:49pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/1 "2017-05-25T18:49:09Z")

</div>

Which is better and why ?

Edit

Small 3 node cluster all master,data nodes. Each node 8 cores, 32 GB RAM, 8 GB Heap  
Purpose of cluster - search  
Request Rate 150/s

Would adding a coordinating decrease the latency and throughput ?

---

<div class="post-metadata">

**Author:** ![orhiee](https://avatars.discourse-cdn.com/v4/letter/o/eb9ed0/32.png) [@orhiee](https://discuss.elastic.co/u/orhiee)\
**Post date:** [May 25, 2017, 7:22pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/2 "2017-05-25T19:22:30Z")

</div>

hello this is an interesting question or it could be if you gave more info on your need and setup 😉

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 25, 2017, 9:49pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/3 "2017-05-25T21:49:03Z")

</div>

IMHO the main advantage of the coordinating node is that it's aware of the topology so it can route requests directly to the right shards.

Also it does the aggregation/collection/call it as you wish of data gathered from all shards.

It's not a naive proxy.

---

<div class="post-metadata">

**Author:** ![venkata\_sreekanth\_bh](https://avatars.discourse-cdn.com/v4/letter/v/65b543/32.png) [@venkata\_sreekanth\_bh](https://discuss.elastic.co/u/venkata_sreekanth_bh)\
**Post date:** [May 25, 2017, 11:18pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/4 "2017-05-25T23:18:31Z")

</div>

Added more detail, I am in general looking for a generic guidelines.

---

<div class="post-metadata">

**Author:** ![venkata\_sreekanth\_bh](https://avatars.discourse-cdn.com/v4/letter/v/65b543/32.png) [@venkata\_sreekanth\_bh](https://discuss.elastic.co/u/venkata_sreekanth_bh)\
**Post date:** [May 25, 2017, 11:20pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/5 "2017-05-25T23:20:41Z")

</div>

Are there any figures as to what sort improvement can be observed with a coordinating node compared to a load balancer ?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 26, 2017, 4:25am UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/6 "2017-05-26T04:25:52Z")

</div>

No. I can just tell that with coordinating nodes you will gain one network hop.

---

<div class="post-metadata">

**Author:** ![venkata\_sreekanth\_bh](https://avatars.discourse-cdn.com/v4/letter/v/65b543/32.png) [@venkata\_sreekanth\_bh](https://discuss.elastic.co/u/venkata_sreekanth_bh)\
**Post date:** [May 26, 2017, 5:32pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/7 "2017-05-26T17:32:35Z")

</div>

Doesn't the coordinating node take over the responsibility of collecting the responses, sorting them and sending them as JSON? if so does this have any impact on performance?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 26, 2017, 5:47pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/8 "2017-05-26T17:47:54Z")

</div>

A coordinating node is the node which gets a request from the outside. It can be dedicated or any node in the cluster. So what you describe will happen anyway somewhere in the cluster.

Dedicating a node then allows giving more resources to it.

---

<div class="post-metadata">

**Author:** ![samdash](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/samdash/32/21628_2.png) [@samdash](https://discuss.elastic.co/u/samdash)\
**Post date:** [June 12, 2017, 10:41pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/9 "2017-06-12T22:41:48Z")

</div>

I also have a similar cluster and using transport client , if i do not have any coordinating nodes, does one of the nodes act as coordinating node?  
All my 3 nodes are master/data nodes.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [June 13, 2017, 5:09am UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/10 "2017-06-13T05:09:47Z")

</div>

Yes.

> A coordinating node is the node which gets a request from the outside

---

<div class="post-metadata">

**Author:** ![panda2004](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/panda2004/32/19473_2.png) [@panda2004](https://discuss.elastic.co/u/panda2004)\
**Post date:** [June 23, 2017, 11:19am UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/11 "2017-06-23T11:19:01Z")

</div>

That is a very interesting discussion!

I have a few more question in the same topic:

1. Let's say I have a web application which is only aware of one data node out of 3 data nodes available in the cluster. That data node, which becomes a coordinating node, surly communicate with all other nodes. But does it mean that all my requests go to its search thread pool? It could explain why sometimes I'm getting a hang in my searches, and then suddenly get all the previous search responses at once including the last.

2. Concerning to indexing purposes. Let's say again that my indexing application is only aware of 1 data node. Yet again, I believe this data node knows how to divide the data between all the other nodes and shards. But yet again, its indexing queue will become a battle neck?

3. By the way, when using Nest client - is there a way to make the searching/indexing operations in round robin through all the nodes? Update: [here](https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/round-robin.html) is an excellent explanation for what I was looking for. Apparently, I wasn't doing a round robin requests - since Nest was given only 1 node address and no sniffing was used. Will making search request in round robin improve performance?

---

<div class="post-metadata">

**Author:** ![venkata\_sreekanth\_bh](https://avatars.discourse-cdn.com/v4/letter/v/65b543/32.png) [@venkata\_sreekanth\_bh](https://discuss.elastic.co/u/venkata_sreekanth_bh)\
**Post date:** [June 26, 2017, 3:51pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/12 "2017-06-26T15:51:31Z")

</div>

> [@panda2004](#):
>
> uest in round robin imp

I am hoping someone from elastic will answer you queries. The term coordinating node has become sort of a black box as lot of it's behavior is still unknown.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 24, 2017, 3:51pm UTC](https://discuss.elastic.co/t/load-balancer-like-f5-vs-coordinating-node/87168/13 "2017-07-24T15:51:32Z")

</div>

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