github下载地址:ik分词器github下载地址

一. 环境准备

Elasticsearch 要使用 ik,就要先构建 ik 的 jar包,这里要用到 maven 包管理工具,而 maven 需要java 环境,而 Elasticsearch 内置了jdk, 所以可以将JAVA_HOME设置为Elasticsearch 内置的jdk。

1.1 设置JAVA_HOME

如果已经配置了Java环境此步省略,如果没有配置,可使用其自带的jdk。

  1. vim /etc/profile
  2. # 在profile文件末尾添加
  3. #java environment
  4. export JAVA_HOME=/usr/local/elasticsearch/elasticsearch-7.9.2/jdk
  5. export PATH=$PATH:${JAVA_HOME}/bin
  6. # 保存退出后,重新加载profile
  7. source /etc/profile

1.2 maven安装

下载maven:

  1. wget http://mirror.cc.columbia.edu/pub/software/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

解压:

  1. tar xzf apache-maven-3.6.3-bin.tar.gz

设置软连接(类似于Windows的快捷方式):

  1. ln -s apache-maven-3.6.3 maven

设置path:

  1. vim /etc/profile.d/maven.sh
  2. #将下面的内容复制到文件
  3. export MAVEN_HOME=/usr/local/maven
  4. export PATH=${MAVEN_HOME}/bin:${PATH}
  5. #设置好Maven的路径之后,需要运行下面的命令使其生效
  6. source /etc/profile.d/maven.sh

验证maven是否安装成功:

  1. mvn -v

二. 安装IK分词器

github下载:https://github.com/medcl/elasticsearch-analysis-ik/

2.1 下载IK

wget https://github.com/medcl/elasticsearch-analysis-ik/archive/v7.10.2.zip

2.2 解压

由于这里是zip包,不是gz包,需要使用unzip进行解压,如果没有安装先安装unzip。
yum install zip
yum install unzip
最后解压:unzip v7.10.2.zip

2.3 打包

进入解压后的目录,执行 mvn package进行打包。第一次需要下载很多文件或插件,时间比较长。

2.4 jar包移动

package执行完毕之后,会在当前目录下生成target/releases目录,将其中的.zip文件拷贝到elasticsearch目录下的新建的目录,plugins/analysis-ik,并解压。

2.5 拷贝词典

将elasticsearch-analysis-ik-7.10.2文件夹下的config目录中的所有文件拷贝到elasticsearch的config目录。切记要重启elasticsearch。

三. 出现的问题

版本号的问题:Plugin [analysis-ik] was built for Elasticsearch version 6.5.0 but version 6.7.1 is running
问题原因:ES 版本和 ik分词器版本不一致。
解决办法:修改ES安装目录中的plugins目录下的analysis-ik文件夹里面的plugin-descriptor.properties 文件中的elasticsearch.version=你的ES版本号