3

我想尝试支持波兰语的 Elasticsearch,但我遇到了一些问题。我安装了Stempel Analysis Plugin,我正在尝试创建一个使用波兰分析器的索引:

curl -XPUT localhost:9200/polisz -d '{ 
 "mappings" : {
  "_default_" : {
   "properties" : {
    "text_entry" : { "type": "string", "analyzer": "polish" }
   }
  }
 }
}
'

但我收到关于无法识别分析器的错误:

{
   "status" : 400,
   "error" : "MapperParsingException[mapping [_default_]]; nested: MapperParsingException[Analyzer [polish] not found for field [text_entry]]; "
}

安装插件并重启 ES 后我应该做些什么吗?我找不到任何关于使用插件的具体说明,所以也许我只是在做一些明显错误的事情?

有关如何设置环境的更多详细信息:我使用 ES 和 kibana 通过命令安装并运行 docker 映像:

docker pull minimum2scp/es-kibana
docker run -d -p 8080:80 -p 9200:9200 --name es minimum2scp/es-kibana

我通过命令安装了 Stempel 插件:

host$ docker exec -it es bash
root@docker-es:/# /usr/share/elasticsearch/bin/plugin install elasticsearch/elasticsearch-analysis-stempel/2.4.2

然后我重启了elasticsearch,通过:root@docker-es:/# service elasticsearch restart

我将不胜感激任何帮助!克日什托夫

4

1 回答 1

5

好,我知道了。看来我的插件没有正确安装。即使那个插件安装命令没有返回任何错误,也没有弹性搜索重启命令, Elasticsearch(我不记得,但低于 4.10.2)和插件(4.10.3)中存在Lucene 版本不匹配。

查看 elasticsearch.log 文件就足够了……我的错。

但还有更多:我切换到最流行的(按星级)elasticsearch docker 镜像,即:dockerfile/elasticsearch。它具有基于 Lucene 4.10.2 的 ES 版本 1.4.2,仍然与插件 Lucene 4.10.3 不匹配。即使插件的作者声明它在 2.4.2(当前稳定)中支持 1.4 ES 版本,也会导致错误。为将来的网络搜索问题引用错误:

[2015-02-13 10:57:11,850][INFO ][node                     ] [Necromantra] version[1.4.2], pid[1], build[927caff/2014-12-16T14:11:12Z]
[2015-02-13 10:57:11,851][INFO ][node                     ] [Necromantra] initializing ...                                                       
[2015-02-13 10:57:11,884][ERROR][plugins                  ] [Necromantra] cannot start plugin due to incorrect Lucene version: plugin [4.10.3], node [4.10.2].
[2015-02-13 10:57:11,884][WARN ][plugins                  ] [Necromantra] failed to load plugin from [jar:file:/data/plugins/analysis-stempel/elasticsearch-analysi
s-stempel-2.4.2.jar!/es-plugin.properties]

现在我选择了将插件降级到 2.4.1 的路径,这与我的 ES 1.4.2 一致。虽然从长远来看,我会寻找具有 1.4.3 ES 的 docker 映像,希望它也能升级 Lucene 版本。

Dadoonet,感谢您仔细研究我的问题。

于 2015-02-13T15:30:56.187 回答