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命令。
相关文章
相关标签/搜索