# Cluster clients

**URL:** <https://discuss.elastic.co/t/cluster-clients/21219>\
**Category:** Elasticsearch\
**Created:** [December 11, 2014, 7:28pm UTC](https://discuss.elastic.co/t/cluster-clients/21219 "2014-12-11T19:28:29Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Morten\_Guldager](https://avatars.discourse-cdn.com/v4/letter/m/bc8723/32.png) [@Morten\_Guldager](https://discuss.elastic.co/u/Morten_Guldager)\
**Post date:** [December 11, 2014, 7:28pm UTC](https://discuss.elastic.co/t/cluster-clients/21219/1 "2014-12-11T19:28:29Z")

</div>

I have just started with elasticsearch, have setup a cluster with 4  
data/master nodes. everything pretty default. The nodes are called E1, E2,  
E3 and E4.

I have implemented a few pieces of client software, and doing RESTful  
communication against [http://E1:9200/](http://E1:9200/) is super easy.

But how are the clients supposed to address the cluster? Pointing directly  
to a specific cluster node seems not right, that particular node might be  
down. Also, configuring all clients with knowledge about all cluster nodes  
seems impractical too.

Of cause I could setup old-school round robin DNS. Is that the way to do it  
or do we have smarter options?

Ah yes, I'm using python and the elasticsearch module. Everything is on  
linux.

/mogul

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

**Author:** ![nickcanz](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nickcanz/32/44873_2.png) [@nickcanz](https://discuss.elastic.co/u/nickcanz)\
**Post date:** [December 11, 2014, 8:11pm UTC](https://discuss.elastic.co/t/cluster-clients/21219/2 "2014-12-11T20:11:32Z")

</div>

Most (all?) of the official clients have connection pool support that will  
query the cluster status and round robin across all the nodes with client  
capability enabled.

Here's the appropriate link to the python docs:  
[http://elasticsearch-py.readthedocs.org/en/master/connection.html#connection-pool](http://elasticsearch-py.readthedocs.org/en/master/connection.html#connection-pool)

Cheers,

On Thu, Dec 11, 2014 at 2:28 PM, Morten Guldager [morten.guldager@gmail.com](mailto:morten.guldager@gmail.com)  
wrote:

> I have just started with elasticsearch, have setup a cluster with 4  
> data/master nodes. everything pretty default. The nodes are called E1, E2,  
> E3 and E4.
> 
> I have implemented a few pieces of client software, and doing RESTful  
> communication against [http://E1:9200/](http://E1:9200/) is super easy.
> 
> But how are the clients supposed to address the cluster? Pointing directly  
> to a specific cluster node seems not right, that particular node might be  
> down. Also, configuring all clients with knowledge about all cluster nodes  
> seems impractical too.
> 
> Of cause I could setup old-school round robin DNS. Is that the way to do  
> it or do we have smarter options?
> 
> Ah yes, I'm using python and the elasticsearch module. Everything is on  
> linux.
> 
> /mogul
> 
> --  
> You received this message because you are subscribed to the Google Groups  
> "elasticsearch" group.  
> To unsubscribe from this group and stop receiving emails from it, send an  
> email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> To view this discussion on the web visit  
> [https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com)  
> [https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com?utm_medium=email&utm_source=footer)  
> .  
> For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
Nick Canzoneri  
Developer, Wildbit [http://wildbit.com/](http://wildbit.com/)  
Beanstalk [http://beanstalkapp.com/](http://beanstalkapp.com/), Postmark [http://postmarkapp.com/](http://postmarkapp.com/),

> **[DeployBot | Code Deployment Tools | Deploy Code Anywhere](https://deploybot.com)**
>
> Push. Build. Deploy! Instantly build and ship code anywhere in one consistent process for your entire team. DeployBot's code deployment tools work with your existing git repository to deploy new code fast, and with zero downtime. These are the...

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [December 11, 2014, 8:17pm UTC](https://discuss.elastic.co/t/cluster-clients/21219/3 "2014-12-11T20:17:37Z")

</div>

The only thing to keep in mind is that if the node is down you should just  
retry on another one. The client might handle that for you, I dunno. its  
important though because you don't want to lose 1/4 of your traffic when  
you restart a node.

Nik

On Thu, Dec 11, 2014 at 3:11 PM, Nick Canzoneri [nick@wildbit.com](mailto:nick@wildbit.com) wrote:

> Most (all?) of the official clients have connection pool support that will  
> query the cluster status and round robin across all the nodes with client  
> capability enabled.
> 
> Here's the appropriate link to the python docs:
> 
> [Connection Layer API — Elasticsearch 8.0.0 documentation](http://elasticsearch-py.readthedocs.org/en/master/connection.html#connection-pool)
> 
> Cheers,
> 
> On Thu, Dec 11, 2014 at 2:28 PM, Morten Guldager \<  
> [morten.guldager@gmail.com](mailto:morten.guldager@gmail.com)\> wrote:
> 
> > I have just started with elasticsearch, have setup a cluster with 4  
> > data/master nodes. everything pretty default. The nodes are called E1, E2,  
> > E3 and E4.
> > 
> > I have implemented a few pieces of client software, and doing RESTful  
> > communication against [http://E1:9200/](http://E1:9200/) is super easy.
> > 
> > But how are the clients supposed to address the cluster? Pointing  
> > directly to a specific cluster node seems not right, that particular node  
> > might be down. Also, configuring all clients with knowledge about all  
> > cluster nodes seems impractical too.
> > 
> > Of cause I could setup old-school round robin DNS. Is that the way to do  
> > it or do we have smarter options?
> > 
> > Ah yes, I'm using python and the elasticsearch module. Everything is on  
> > linux.
> > 
> > /mogul
> > 
> > --  
> > You received this message because you are subscribed to the Google Groups  
> > "elasticsearch" group.  
> > To unsubscribe from this group and stop receiving emails from it, send an  
> > email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> > To view this discussion on the web visit  
> > [https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com)  
> > [https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/8e0d2e30-dd34-4ee3-854e-52edece9b821%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > .  
> > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> 
> --  
> Nick Canzoneri  
> Developer, Wildbit [http://wildbit.com/](http://wildbit.com/)  
> Beanstalk [http://beanstalkapp.com/](http://beanstalkapp.com/), Postmark [http://postmarkapp.com/](http://postmarkapp.com/),  
> [dploy.io](http://dploy.io)
> 
> --  
> You received this message because you are subscribed to the Google Groups  
> "elasticsearch" group.  
> To unsubscribe from this group and stop receiving emails from it, send an  
> email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> To view this discussion on the web visit  
> [https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com)  
> [https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKWm5yMbyDShtovep46rnVM7-NY3ABDYwz3m1HorPRORLTWk8w%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> .
> 
> For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/CAPmjWd1HbiDmO\_89Zqmh4ptT3XF5L3hbHVoQrODDv\_vnZZwZhA%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAPmjWd1HbiDmO_89Zqmh4ptT3XF5L3hbHVoQrODDv_vnZZwZhA%40mail.gmail.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<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 6, 2017, 12:44am UTC](https://discuss.elastic.co/t/cluster-clients/21219/4 "2017-07-06T00:44:04Z")

</div>


