問題背景:
在ELK架構中,kibana一般配置連接elasticsearch的時候,配置文件中的寫法一般如下:
……
# The URL of the Elasticsearch instance to use for all your queries. elasticsearch.url: "http://192.168.1.1:9200"
……
那么假如我的elasticsearch是一個集群模式,有多個elasticsearch節點(以下簡稱es),kibana想連多台es節點,那怎么處理呢?
到目前為止(官方目前最新版本是6.4),官方的意思是:暫不支持連接多個es節點,也就是上面的配置文件中,只能填寫一個地址。
解決辦法:
雖然格式上不支持的填寫多個es節點地址,但是官方也給出了另外一種方案:搭建一個只用來“協調”的es節點,讓這個節點加入到es集群中,然后kibana連接這個“協調”節點,這個“協調”節點,不參加主節點選舉,也不存儲數據,只是用來處理傳入的HTTP請求,並將操作重定向到集群中的其他es節點,然后收集並返回結果。這個“協調”節點本質上也起了一個負載均衡的作用。
詳見官方文檔:
https://www.elastic.co/guide/en/kibana/6.4/production.html#load-balancing
