What is best node configuration in 3 node

Hello, i have 3 nodes to operate Elasticsearch and Kibana.

I have to set role node by node (master? data? ingest?)

I heard that node.roles don't need to be configured in small cluster size (smaller than 3 nodes)

It means that all node can be a master, data, ingest, etc...

Is it right?

What is best option to configure 3 node elasticsearch cluster?

1 Like

it can work but it depends upon your data size. By default your node performs all roles data,master,transform,ml,ingest

If we have to store large size data in our system, what is good option?

you have to make a plan like data retention period,shard strategy (if your per day data size is more than 50 gb then you have to create 2 shards for one index)
you can read this documentation.

it is good to have 2 client/coordinate nodes in your elasticsearch cluster, apart from 3 nodes of elastic.

1 Like

Yes, that is correct. You always want to have threee master eligible nodes in the cluster and if the nodes have the same specification it makes sense to let them have all roles.

With only three nodes the default is fine. The amount of data each node can handle will generally be driven by the amount of heap you have and how efficiently you use this and/or performance requirements.

I disagree. Adding coordinating nodes can benefit, but it is very use case specific. Adding two data nodes will in my mind make a much bigger difference than adding two coordinating nodes.

1 Like

Thank you for reply.
When i use three node as default, how can client access elasticsearch cluster?

                  Client
                      I  ??????
                     \/ 
     Server1       Server2      Server3

If i have coordinate node, client just access coordinate node IP address.
However, when 3 nodes are default, how client can access es??

Clients typically take a list of all three nodes and can connect to any/all of them. This makes the whole setup fault tolerant.

Thank you for your tip!!

I have another question.

If i want to make access point to one, i have two choices, Load Balancer and coordinate node.

In this case, what is best option?

I heard that coordinate node can be load balancer, request routing, etc.

Is the coordinate node good for access point for ES Cluster ??

Why do you need a single access point? All client libraries, as well as Beats and Logstash, supports specifying multiple node addresses. If you add a client node that will be a single point of failure, which is typically what you are trying to avoid when using a cluster. If you have more than one client node for resiliency the clients need to be able to connect to all of them, and in that case they could just as well connect directly to multiple data nodes.

1 Like

Thank you for your reply