***關於Elasticsearch(單機版)的下載、安裝、基本配置、啓動、測試等,請參考另外一篇文章:***CentOS安裝Elasticsearchnode
搭建集羣只需在此基礎上增長一些配置,本文也主要介紹這些和集羣相關的配置,其餘步驟再也不贅述shell
假設節點數爲3,ip分別爲:10.20.1.52,10.20.1.53,10.20.1.54
vim
shell> cd /usr/local/elasticsearch-5.6.4/config shell> vim elasticsearch.yml 複製代碼
編輯如下內容:瀏覽器
# # ---------------------------------- Cluster ----------------------------------- # # 集羣名稱,默認:elasticsearch;若是當前網絡環境中只有這一個集羣,能夠不配置(建議配置個更有意義的名字) cluster.name: test # # ------------------------------------ Node ------------------------------------ # # 當前節點名稱,這裏3臺機器分別設置的是:node-1,node-2,node3 node.name: node-1 # 指定該節點是否有資格被選舉成爲node,默認:true;es默認集羣中的第一臺機器爲master,若是這臺機掛了就會從新選舉master node.master: true # 指定該節點是否存儲索引數據,默認:true node.data: true # # ----------------------------------- Paths ------------------------------------ # 「單機版」已經介紹過的「基礎配置」 path.data: /usr/local/elasticsearch-5.6.4/data path.logs: /usr/local/elasticsearch-5.6.4/logs # # ---------------------------------- Network ----------------------------------- # 「單機版」已經介紹過的「基礎配置」 # 3臺機器分別設置爲本身的ip:10.20.1.52,10.20.1.53,10.20.1.54 network.host: 10.20.1.52 # # --------------------------------- Discovery ---------------------------------- # 集羣中master節點的初始列表,若是不是使用默認的9300端口(節點之間默認使用9300端口通信) # 在後面加上端口號["10.20.1.52", "10.20.1.53:9203","10.20.1.54:9204"] discovery.zen.ping.unicast.hosts: ["10.20.1.52", "10.20.1.53","10.20.1.54"] # 防止」腦裂」(簡單說就是被分紅了兩個獨立的集羣),一般設置成(master_eligible_nodes / 2) + 1 # 好比這裏3臺機器均可以成爲master,就是(3 / 2) + 1 = 2 discovery.zen.minimum_master_nodes: 2 複製代碼
分別啓動3個節點,測試該集羣bash
查看索引列表,初始應該都爲空(沒有建立任何索引)markdown
GET /_cat/indices?v&pretty
複製代碼
在其中一臺機器(10.20.1.52)建立索引customer
網絡
PUT /customer?pretty
複製代碼
其餘機器(10.20.1.54)查看索引,能夠看到,數據是「同步「的elasticsearch
GET /_cat/indices?v&pretty
複製代碼