当前位置: 首页 > news >正文

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,再执行进入命令:

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

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

  2. 执行在线安装命令
    直接使用 ES 自带的 elasticsearch-plugin 工具,从 infinilabs 仓库拉取 9.1.3 版本的 IK 分词器:

    ./bin/elasticsearch-plugin install https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-<版本>.zip
    
    • 安装过程中会提示「是否信任该插件」,输入 y 确认即可。
  3. 重启 ES 容器
    安装完成后,退出容器(执行 exit),并重启容器使插件生效:

    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):

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

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

    docker cp ~/Downloads/elasticsearch-analysis-ik-9.1.3.zip 152ebbfee746:/usr/share/elasticsearch/plugins/
    
  3. 进入容器并解压
    再次进入容器,进入插件目录并解压压缩包:

    # 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 容器
    退出容器后重启,确保插件加载:

    docker restart <你的ES容器ID/名称>
    

三、验证安装是否成功

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

  1. 在 Kibana Dev Tools 执行:
    GET _analyze
    {"analyzer": "ik_smart",  // IK 分词器的「智能分词」模式"text": "在Elasticsearch 9.1.3中使用IK分词器"  // 待分词的中文文本
    }
    
  2. 若返回如下包含中文分词结果的响应,说明安装成功:
    {"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 是集群(多容器),需在所有节点容器中重复上述安装步骤,否则集群会因节点插件不一致导致异常。
http://www.dtcms.com/a/406520.html

相关文章:

  • html5移动网站开发html5新增标签
  • 前端工程化基础知识
  • 【C#】以 BlockingCollection 为核心的多相机 YOLO 检测任务处理框架
  • (11)ASP.NET Core2.2 中的配置一(Configuration)
  • 在 C# .NETCore 中使用 MongoDB(第 1 部分):驱动程序基础知识和插入文档
  • php做图片交互网站代码网站下要加个备案号 怎么做
  • 巴中商城网站建设wordpress 图书主题
  • 一键预约上门服务:到家洗车小程序的便捷功能与场景化体验
  • 第 3 篇:让图形动起来 - WebGL 2D 变换
  • 寝室快修|基于SprinBoot+vue的贵工程寝室快修小程序(源码+数据库+文档)
  • 青秀网站建设网站海外推广平台
  • 前端基础:从0到1实现简单网页效果(二)
  • 基于LazyLLM搭建AI创意文案生成器(多场景文案自动生成)
  • 数据链路层:网络通信的基础与桥梁
  • Keepalived两个集群实验
  • vs网站开发表格大小设置网站建设要注意一些什么
  • js网站模板下载做网站和app哪个难
  • MySQL多实例管理
  • 用dpdk实现udp、tcp数据包收发,tcp协议栈相关原理
  • 3D气象数据可视化:使用前端框架实现动态天气展示
  • 学习日记19:GRAPH-BERT
  • shell编程:sed - 流编辑器(5)
  • 网站制作地点中山网站建设公司哪家好
  • 关于【机器人小脑】的快速入门介绍
  • 无线收发模块保障砂芯库桁架机器人稳定无线通信实践
  • 北京有哪些网站建设国家企业信用信息系统(全国)
  • LabVIEW 动态信号分析
  • 腾讯云容器服务
  • 怎么做网站推广电话广西网站建设哪家有
  • 实战:基于 BRPC+Etcd 打造轻量级 RPC 服务——高级特性与生产环境深度实践