I raised this question on stackoverflow. Would you be able to help answer this?
The Elasticsearch documentation recommends using multi-core processors for Elasticsearch nodes but doesn't recommend the number of CPU cores required for peak performance of indexing and searches. Based on the answer to the (question on maxing out CPUs in Elasticsearch)[https://stackoverflow.com/questions/33611302/how-to-max-out-cpu-cores-on-elasticsearch-cluster] during a search on elasticsearch, each shard of an index would utilize one CPU thread during searches.
If I were to deploy Elasticsearch with the following architecture:
- 3 Master only nodes
- 3 Search load-balancer nodes
- 3 or more Data nodes with number_of_replicas = 2 and number_of_shards = 8 for each index hosted on these nodes
- Does the Search Load-balancer nodes need 1 CPU per shard like the Data nodes to process the searches on the indexes or can it process the searches efficiently with a lower CPU count of 2 or 4?
- Does the Master node need 1 CPU per shard to process the ingest traffic or would this be an inefficient design?