Elasticsearch5.0.1 + Kibana5.0.1 + IK 5.0.1安装记录

最近工做须要,开始研究ES,当前ES的最新版本为5.0.1,从以前的2.x的版本号一下升级到5.x,主要是以前Elastic的产品版本号由于收购等缘由很乱,ES 2.X版本的和Kibana 4.x版本的配套使用,让人感受不爽。这下一步到位,全部的产品系列版本号都从5.0开始,这样,5.0的ES就和5.0的Kibana一致了。node

本篇会记录ES5.0.1 + Kibana 5.0.1 + ik 5.0.1的安装。git

首先,去Elastic官网 https://www.elastic.co/downloads  ,下载页有全部Elastic的产品,都是最新的版本(版本号还一致)。github

 

 

下载Elasticsearch和Kibana。编程

而后去GitHub下载配套的IK分词器,Smartcn也能够,不过听说没有ik灵活,目前尚未深刻到分词,之后再试验。https://github.com/medcl/elasticsearch-analysis-ik/releases ,直接下编译好的zip包。centos

 

好了,工具有齐。统一上传到服务器上。我用的是CentOS,MAC的话,ES和IK都是同样的,Kibana注意一下就行,Kibana区分平台和32位/64位。浏览器

将三个文件放到一个文件夹中,scp到服务器安全

 

以后就开始在服务器上安装了。服务器

导航到存放安装文件目录:curl

 

所有解压,使用unzip和tar -xvzfelasticsearch

而后尝试去启动elasticsearch,到elasticsearch的bin目录下,执行./elasticseharch。

若是遇到下面的错误:

 

说明是用root帐户来启动的,由于ES是没有权限限制的,还能够接收用户的脚本,全部用root帐户很不安全,须要新建一个帐户来启动。为了让普通帐户启动的ES可以写入数据,须要将elasticsearch文件夹的操做权限付给新建的帐户(ES的索引数据就放在elasticsearch/data/下)。

建立elsearch用户组及elsearch用户
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch

-g是添加到组,-p是密码

 

更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch
cd /opt
chown -R elsearch:elsearch  elasticsearch

 

同时,须要给新建的帐户修改一下权限,ES要求的进程数和最大的内存都比原来大了。

修改vm.map 限制

vi /etc/sysctl.conf vm.max_map_count=262144

修改文件限制:

vi /etc/security/limits.conf

新建用户名 hard nofile 65536

新建用户名 soft nofile 65536

修改线程限制(这个比较特殊 centos 6.5的缘由)

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

* soft nproc 65535

* hard nproc 65535

而后用su指令切换到新建的普通用户 ,启动。若是须要后台启动的话,使用./elasticsearch -d

而后就能够在命令行中用curl http://localhost:9200?pretty  看看输出

 

此时,ES能够在本地访问,可是用浏览器远程的话,仍是没法访问的,由于相应的端口没有打开。此时须要两个步骤:

  1. iptables添加白名单,命令:vi /etc/sysconfig/iptables

而后添加以下

 

92009300ES使用,5601Kibana使用,后面会说到

Service iptables restart生效。

  2. 此时请求进来是能够的,可是ES也有配置,能够接受外部请求,进到安装目录/config/elasticsearch.yml,将network.host设置为0.0.0.0

而后重启ES。此时,远程就能够访问ES

 

接下来安装Kibana,也挺简单,解压以后,先进到安装目录/config/kibana.yml中,将server.host修改一下,不然远程没法访问,这个配置在Kibana4.6.1(对应ES2.4.0的时候还不须要配置,可是5.0.1就须要了。

 

而后kibana里面有默认的ES访问路径,若是你没有改动过ES的端口,而且Kibana跟ES部署在一块儿,就不须要改动,不然须要配置这里:

而后远程启动,看下Kibana5.0.1的样子:

 

以前ES和Kibana配合还须要使用plugin安装一些Marvel,sense等,如今都不须要了,DevTools就是以前的Sense,好用!!

 

如今开始安装ik分词器,安装以前,先说明一些变化:

  1. 以前能够在node节点上配置index默认的分词器,若是是多节点,那么在每一个节点上都配置就好了。这个有点不灵活,因此。5.0以后,ES已经再也不支持在elasticsearch.yml中配置分词器,改而在新建索引时,使用settings去配置,这个会在后面的编程中说到。
  2. 以前使用delete-by-query插件来实现type的整个删除。这个插件也是从5.0开始没有了,被整个岛ES的Core中

  3.从5.0开始ik的tokenizer发生了变化,提供了两种,一种为ik_smart,一种为ik_max_word。直接一点,ik_max_word会尽可能从输入中拆分出更多  token,而ik_smart则相反,我的感受,ik_max_word就是原来的ik,ik_smart是新加的。

 

好了,开始安装,只须要把elasticsearch-analysis-ik-5.0.1.zip解压,而后拷贝到ES安装目录下的plugins文件夹内,并把elasticsearch-analysis-ik-5.0.1文件夹名修改成ik。这样,就安装好了。正如前面说的,安装完插件,如今不须要在配置文件中配置了,须要在新建索引的时候指定分词器。

重启启动ES,能够看到以下log

 

用kibana查看一下,后续会谈到如何这样作。

 

好啦,至此,ES+Kibana+IK安装好了。从2.4.1到5.0.1版本号跨度很大,不少地方也发生了不少变化,整体来讲,更简便了。后面接着说下用JAVA API来操做ES。今天先到这里。 

相关文章
相关标签/搜索