ubuntu16下Elasticsearch5.1.1安裝部署

本人在安裝es5.1.1版本時候整理的一些過程,參照了網上部分過程;其中過程當中也出現一些其它問題,出現的問題和解決方案都整理在此文中。node

1Elasticsearch5.1.1安裝

到ES官網https://www.elastic.co/downloads下載ES安裝包,Linux系統下載tar格式版本。咱們目前使用的ES版本是5.1.1,須要JDK8才能啓動,如沒有JDK8環境linux

請自行下載配置(ubuntu下配置JDK環境變量: sudo vi ~/.bashrc)。git

 

ES5.1.1須要進行一些環境配置github

設置內核參數web

vi /etc/sysctl.confnpm

# 增長下面的內容json

fs.file-max=65536ubuntu

vm.max_map_count=262144瀏覽器

 

設置資源參數bash

vi /etc/security/limits.conf

# 修改

* soft nofile 32768

* hard nofile 65536

 

修改進程數

ulimit -u 2048

修改ES系統配置

vi config/elasticsearch.yml

增長下面內容

  • cluster.name: bropen #集羣名稱
  • node.name: bropen #節點名稱
  • network.bind_host: 0.0.0.0 #設置綁定的ip地址      
  • network.publish_host: 0.0.0.0 #設置其它節點和該節點交互的ip地址
  • network.host: 0.0.0.0 #用來同時設置bind_host和publish_host參數
  • http.cors.enabled: true #新參數,這樣head插件就能夠訪問ES
  • http.cors.allow-origin: "*" #新參數,這樣head插件就能夠訪問ES
  • transport.tcp.port: 9300 端口

和2xx版本比較須要註釋掉的參數,不然ES沒法正常啓動

  • #script.inline: true       
  • #script.indexed: true      
  • #script.ingest: true

ES 5xx版本和2xx版本不一樣,不須要安裝插件delete by query

 

2 head插件的安裝

爲了方便管理ES能夠安裝elasticsearch-head插件,一個瀏覽器管理es的插件,若是出現問題,方便es維護人員經過瀏覽器進行維護,固然開發者也能夠不安裝此插件。

和ES 2xx版本不一樣,ES 5xx版本後的elasticsearch-head插件是獨立運行的。

2.1下載head插件

去github下載elasticsearch-head插件(https://github.com/mobz/elasticsearch-head),若是安裝有git,也可使用命令 :git clone git://github.com/mobz/elasticsearch-head.git

2.2 安裝node

因爲head插件本質上仍是一個nodejs的工程,所以須要安裝node,使用npm來安裝依賴的包。(npm能夠理解爲maven)去官網下載nodejs,https://nodejs.org/en/download/

使用命令tar -xvf node*.tar.xz解壓縮node

若是linux系統不識別xz格式則須要安裝xz。使用命令yum -y install xz

而後執行xz -d node*.tar.xz

tar -xvf node*.tar

Node解壓完成後使用mv命令移到要放置的目錄下

 

配置環境變量(ubuntu下使用命令: sudo vi ~/.bashrc)

增長下面內容

  • export NODE_HOME=/usr/lib/nodejs/node-v6.9.1-linux-x64
  • export PATH=$PATH:$NODE_HOME/bin

執行source /etc/profile 從新生效環境變量

此時能夠驗證node是否安裝成功

bropen@v230:/$ node -v

v6.9.1

bropen@v230:/$ npm -v

3.10.8

 

2.3 安裝grunt

grunt是一個很方便的構建工具,能夠進行打包壓縮、測試、執行等等的工做,5.0裏的head插件就是經過grunt啓動的。所以須要安裝一下grunt。

在head插件目錄下執行命令npm install -g grunt-cli

  • 若是報找不到package.json的錯誤,則檢查當前是否在head插件目錄下。

檢查是否安裝成功

bropen@v230:/$ grunt -version

grunt-cli v1.2.0

 

配置環境變量

  • 修改head/Gruntfile.js文件

connect: {

    server: {

        options: {

            port: 9100,

            hostname: '*',

            base: '.',

            keepalive: true

        }

    }

}

增長hostname: '*'

  • 修改head/_site/app.js文件中head的連接地址,將localhost轉化成head的服務器地址

this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";

this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.1168.0.230:9200";

2.4 運行head

在head插件目錄下執行npm install命令,下載所須要的包。

最後啓動head插件,執行grunt server

bropen@v230:~/workspace-ggts/search/elasticsearch-head$ grunt server

Running "connect:server" (connect) task

Waiting forever...

Started connect web server on http://localhost:9100

 

與ES 2xx版本的head插件不一樣,新版本的head插件單獨啓動,且只須要在瀏覽器端輸入

http://localhost:9100就能訪問

3 IK分詞器的安裝

咱們目前使用的ES是 5.1.1版本,因此須要下載對應的5.1.1版本的IK分詞器。

下載地址:https://github.com/medcl/elasticsearch-analysis-ik/releases 找到對應版本的分詞器,點擊zip壓縮包連接進行下載。

下載好的壓縮包,直接解壓到ES的plugins目錄下既可以使用,從新啓動ES,若是解壓正確,則不會有異常輸出。

注意:

  • 最好不要使用clone命令進行下載,不然下載的是源碼,須要本身打包。
  • 若是用clone命令下載了源碼,則須要安裝maven進行打包,執行maven package命令。
相關文章
相關標籤/搜索