天天看點

ES(二)ES安裝及叢集的搭建

ES安裝

安裝步驟

準備安裝包https://www.elastic.co/downloads/elasticsearch

解壓安裝包tar -xvf elasticsearch-5.5.2.tar.gz

安裝完成

建立一個es使用者(es不能使用root運作)

groupadd es

useradd es -g es -p es

chown -R es:es /home/software/es/elasticsearch-5.5.2/ (是這個使用者擁有es安裝目錄的權限)

切換到es使用者:su es

切換到bin目錄下執行 ./elasticsearch 啟動es

ES(二)ES安裝及叢集的搭建

出現started字樣代表啟動成功

啟動可能報的錯及解決方案

  1. 記憶體不足

    修改config下的jvm.option

    -Xms512m

    -Xmx512m

  2. 出現異常 unable to install syscall filter

    需要在配置檔案中修改 elasticsearch.yml

    修改42行 bootstrap.memory_lock: false

    添加 bootstrap.system_call_filter: false

  3. 啟動線程不足的問題

    Vi /etc/security/limits.d/90-nproc.conf

    修改1024為2048

  4. 最大虛拟記憶體的大小

    Vi /etc/sysctl.conf 添加vm.max_map_count=655360

    執行sysctl -p 添加新值

一般修改以上就可以成功啟動es,如果還是啟動失敗可以重新開機機器試試。

安裝視圖插件head

準備:

elasticsearch-head-master.zip

node-v6.11.4-linux-x64.tar.xz(head插件是基于node開發的)

安裝:

安裝node

安裝node:tar -xvf node-v6.11.4-linux-x64.tar.xz

進入根目錄下的bin目錄,執行npm指令

還需要配置一下環境變量

vi /etc/profile 
export NODE_HOME=/home/software/node-v6.11.4-linux-x64
Export PATH $NODE_HOME/bin
儲存退出
source /etc/profile  使配置生效
           

Npm install -g grunt-cli

驗證是否成功:

node -v

npm -v

grunt -version

安裝head插件

yum install -y zip unzip

unzip elasticsearch-head-master.zip

修改es的配置檔案,添加如下内容

http.cors.enabled: true

http.cors.allow-origin: “*” //開啟http對外服務,讓head插件能夠通路es叢集

":"後面要有空格

修改head的配置檔案

找到Gruntfile.js 中的contect屬性,修改hostname為目前節點的ip

進入head目錄,啟動服務

Grunt server

啟動後可以使用ip:9100進行通路,我的是192.168.168.101:9100

ES(二)ES安裝及叢集的搭建

ES叢集的搭建

修改配置檔案elasticsearch.yml
17 cluster.name: elasticsearch   叢集内的每台機器一樣
23 node.name: node-1   每個節點名字不一樣
43 bootstrap.memory_lock: false
44 bootstrap.system_call_filter: false 
56 network.host: 192.168.168.101    ip每個節點不一樣
60 http.port: 9200
73 discovery.zen.minimum_master_nodes: 1   叢集中最小的master數
69 discovery.zen.ping.unicast.hosts: [" 192.168.168.101", " 192.168.168.102"]    發現節點
90 http.cors.enabled: true
91 http.cors.allow-origin: "*"
           

另外準備兩台機器,将整個es安裝目錄拷貝過去

修改配置檔案中的node.name,host,即可

分别啟動每一台機器的es,會自動發現

ES(二)ES安裝及叢集的搭建

如果是直接複制過來的,需要删除掉es目錄下的logs目錄和data目錄,不然可能起不來

不進步就是退步,加油!!

個人微信公衆号【碼農峰】,每天推送最新行業資訊,每周推送原創技術文章,歡迎關注。

繼續閱讀