重新启动弹性搜索节点

2022-08-31 14:59:23

在弹性搜索中重启节点的正确方法是什么?(最好通过REST API,Java API也可能没问题)


答案 1

重新启动节点的正确方法是关闭它,使用关闭API或向进程发送信号(例如,使用)。TERMkill $PID

关闭后,您可以使用用于运行elasticsearch的任何内容(例如服务包装器)启动新节点,或者只是从命令行启动它。

如果您使用的是服务包装器,则可以通过向节点传递命令来重新启动节点:例如,但这只是上述操作的便利包装器。restart/etc/init.d/elasticsearch restart

该 API 自版本 0.11 起已被禁用,因为它存在问题。restart


答案 2

每当节点出现故障和/或新节点启动时,集群都会重新分配分片,当您只需要重新启动节点时,可能不需要分片,因此您可以使用滚动重新启动:

  1. 首先禁用分片分配:

    PUT /_cluster/settings { “transient” : { “cluster.routing.allocation.enable” : “none” } }

  2. 重新启动节点service elasticsearch restart

  3. 启用分片分配:

    PUT /_cluster/settings { “transient” : { “cluster.routing.allocation.enable” : “all” } }

更多关于这个: 这里


推荐