elasticsearch 6.x 叢集佈署與head、Kibana和IK分詞外掛的配置
首先準備三臺linux伺服器,在三臺伺服器上安裝ElasticSearch.6.3,及其head、Kibana和IK分詞外掛,外掛只需安裝在其中一臺即可。elasticsearch 6.x以後變化有點的,head和Kibana,不能放在elasticsearch的 plugins、modules 目錄下
也不能直接使用使用 elasticsearch-plugin install安裝了。
第一步,首先調整linux系統的相關引數設定
1、修改最大檔案數和鎖記憶體限制,開啟檔案 /etc/security/limits.conf 增加或修改如下的四個選項(es代表啟動elasticsearch叢集的使用者)
es soft nofile 262144
es hard nofile 262144
es soft memlock unlimited
es hard memlock unlimited
2、更改linux一個程序能擁有的最多的記憶體區域要求,新增或修改如下(swappiness禁用交換區) /etc/sysctl.conf,修改完後,執行 sysctl -p
vm.max_map_count = 262144
vm.swappiness = 1
3、修改使用者最大執行緒數 /etc/security/limits.d/90-nproc.conf
* soft nproc unlimited
root soft nproc unlimited
第二步,建立一個新的使用者,因為elasticsearch不支援root使用者啟動,例如建立的使用者叫es,對命令不熟的自己查下,非常簡單,
第三步,安裝java8.3以上版本,其實安裝最新版就可以了,這一步不再講解,不會裝的網上資料多得是
第四步,下載https://www.elastic.co/downloads/elasticsearch 並解壓,進入到解壓目錄,/opt/elasticsearch/elasticsearch-6.3.1,需要配置的檔案在config下面,有兩個jvm.options 和elasticsearch.yml
1、修改jvm.options,主要修改下-Xms4g 和 -Xmx4g 這兩個引數就可以了,這個檔案就是jvm的配置。
2、修改elasticsearch.yml ,修改後的配置如下,最主要的就是cluster.name引數,各臺機器要設定一樣,其它的引數自己支官網慢慢看。
#各臺必須設定成一樣,elasticsearch就是靠這個來識別叢集的
cluster.name: es
#每個節點起一個名字,也可以不設定,採用預設
node.name: es1
transport.tcp.port: 9300
http.port: 9200
#下面兩行就是對應的資料和日誌的目錄,最好提前建好
path.data: /opt/elasticsearch/data
path.logs: /opt/elasticsearch/logs
node.master: true
node.data: true
http.enabled: true
bootstrap.mlockall: true
discovery.zen.ping.unicast.hosts: ["10.202.259.2","10.202.259.3","10.202.259.4"]
discovery.zen.minimum_master_nodes: 1
http.cors.enabled: true
http.cors.allow-origin: "*"
#以下centos6需設為false,因為Centos6不支援SecComp
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
第五步,啟動叢集,直接 ./bin/elasticsearch
第六步,安裝head外掛
1、安裝nodejs
1)、官網下載連結:https://nodejs.org/en/download/ 這裡下載的是node-v8.11.3-linux-x64.tar.xz,
2)、解壓 tar -xvf node-v8.11.3-linux-x64.tar.xz
3)、設定環境變理,vi /etc/profile,增加或修改如下兩行
export NODEJS_HOME=/opt/nodejs/node-v8.11.3-linux-x64
export PATH=$PATH:$NODEJS_HOME/bin
2、安裝grunt,grunt是一個方便的構建工具,可以用來打包壓縮、測試、執行等等的工作,確認目前在elasticsearch-head-master 目錄下
1)、執行 npm install -g grunt-cli ,如查安裝不成功,把映象換成國內的,執行
npm install -g grunt-cli –registry=https://registry.npm.taobao.org
2)、然後執行,npm install –registry=https://registry.npm.taobao.org
如查出現error [email protected] install: node install.js
錯誤,執下如下命令後,
npm install [email protected] –ignore-scripts
3)、最後執行 grunt server (npm run start & 後臺執行)
4)、現在可以開啟http://192.168.10.173:9100/
head安裝成功
第七步,安裝kibana
1、到官網下載 https://www.elastic.co/cn/downloads/kibana 版本要和es版本相同。這裡下載的是 kibana-6.3.1-linux-x86_64.tar.gz,
2、解壓 tar -xzvf kibana-6.3.1-linux-x86_64.tar.gz ,cd kibana-6.3.1-linux-x86_64
3、配置,config/kibana.yml 裡面有很多引數自己慢慢研究
elasticsearch.url: "http://192.168.10.173:9200" # kibana監控哪臺es機器
server.host: "192.168.10.173" # kibana執行在哪臺機器
4、執行,.nohup ./bin/kibana &
第八步,配置ik分詞,
1、到https://github.com/medcl/elasticsearch-analysis-ik/releases 下載對應的檔案,這裡是elasticsearch-analysis-ik-6.3.1.zip
2、在plugins檔案件新建目錄,mkdir analysis-ik,把elasticsearch-analysis-ik-6.3.1.zip複製到這個目錄下,解壓,
unzip elasticsearch-analysis-ik-6.3.1.zip,然後刪除elasticsearch-analysis-ik-6.3.1.zip這個原始檔案,
3、開啟elasticsearch-6.3.1/config下的jvm.options,在最後面加上一行:
-Djava.security.policy=/opt/elasticsearch/elasticsearch-6.3.1/plugins/analysis-ik/plugin-security.policy
儲存,重啟elasticsearch即可