I am setting up elasticsearch cluster on k8s using eck operator. we all know that service gets created ( clustername-es-http ) with all the backend endpoints as nodes(master,node etc etc). this behavior is default. However we can change this by routing traffic only to coordinating node which in turn forwards/loadbalances request to other backend nodes. So 2 approaches.
Approach 1: elasticsearch service -> all backend nodes
Approach 2: elasticsearch service -> coordinating node -> backed nodes
what is the benefit of going with 2 approach, as load balancing is already happening in approach-1?
are there any other benefits of going with approach-2?
If approach-2 has more benefits can I apply the same to kibana as well?
Approach 2 (dedicated service for coordinating-only nodes) has the advantage of not routing requests to dedicated master nodes, for examples, and not overload them with user-facing requests.
Of course you need a minimum amount of coordinating-only nods to route requests efficiently. If you have a single coordinating-only node then your cluster availability and performance may depend on that single Pod.
If approach-2 has more benefits can I apply the same to kibana as well?
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.