1. 程式人生 > >Elasticsearch部署文件詳細

Elasticsearch部署文件詳細

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日誌如下:
    image.png

  • 發現打印出如下日誌代表啟動成功:image.png

  • 輸入:curl http://127.0.0.1:9200 列印如下資料則確認Elasticsearch啟動成功:
    image.png

叢集部署

叢集部署,在多臺服務上執行以下相同的部署步驟:

解壓安裝包

步驟同單機部署解壓步驟

修改配置檔案
  • 進入解壓後的elasticsearch-2.4.5/conf目錄
  • 使用vi命令編輯elasticsearch.yml
  • 找到Cluster節點配置,更改cluster.name值,cluster.name值相同的節點會形成一個叢集。
  • 找到Node節點配置,
    設定node.name的值為:node-主機ip,設定node.master的值為true(主要是為了區別不同的節點,這裡採用了node+主機IP標識)。設定效果如下圖:

image.png

  • 找到Network節點配置,設定network.host值為該伺服器的ip地址,效果如下圖:
    image.png

  • 找到Discovery節點配置,

    • 設定discovery.zen.ping.unicast.hosts值為:叢集中各個elasticsearch伺服器ip列表(含自身);
    • 設定discovery.zen.minimum_master_nodes值為: (elasticsearch節點個數/2) + 1。如:有5個伺服器節點,此處應該填3;特別注意:若僅部署兩個,此處值應為1。
      示例配置如下圖:

image.png

啟動Elasticsearch

步驟同單機部署

檢查Elasticsearch叢集是否正常啟動

配置並啟動完所有節點後,執行:curl -XGET http://ip:9200/_cluster/health?pretty

其中,ip為叢集中任一節點的ip介面即可,列印資料中number of nodes的值與部署的節點數量一致說明叢集部署成功,效果如下圖:

image.png

附錄

設定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。