A. ES集群搭建
一、集群搭建
1.前置操作
若克隆已有的es虛擬機,一定要清空一下文件:
2.配置集群,修改elasticsearch.yml
# 配置集群名稱,保證每個節點的名稱相同,如此就能都處於一個集群之內了
cluster.name: imooc-es-cluster
# 每一個節點的名稱,必須不一樣
node.name: es-node1
# http埠(使用默認即可)
http.port: 9200
# 主節點,作用主要是用於來管理整個集群,負責創建或刪除索引,管理其他非master節點(相當於企業老總)
node.master: true
# 數據節點,用於對文檔數據的增刪改查
node.data: true
# 集群列表(列出所有的其它伺服器ip)
discovery.seed_hosts: ["192.168.1.184", "192.168.1.185", "192.168.1.186"]
# 啟動的時候使用一個master節點
cluster.initial_master_nodes: ["es-node1"]
3.可查看剔除注釋的配置文件內容
more elasticsearch.yml | grep ^[^#]
4.分別啟動各個節點,後查看信息
二、集群腦裂
1.集群腦裂
如果發生網路中斷或者伺服器宕機,那麼集群會有可能被劃分為兩個部分,各自有自己的master管理,那麼這就是腦裂
伺服器1原為master,宕機後自己投票為master
2.解決方案
解決實現原理:半數以上的節點同意選舉,節點方可成為master
discovery.zen.minimum_master_nodes=(N/2)+1;
N為集群中master節點的數量,也就是node.master=true服務節點總數
3.ES7之後無此參數,已交由es自己管理