Elasticsearch cluster performance

Hi everyone,

I am using Elasticsearch 7.10.2 version on EKS and I have some questions about the Elasticsearch cluster performance.

Assuming that the total amount of cluster resources is the same in both cases, which is better: a cluster with fewer nodes and pods with more resources or a cluster with more nodes and pods with fewer resources?
Let's consider the following example to explain it in detail:

Option 1. 3 Elasticsearch node cluster - Total resources: 30 CPU| 30GB ram | 15GB heap
Every pod will have the following resources: 10 CPU | 10GB ram | 5GB heap

Option 2. 5 Elasticsearch node cluster - Total resources: 30 CPU| 30GB ram | 15GB heap
Every pod will have the following resources: 6 CPU | 6GB ram | 3GB heap

The Elasticsearch's heap size will not exceed 32GB in any case.

Also, the number of primary shards in each index will match the number of nodes in the cluster to try to maximize the use of resources while writing or searching (no replicas will be set). Suppose that we have a rotation policy (ILM) that already takes into account the desired size for the indices.

Regarding the Elasticsearch performance, which option would be the best or what benefits can we expect from one option over the other?

Any assistance will be greatly appreciated.
Best regards.

My guess would go for Option1 as a node will have more power and more HEAP.

I'd upgrade to 7.15.1.

2 Likes

There might not be much of a difference although if I had to guess I'd go for fewer larger nodes: there's a certain amount of overhead per node so fewer of them would be better. But really you can't be sure without trying both and running some benchmarks with a realistic workload.

2 Likes

Thanks @dadoonet and @DavidTurner for the assistance! I really appreciate your help.

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