elasticsearch,updates,Plugins,elasticsearch,Updates" /> elasticsearch,updates,Plugins,elasticsearch,Updates" />

Plugins elasticsearch插件的更新

Plugins elasticsearch插件的更新,plugins,elasticsearch,updates,Plugins,elasticsearch,Updates,我为elasticsearch开发了几个插件,这些插件可能需要(或多或少)频繁更新。 我的简单问题是:有没有一种方法可以更新elasticsearch插件,而不必删除旧版本、删除相关索引、安装新版本并从头开始重建索引 提前感谢。无法更新现有插件。您需要删除旧版本并安装新版本 不过我没听清你关于指数的问题。一个插件不一定对数据有效,它可以只是一个站点插件、一个查询解析器等。如果一个插件对索引有效,你想升级它,但elasticsearch版本保持不变,我不明白为什么你需要重新索引。唯一的情况是插件本

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


提前感谢。

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


不过我没听清你关于指数的问题。一个插件不一定对数据有效,它可以只是一个站点插件、一个查询解析器等。如果一个插件对索引有效,你想升级它,但elasticsearch版本保持不变,我不明白为什么你需要重新索引。唯一的情况是插件本身以不向后兼容的方式更改。

从最新版本2.4.1(2016-10-18)开始,仍然没有办法轻松做到这一点,因为elasticsearch的用户

预计当您更新Elasticsearch并启动服务时,您将以错误告终,因为服务无法启动,因为插件是ES版本后面的一个次要版本,例如“许可证”

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

sudo ./plugin remove <plugin name>
sudo ./plugin install <plugin name>
sudo./plugin-remove
sudo./plugin安装
您甚至可以大胆地编写一个“更新”shell脚本来实现这一点。

这里是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