Elasticsearch 永久动态集群设置

示例

如果您需要在集群启动后动态应用设置,并且实际上可以动态设置,那么可以使用_cluster/settingsAPI进行设置。

持久性设置是可以应用的两种群集范围设置之一。永久设置在整个群集重新启动后继续存在。

注意:并非所有设置都可以动态应用。例如,群集名称不能动态重命名。大多数节点级设置也不能动态设置(因为它们不能单独定位)。

不是用于设置索引级别设置的API。您可以说该设置是索引级别的设置,因为它应该以开头index.。名称为的设置indices. 群集范围的设置,因为它们适用于所有索引。

POST /_cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.enable": "none"
  }
}

警告:在Elasticsearch 1.x和2.x中,您无法取消设置持久性设置。

幸运的是,Elasticsearch 5.x中对此进行了改进,现在您可以通过将设置设置为来删除设置null:

POST /_cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.enable": null
  }
}

未设置的设置将返回其默认值,或者恢复为较低优先级级别定义的任何值(例如,命令行设置)。