【问题标题】:How do I find where ElasticSearch is installing my plugins?如何找到 ElasticSearch 在哪里安装我的插件?
【发布时间】:2012-08-10 21:14:21
【问题描述】:

我已经用brew install elasticsearch 安装了elasticsearch。我的插件似乎位于/usr/local/Cellar/elasticsearch/0.19.8/plugins。使用cat $( which plugin ),我看到了一个包含正确路径的ES_HOME 变量。

有没有办法向 elastic 询问 ES_HOME 或插件目录?


编辑

我正在寻找的是 plugin 可执行文件在我执行plugin -install something 时用于安装插件的目录。我想在脚本中使用该路径来启动弹性搜索。

【问题讨论】:

  • 作为一个老问题,请注意使用 Elasticsearch 插件的灌输自 ES 5 以来已被弃用。换句话说,所有新/X-Pack 功能从 5.0 版开始捆绑。

标签: directory elasticsearch


【解决方案1】:

要找到您的 elasticsearch 主目录安装插件,请按照以下步骤操作。

找到您的主目录 (查找设置 -> 路径 -> 主页以获得价值)

$ curl "localhost:9200/_nodes/settings?pretty=true"

转到位置 (示例 settings.path.home 值:/usr/local/Cellar/elasticsearch/1.5.0)

$ cd /usr/local/Cellar/elasticsearch/1.5.0

安装插件 (插件示例:mobz/elasticsearch-head

$ bin/plugin -install mobz/elasticsearch-head

【讨论】:

  • 这是一个很老的问题。不过感谢您的完整回答。
  • 只是把它留在这里,这有助于我使用 APT 方法安装 elastic search via repository sudo /usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head
  • curl: (7) Failed to connect to localhost port 9200: Connection refused
【解决方案2】:

我使用了这个命令:

$ curl "localhost:9200/_nodes?pretty=true&settings=true"

检查下一个设置:节点 - 设置 - 路径 - 插件并将其用作插件目录。

【讨论】:

  • curl "localhost:9200/_nodes?pretty=true&settings=true"
【解决方案3】:

我遇到了和你一样的问题,我可以通过以下方式找到 ES_HOME 目录 @imotiv 的建议。

只需拨打PATH_TO_SERVER:9200/_cluster/nodes?settings=true&pretty=true

您将在其中看到path.home 条目。那是你的 ES 工作目录。

找到 ElasticSearch 主文件夹后,在我的情况下为 /usr/share/elasticsearchcd 到该位置。

在那里,您可以简单地运行bin/plugin -install elasticsearch/elasticsearch-analysis-phonetic/1.3.0,它会自动为您完成剩下的工作。

希望这会有所帮助。

【讨论】:

    【解决方案4】:

    不完全确定您要达到的目标,但希望这会有所帮助。有几种方法可以找到 elasticsearch 的插件目录。您可以在logging.yml 文件中设置plugins: TRACE,这将导致elasticsearch 记录它正在加载的插件的完整路径。也可以执行

    $ curl "localhost:9200/_cluster/nodes?settings=true&pretty=true"
    

    检查当前设置。 Elasticsearch 使用path.plugins 设置中指定的位置来加载插件。如果未设置path.plugins,则使用path.home设置指定的目录中的plugins目录。

    【讨论】:

    • 很抱歉,再次阅读我的问题后,我似乎错过了一个关键点:我正在寻找 plugin 可执行文件默认使用的目录来安装插件当我做plugin -install something。我想在脚本中使用该路径来启动弹性搜索。
    • 这很重要。如果您想以干净的方式执行此操作,则需要加载几个配置文件并检查几个环境设置。我认为最简单的方法是编写一个小型 Java 应用程序来加载设置,然后从 org.elasticsearch.env.Environment 获取 pluginsFile。基本上它将是org.elasticsearch.plugins.PluginManager 的主要方法的前两行,除了检查路径是否存在,它将返回给调用者。
    猜你喜欢
    • 2010-10-12
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 2021-12-09
    • 2020-07-30
    • 1970-01-01
    • 2014-01-29
    • 1970-01-01
    相关资源
    最近更新 更多