elasticsearch安装插件 - 实践

elasticsearch安装插件 - 实践

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

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

ES 版本 → IK 分词器版本:9.1.3 → 9.1.3下载链接格式:https://github.com/infinilabs/analysis-ik/releases/download/v{ES版本}/elasticsearch-analysis-ik-{ES版本}.zip二、在 Elasticsearch容器中安装(两种方式)例如:elasticsearch-analysis-ik分词器下载

方式 1:在线安装(推荐,无需本地下载)进入 ES 容器 先通过 docker ps 查看 ES 容器的名称或 ID,再执行进入命令:

docker exec -it <你的ES容器ID/名称> /bin/bash 示例:若容器 ID 为 152ebbfee746,则执行 docker exec -it 152ebbfee746 /bin/bash。

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

./bin/elasticsearch-plugin install https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-<版本>.zip

安装过程中会提示「是否信任该插件」,输入 y 确认即可。重启 ES 容器 安装完成后,退出容器(执行 exit),并重启容器使插件生效:

docker restart <你的ES容器ID/名称> 方式 2:离线安装(适用于容器无法联网的场景)本地下载 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。

将压缩包传入 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/ 进入容器并解压 再次进入容器,进入插件目录并解压压缩包:

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

docker restart <你的ES容器ID/名称> 三、验证安装是否成功重启容器后,通过 Kibana Dev Tools 或 curl 测试 IK 分词器是否生效:

在 Kibana Dev Tools 执行:GET _analyze

{

"analyzer": "ik_smart", // IK 分词器的「智能分词」模式

"text": "在Elasticsearch 9.1.3中使用IK分词器" // 待分词的中文文本

} 若返回如下包含中文分词结果的响应,说明安装成功:{

"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

}

]

} 四、注意事项版本必须严格一致:若 ES 是 9.1.3,IK 分词器必须是 9.1.3,版本不匹配会导致插件加载失败(容器日志会报 version conflict 错误)。容器权限问题:若安装时提示「权限不足」,可在进入容器后,先执行 chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ 赋予 ES 用户插件目录的权限。集群环境需全节点安装:若 ES 是集群(多容器),需在所有节点容器中重复上述安装步骤,否则集群会因节点插件不一致导致异常。

相关推荐

饥荒联机版犬牙有什么用
365bet体坛即时比分

饥荒联机版犬牙有什么用

📅 11-01 👁️ 9705
2017年国内APP应用软件前100名排行榜
bt365全程担保

2017年国内APP应用软件前100名排行榜

📅 06-27 👁️ 3268
海外价格飙涨四成!中国出口管制后 这一战略小金属被疯抢
原神狼牙武器属性一览
365bet官网开户

原神狼牙武器属性一览

📅 01-09 👁️ 5646
国内正规P2P理财平台有哪些?权威推荐这5家
365bet体坛即时比分

国内正规P2P理财平台有哪些?权威推荐这5家

📅 08-15 👁️ 2669
CAD怎么旋转图形?CAD旋转命令快捷键与使用步骤
bt365全程担保

CAD怎么旋转图形?CAD旋转命令快捷键与使用步骤

📅 10-20 👁️ 7135