Elasticsearch部署文件詳細
阿新 • • 發佈:2018-12-26
Elasticsearch部署文件詳細
Elasticsearch部署
以下步驟均按照2.4.5版本講解,請現從官網下載安裝包
- 設定伺服器Swap優化:
- 開啟
/etc/sysctl.conf
檔案,在檔案最後新增配置vm.swappiness = 1
,並儲存。 - 重啟伺服器
- 執行命令:
sysctl -q vm.swappiness
檢視值是vm.swappiness = 1
則配置正確。
- 開啟
- Elasticsearch啟動需要es使用者,若無es使用者,新建es使用者,執行命令:
adduser es
切換到es使用者下執行下列操作。
單機部署
解壓安裝包
- 通過命令
tar –xvf elasticsearch-2.4.5.tar.gz
將安裝包解壓到指定目錄下。
啟動Elasticsearch
- 進入解壓後的
elasticsearch-2.4.5/bin
目錄。 - 執行命令:
./elasticsearch –d
檢查Elasticsearch是否正常啟動
-
進入
elasticsearch-2.4.5/logs
目錄下,輸入命令:tail -fn 100 elasticsearch.log
檢視elasticsearch.log日誌如下:
-
發現打印出如下日誌代表啟動成功:
-
輸入:
curl http://127.0.0.1:9200
列印如下資料則確認Elasticsearch啟動成功:
叢集部署
叢集部署,在多臺服務上執行以下相同的部署步驟:
解壓安裝包
步驟同單機部署解壓步驟
修改配置檔案
- 進入解壓後的elasticsearch-2.4.5/conf目錄
- 使用vi命令編輯elasticsearch.yml
- 找到Cluster節點配置,更改
cluster.name
值,cluster.name
值相同的節點會形成一個叢集。 - 找到Node節點配置,
設定node.name的值為:node-主機ip
,設定node.master
的值為true
(主要是為了區別不同的節點,這裡採用了node+主機IP標識)。設定效果如下圖:
-
找到Network節點配置,設定network.host值為該伺服器的ip地址,效果如下圖:
-
找到Discovery節點配置,
- 設定
discovery.zen.ping.unicast.hosts
值為:叢集中各個elasticsearch伺服器ip列表(含自身); - 設定
discovery.zen.minimum_master_nodes
值為: (elasticsearch節點個數/2) + 1。如:有5個伺服器節點,此處應該填3;特別注意:若僅部署兩個,此處值應為1。
示例配置如下圖:
- 設定
啟動Elasticsearch
步驟同單機部署
檢查Elasticsearch叢集是否正常啟動
配置並啟動完所有節點後,執行:curl -XGET http://ip:9200/_cluster/health?pretty
其中,ip為叢集中任一節點的ip介面即可,列印資料中number of nodes
的值與部署的節點數量一致說明叢集部署成功,效果如下圖:
附錄
設定JVM記憶體大小
Elasticsearch預設最大記憶體為1g,如果現場需要更大的記憶體空間可以按照下列操作步驟進行配置:
- 使用root角色,開啟/etc/profile檔案。
- 在檔案最底部新增
ES_HEAP_SIZE
環境變數並儲存,其值為要分配的記憶體大小(不要超過32g),附加行如下所示:
export ES_HEAP_SIZE=2g
- 切換到es使用者,重啟Elasticsearch。
設定es使用者最大開啟檔案數
非root使用者預設最大開啟檔案數為1024,如果現場需要設定該值可以按照下列操作步驟進行配置:
- 使用root角色,開啟
/etc/security/limits.conf
檔案。 - 在檔案最底部新增行如下:
es hard nofile 65535
es soft nofile 65535
其中,es為執行Elasticsearch的使用者,65535為允許開啟的最大檔案數(現場可以根據情況進行配置)。
- 儲存,換到es使用者重啟Elasticsearch。
設定es使用者最大程序數
如果現場需要設定es使用者最大程序數,可以按照下列操作步驟進行配置:
- 使用root角色,開啟/etc/security/limits.conf檔案。
- 在檔案最底部新增行如下:
es hard nproc 65535
es soft nproc 65535
其中,es為執行Elasticsearch的使用者,65535為es使用的最大程序數 (現場可以根據情況進行配置)。
- 儲存,換到es使用者重啟Elasticsearch。