Elasticsearch Version
7.4.0
Java Version
from official docker image
OS Version
from official docker image
Problem Description
I have set up an Elasticsearch cluster using the official Elasticsearch image. I have configured three nodes, each with 2 CPU cores and 8 GB of RAM. I have also isolated the CPU resources for each container using Docker to avoid CPU resource conflicts.
I conducted a test using a dataset in the order of 100,000 records. Initially, I set the shards count to 1 and the replica count to 0, and the throughput was measured at 1000 requests per second (r/s). However, when I increased the replica count to 2, the throughput significantly decreased to 300 r/s. I also tried to set the shard count to 3 and the replica count to 1, but the throughput still experienced a significant drop.
I attempted to increase the number of CPU cores per node to 4, but performance did not improve. How can I sustainably enhance the performance of my Elasticsearch cluster, such as by increasing the number of nodes and configuring the appropriate shard and replica settings, for easier maintenance in the future?