es叢集搭建(2個節點)
可以說Elasticsearch就是為分散式而生的,網上的資料很多,但把搭建叢集介
紹的詳細的很少,這裡介紹下2個es節點組成的叢集的搭建(針對5.0及以上版本),針對一些概念性(如單播,組播等)的內容不再贅述
首先需要提醒的是:
1.兩個節點必須能ping通
2.如果已在一個節點上安裝了x-pack,那麼每個節點上都需要安裝x-pack,否則即使2個節點可以ping通,也不會成功加入到一個叢集
es節點ip:
node123: 192.168.1.123
node66: 192.168.1.66
需要更改的主要是elasticsearch.yml檔案,位於/ESHOME/config目錄下(ESHOME即es的安裝目錄)
node123需要更改的內容如下:
cluster.name: clustername #叢集名稱,預設為elasticsearch
node.name: node123 #節點名
http.port: 9200 #訪問埠,為了安全建議修改
network.host: 192.168.1.123
path.logs: #日誌的路徑
path.data: #資料的路徑
path.plugins: #外掛的路徑
discovery.zen.ping.unicast.hosts: ["192.168.1.66"] #發現新的節點的ip
node66需要更改的內容如下:
cluster.name: clustername
node.name: node66
http.port: 9200
network.host: 192.168.1.123
配置好後啟動兩個節點的es,然後進入kinana,在Dev Tools左側輸入以下命令:
GET _cluster/health
如果看到類似下面的結果則表示2節點叢集搭建成功
注:
1.一個叢集內所有節點的叢集名必須一致,即上面的clustername
2.一個叢集內不能出現2個一樣的節點名
3.如果某一個配置檔案裡的配置有縮排,則配置檔案裡所有非註釋必須有相同的縮排,要不然可能會報錯
4.path.logs,path.data,path.plugins這三個路徑建議不要設定在/ESHOME目錄下,否則當es重新安裝時可能會被覆蓋,造成資料丟失
5.發現節點的方式建議用單播的方式,即上面的方法,[]裡可以填寫多個ip,用逗號分隔,跟python裡的連結串列一樣,格式為 host:port 或者 host
6.擴容的方式建議為水平擴容(增加相同配置的伺服器),而不是垂直擴容(增加伺服器的效能)
上圖是專案某段時間內一部分日誌統計的結果,現在使用者量還不是很大,所以量並不多。o( ̄︶ ̄)o