今天遇到一個特別坑的問題,在虛擬機使用docker, 安裝完elasticSearch的集羣后,在win10下安裝kibana, 一直提示下面的錯誤。然後各種嘗試。比如
- 在虛擬機上使用docker安裝kibana(懷疑windows的kibana與docker通信問題)
- 在虛擬機上直接安裝kibana等辦法.
以上2步都沒有解決問題。
然後懷疑與集羣有關。 所以建了一個單機的elasticSearch,然後使用原來的kibana連接,發現運行正常。最後通過docker logs 查看ES集羣的報錯信息,發現原來是集羣搭建有問題。
解決辦法:
我的ec腳本是參考: https://www.cnblogs.com/ghostdot/p/12455505.html
具體ES的docker腳本如下elasticsearch.yml, 而我犯的低級錯誤是。。。
沒有改network.publish_host的IP,這裏的network.publish_host其實是你宿主機的IP。
需要總結的另一個經驗是, 在首次運行docker的時候,不要使用-d參數,否則有很多錯誤無法看到。
Elasticsearch.yml:
cluster.name: elasticsearch-cluster #集羣唯一名稱,所有節點一致 node.name: es_node1 #節點名稱 network.bind_host: 0.0.0.0 #設置可以訪問的ip,默認爲0.0.0.0,這裏全部設置通過 network.publish_host: 192.168.2.2 #設置其它結點和該結點交互的ip地址 http.port: 9200 #設置對外服務的http端口,默認爲9200 transport.tcp.port: 9300 #設置節點之間交互的tcp端口,默認是9300 http.cors.enabled: true http.cors.allow-origin: "*" node.master: true #配置該結點是否有資格被選舉爲主結點(候選主結點),爲了防止腦裂,配置奇數個候選主結點 node.data: true #配置該結點是數據結點,用於保 discovery.zen.ping.unicast.hosts: ["192.168.2.2:9300","192.168.2.2:9301","192.168.2.2:9302"] #集羣個節點IP地址 discovery.zen.minimum_master_nodes: 2 #自動發現master節點的最小數 indices.query.bool.max_clause_count: 10240 |
錯誤日誌:
log [14:10:30.821] [info][status][plugin:[email protected]] Status changed from uninitialized to green - Ready log [14:10:30.850] [info][status][plugin:[email protected]] Status changed from uninitialized to green - Ready log [14:10:32.414] [info][status][plugin:[email protected]] Status changed from uninitialized to green - Ready log [14:10:33.850] [error][status][plugin:[email protected]] Status changed from yellow to red - Service Unavailable log [14:10:33.854] [error][status][plugin:[email protected]] Status changed from yellow to red - Service Unavailable log [14:10:33.859] [error][status][plugin:[email protected]] Status changed from yellow to red - Service Unavailable log [14:10:33.863] [error][status][plugin:[email protected]] Status changed from yellow to red - Service Unavailable log [14:10:33.865] [error][status][plugin:[email protected]] Status changed from yellow to red - Service Unavailable
|