2013-11-15 53 views
3

我为弹性搜索开发了几个插件,这些插件可能需要(或多或少)频繁更新。 我的一个简单问题是:是否有更新elasticsearch插件的方法,而无需删除旧版本,删除相关索引,安装新版本并从头重建索引?弹性搜索插件的更新

在此先感谢。

回答

4

没有办法更新现有的插件。您需要删除旧版本并安装新版本。

虽然我没有得到关于指数的问题。插件不一定是针对数据的,它可以只是一个网站插件,一个查询解析器等。如果一个插件对索引有效并且你想升级它,但是elasticsearch版本保持不变,我不会看看为什么你需要重新索引。唯一的情况是插件本身以非向后兼容的方式进行更改。

0

截至最新版本2.4.1(2016-10-18)仍然无法轻松完成此操作,因为elasticsearch人员recommend manual plugin updates

预计当您更新Elasticsearch并启动服务时,最终会出现错误,因为服务无法启动,因为插件是ES版本后面的一个次要版本,例如, “执照”。

转到您的elasticsearch bin目录并运行以下命令:

sudo ./plugin remove <plugin name> 
sudo ./plugin install <plugin name> 

你甚至可以大胆地写一个“更新” shell脚本,这是否适合你。

0

bash脚本这里:

#!/bin/bash 

plugin_bin=/usr/share/elasticsearch/bin/plugin 
for plugin in $($plugin_bin list | awk '/^\s*-\s*(\S+)/{print $2}') 
do 
    $plugin_bin remove $plugin && $plugin_bin install $plugin 
done