cluster configuration

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

cluster configuration

sujan dutta
what is the difference between master node and load balanced node ?

i can create a master node and data node
by 
node.master : true and node.data : true


how do i create http client node ?
node.client : true
http.enabled : true 

how about creating  load balanced node ?




Reply | Threaded
Open this post in threaded view
|

Re: cluster configuration

Radu Gheorghe
"A master in elasticsearch is responsible for handling nodes coming
and going and allocation of shards." (quoting Shay)

Now here comes my own understanding:

A master may hold data or not. A "load balancer" would be a node that
doesn't hold data (node.data: false), but has the HTTP transport
enabled. From what I know it doesn't need to be a master as well. The
idea is that client apps would send requests to it, and the load
balancer would forward the requests to the nodes having the needed
shards, and also gather the results.

Then, you would have "load balanced" nodes, if you will. Those would
be nodes that hold data, but with HTTP transport disabled
(http.enabled: false). They will only be "workhorses" and won't be
bothered with stuff like HTTP requests for clients or redirecting
requests to other data nodes.

An you can find more on this scenario here:
http://www.elasticsearch.org/guide/reference/modules/node.html

On 23 iun., 09:17, stoned7 <[hidden email]> wrote:

> what is the difference between master node and load balanced node ?
>
> i can create a master node and data node
> by
> node.master : true and node.data : true
>
> how do i create http client node ?
> node.client : true
> http.enabled : true
>
> how about creating  load balanced node ?
Reply | Threaded
Open this post in threaded view
|

Re: cluster configuration

kimchy
Administrator
Its pretty simple:

1. node.master set to true means that node can be elected to become a master in cluster.
2. node.data set to true means that a node will be allocated with shards ("data").

Setting both to false (or simply setting node.client to true) will cause the node to act as a client to the cluster, potentially acting as a load balancer.

On Sun, Jun 24, 2012 at 3:48 PM, Radu Gheorghe <[hidden email]> wrote:
"A master in elasticsearch is responsible for handling nodes coming
and going and allocation of shards." (quoting Shay)

Now here comes my own understanding:

A master may hold data or not. A "load balancer" would be a node that
doesn't hold data (node.data: false), but has the HTTP transport
enabled. From what I know it doesn't need to be a master as well. The
idea is that client apps would send requests to it, and the load
balancer would forward the requests to the nodes having the needed
shards, and also gather the results.

Then, you would have "load balanced" nodes, if you will. Those would
be nodes that hold data, but with HTTP transport disabled
(http.enabled: false). They will only be "workhorses" and won't be
bothered with stuff like HTTP requests for clients or redirecting
requests to other data nodes.

An you can find more on this scenario here:
http://www.elasticsearch.org/guide/reference/modules/node.html

On 23 iun., 09:17, stoned7 <[hidden email]> wrote:
> what is the difference between master node and load balanced node ?
>
> i can create a master node and data node
> by
> node.master : true and node.data : true
>
> how do i create http client node ?
> node.client : true
> http.enabled : true
>
> how about creating  load balanced node ?

Reply | Threaded
Open this post in threaded view
|

Re: cluster configuration

Douglas Ferguson
If I am going to start out with 2 machines would it be sensible to

1) set both node.master & node.data to true on both machines
2) put a real load balancer in front of them and just round robin between them?

I am in ec2 so that ec2 plugin sounds appealing, i.e. if I spin up a machine with the correct tags it will join the cluster. Not sure about the implication of having tons of noes with both (master & data set to true though.

Also, is there any reason not to run elasticsearch on the same machine as apache/tomcat?

On Monday, June 25, 2012 7:11:06 AM UTC-5, kimchy wrote:
Its pretty simple:

1. node.master set to true means that node can be elected to become a master in cluster.
2. node.data set to true means that a node will be allocated with shards ("data").

Setting both to false (or simply setting node.client to true) will cause the node to act as a client to the cluster, potentially acting as a load balancer.

On Sun, Jun 24, 2012 at 3:48 PM, Radu Gheorghe <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="G82tHZQ3h_QJ">radu0g...@...> wrote:
"A master in elasticsearch is responsible for handling nodes coming
and going and allocation of shards." (quoting Shay)

Now here comes my own understanding:

A master may hold data or not. A "load balancer" would be a node that
doesn't hold data (node.data: false), but has the HTTP transport
enabled. From what I know it doesn't need to be a master as well. The
idea is that client apps would send requests to it, and the load
balancer would forward the requests to the nodes having the needed
shards, and also gather the results.

Then, you would have "load balanced" nodes, if you will. Those would
be nodes that hold data, but with HTTP transport disabled
(http.enabled: false). They will only be "workhorses" and won't be
bothered with stuff like HTTP requests for clients or redirecting
requests to other data nodes.

An you can find more on this scenario here:
http://www.elasticsearch.org/guide/reference/modules/node.html

On 23 iun., 09:17, stoned7 <[hidden email]> wrote:
> what is the difference between master node and load balanced node ?
>
> i can create a master node and data node
> by
> node.master : true and node.data : true
>
> how do i create http client node ?
> node.client : true
> http.enabled : true
>
> how about creating  load balanced node ?

--