ES的分词器安装(拼音)

72 阅读2分钟

版本说明编写人时间
v1.0文档创建xxx2022年8月9日



一、准备

  1. ES版本7.6.2

  2. 拼音分词器版本7.6.2

  3. 本次操作使用 ansible方式批量操作

  4. 本次使用的用例

# ansible的hosts文件
172.21.45.187
172.21.45.188
172.21.45.191

172.25.178.226
172.25.178.227
172.25.178.228

172.21.40.226
172.21.40.236
172.21.40.244


# 以上的hosts文件中是三组es集群。



二、操作

  1. 下载分词器包(本次以zip为准)

下载链接如下补充

  1. 检查ES集群上装了哪些插件

# 检查es集群安装的插件
curl http://172.21.45.187:9200/_cat/plugins?v
curl http://172.25.178.226:9200/_cat/plugins?v
curl http://172.25.178.226:9200/_cat/plugins?v

3. ## 将包传递到目标es主机上

# 将分词插件包批量上传到 ES主机的 /data 下
ansible -i hosts all -m copy -a "src=/root/es/es_install/elasticsearch-analysis-pinyin-7.6.2.zip dest=/data/elasticsearch-analysis-pinyin-7.6.2.zip"

4. ## 安装分词器

# 
ansible -i hosts all -m shell -a "/usr/share/elasticsearch/bin/elasticsearch-plugin  install file:///data/elasticsearch-analysis-pinyin-7.6.2.zip"

5. ## 重启ES服务后生效

# 检查ES服务状态
ansible -i hosts all -m shell -a "systemctl status elasticsearch"

# 重启ES服务 (不建议使用ansible操作,最好是一台一台的节点重启)
ansible -i hosts all -m shell -a "systemctl restart elasticsearch"

# 设置ES服务的开机自启
ansible -i hosts all -m shell -a "systemctl enable elasticsearch"

6. ## 检查插件


curl http://172.21.45.187:9200/_cat/plugins?v
curl http://172.25.178.226:9200/_cat/plugins?v
curl http://172.25.178.226:9200/_cat/plugins?v

说明:

截图中显示:拼音分词插件安装完成

  1. 完成




三、注意

  1. 拼音分词器下载:

github.com/medcl/elast…

  1. es版本与分词器版本需要保持一致

ES为7.6.2,分词器版本必须为7.6.2

  1. es拼音分词介绍

cloud.tencent.com/developer/a…

  1. 同义词信息配置

# 同义词
/etc/elasticsearch/analysis/synonym.txt


ansible -i hosts all -m shell -a "ls -l /etc/elasticsearch/analysis*"

ansible -i hosts all -m shell -a "mkdir -p /etc/elasticsearch/analysis"
ansible -i hosts all -m copy -a "src=./synonym.txt dest=/etc/elasticsearch/analysis/synonym.txt"

ansible -i hosts all -m shell -a "chmod /etc/elasticsearch/analysis"

# ###
# 同义词的配置信息需要开发提供
# ###
# 同义词所在路径如下:
/etc/elasticsearch/analysis/synonym.txt

# 同义词文件名为
synonym.txt

# 开发提供的同义词文件synonym.txt配置如下 
番茄, 西红柿
马铃薯, 土豆

# 同义词文件配置完成后,需要重启es服务
systemctl restart elasticsearch

参考:

#同义词官方文档

www.elastic.co/guide/en/el…

#分词器

www.elastic.co/guide/en/el…