Currently our Kibana is pointing to a single ES node( we have 3 nodes). if that single node goes down or put in maintenance kibana will not be able to do anything. So I came across this .
Install ES on same node as kibana and point kibana to it , that ES will act as LB for other nodes.
We are using elasticsearch-5.1.2 , and I am not able to find the below settings in elasticsearch.yml
3. You want this node to be neither master nor data node nor ingest node, but
to act as a "search load balancer" (fetching data from nodes,
what would be settings on elasticsearch.yml on the other 3 nodes ?
a . should we count the node running on kibana as well ?
b. should we include the node running on kibana here too discovery.zen.ping.unicast.hosts: ?
It looks like you found the right docs. Basically, you want to establish an ES coordinating-only [1] node on the same box as Kibana. That node will be able to join the cluster, but won't have any data management responsibilities. Have Kibana connect to the client node as its elasticsearch.url.
These options aren't part of the commented-out boilerplate of the elasticsearch config file, you just have to add them.
Take a look at the minimum_master_nodes setting. You effectively still have a 3 node cluster since the coordinating-only node isn't handling any shards. All the nodes should be set with
discovery.zen.minimum_master_nodes: 2
Not sure I understand the question, but the coordinating node will still show up in the _cat/nodes API and it will show in the Monitoring UI.
Yes, you should add the coordinating-only node to this array, because the node needs to be able to join the cluster.
There shouldn't be a need to, since the coordinating-only node doesn't manage any shards.
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.