elasticsearch安装插件

针对 Elasticsearch 9.1.3,需下载该仓库下版本为 9.1.3 的 IK 分词器 ,确保与 ES 版本完全一致。
分词器下载

一、核心匹配规则

infinilabs/analysis-ik 的版本命名严格遵循「与 Elasticsearch 版本一一对应」的原则:

  • ES 版本 → IK 分词器版本:9.1.39.1.3
  • 下载链接格式:https://github.com/infinilabs/analysis-ik/releases/download/v{ES版本}/elasticsearch-analysis-ik-{ES版本}.zip

二、在 Elasticsearch容器中安装(两种方式)

例如:elasticsearch-analysis-ik分词器下载

方式 1:在线安装(推荐,无需本地下载)
  1. 进入 ES 容器

    先通过 docker ps 查看 ES 容器的名称或 ID,再执行进入命令:

    bash 复制代码
    docker exec -it <你的ES容器ID/名称> /bin/bash

    示例:若容器 ID 为 152ebbfee746,则执行 docker exec -it 152ebbfee746 /bin/bash

  2. 执行在线安装命令

    直接使用 ES 自带的 elasticsearch-plugin 工具,从 infinilabs 仓库拉取 9.1.3 版本的 IK 分词器:

    bash 复制代码
    ./bin/elasticsearch-plugin install https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-<版本>.zip
    • 安装过程中会提示「是否信任该插件」,输入 y 确认即可。
  3. 重启 ES 容器

    安装完成后,退出容器(执行 exit),并重启容器使插件生效:

    bash 复制代码
    docker restart <你的ES容器ID/名称>
方式 2:离线安装(适用于容器无法联网的场景)
  1. 本地下载 IK 分词器包

    浏览器访问 infinilabs 的 9.1.3 版本发布页,下载压缩包:
    https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-9.1.3.zip

    下载文件名为 elasticsearch-analysis-ik-9.1.3.zip

  2. 将压缩包传入 ES 容器

    使用 docker cp 命令,将本地下载的压缩包复制到容器内的 ES 插件目录(默认插件目录为 /usr/share/elasticsearch/plugins):

    bash 复制代码
    # 格式:docker cp 本地压缩包路径 容器ID/名称:容器内目标路径
    docker cp /本地路径/elasticsearch-analysis-ik-9.1.3.zip <你的ES容器ID/名称>:/usr/share/elasticsearch/plugins/

    示例(本地文件在 ~/Downloads 目录):

    bash 复制代码
    docker cp ~/Downloads/elasticsearch-analysis-ik-9.1.3.zip 152ebbfee746:/usr/share/elasticsearch/plugins/
  3. 进入容器并解压

    再次进入容器,进入插件目录并解压压缩包:

    bash 复制代码
    # 1. 进入容器
    docker exec -it <你的ES容器ID/名称> /bin/bash
    
    # 2. 进入插件目录
    cd /usr/share/elasticsearch/plugins/
    
    # 3. 解压(若容器内无 unzip 工具,先执行 apt update && apt install -y unzip 安装)
    unzip elasticsearch-analysis-ik-9.1.3.zip
    
    # 4. 删除压缩包(可选,节省空间)
    rm -rf elasticsearch-analysis-ik-9.1.3.zip
  4. 重启 ES 容器

    退出容器后重启,确保插件加载:

    bash 复制代码
    docker restart <你的ES容器ID/名称>

三、验证安装是否成功

重启容器后,通过 Kibana Dev Tools 或 curl 测试 IK 分词器是否生效:

  1. 在 Kibana Dev Tools 执行:

    json 复制代码
    GET _analyze
    {
      "analyzer": "ik_smart",  // IK 分词器的「智能分词」模式
      "text": "在Elasticsearch 9.1.3中使用IK分词器"  // 待分词的中文文本
    }
  2. 若返回如下包含中文分词结果的响应,说明安装成功:

    json 复制代码
    {
      "tokens" : [
        {
          "token" : "在",
          "start_offset" : 0,
          "end_offset" : 1,
          "type" : "CN_CHAR",
          "position" : 0
        },
        {
          "token" : "elasticsearch",
          "start_offset" : 1,
          "end_offset" : 14,
          "type" : "ENGLISH",
          "position" : 1
        },
        {
          "token" : "9.1.3",
          "start_offset" : 15,
          "end_offset" : 19,
          "type" : "ARABIC",
          "position" : 2
        },
        {
          "token" : "中",
          "start_offset" : 19,
          "end_offset" : 20,
          "type" : "CN_CHAR",
          "position" : 3
        },
        {
          "token" : "使用",
          "start_offset" : 20,
          "end_offset" : 22,
          "type" : "CN_WORD",
          "position" : 4
        },
        {
          "token" : "ik",
          "start_offset" : 22,
          "end_offset" : 24,
          "type" : "ENGLISH",
          "position" : 5
        },
        {
          "token" : "分词器",
          "start_offset" : 24,
          "end_offset" : 27,
          "type" : "CN_WORD",
          "position" : 6
        }
      ]
    }

四、注意事项

  1. 版本必须严格一致 :若 ES 是 9.1.3,IK 分词器必须是 9.1.3,版本不匹配会导致插件加载失败(容器日志会报 version conflict 错误)。
  2. 容器权限问题 :若安装时提示「权限不足」,可在进入容器后,先执行 chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ 赋予 ES 用户插件目录的权限。
  3. 集群环境需全节点安装 :若 ES 是集群(多容器),需在所有节点容器中重复上述安装步骤,否则集群会因节点插件不一致导致异常。
相关推荐
九河云1 分钟前
数据驱动未来,华为云DWS为智能决策提速
大数据·人工智能·安全·机器学习·华为云
FONE_Platform11 分钟前
能源化工行业全面预算解决方案:重塑双碳目标下的财务新动能
大数据·人工智能
bigHead-25 分钟前
Git合并操作详解:安全高效地合并远程分支
git·安全·elasticsearch
项目整合库40 分钟前
Coinstore B.KU 数字金融与 RWA 主题活动圆满举行
大数据·金融
kekekka1 小时前
2026年软文营销平台深度甄选指南:破解选择困境,聚焦长效价值
大数据·媒体
华奥系科技1 小时前
老旧社区适老化智能改造,两个系统成社区标配项目
大数据·人工智能
Jackyzhe1 小时前
Flink源码阅读:Netty通信
大数据·flink
反向跟单策略1 小时前
期货反向跟单—高频换人能够提高跟单效率?
大数据·人工智能·学习·数据分析·区块链
Java 码农1 小时前
RabbitMQ集群部署方案及配置指南08--电商业务延迟队列定制化方案
大数据·分布式·rabbitmq
艾莉丝努力练剑2 小时前
【优选算法必刷100题:专题五】(位运算算法)第033~38题:判断字符是否唯一、丢失的数字、两整数之和、只出现一次的数字 II、消失的两个数字
java·大数据·运维·c++·人工智能·算法·位运算