允许 Elasticsearch 分配系统中的数据

edit

允许 Elasticsearch 分配系统中的数据

edit

在 Elasticsearch 部署中,可以使用 启用集群分配配置 来控制数据的分配。 在某些情况下,用户可能希望临时禁用或限制系统中的数据分配。

忘记重新允许所有数据分配可能会导致未分配的分片。

为了(重新)允许所有数据被分配,请按照以下步骤操作:

为了使分片被分配,我们需要更改限制分片分配的配置的值,以允许所有分片被分配。

我们将通过检查系统范围的 cluster.routing.allocation.enable 集群设置 并将配置的值更改为 all

使用 Kibana

  1. 登录到 Elastic Cloud 控制台
  2. Elasticsearch Service面板上,点击您的部署名称。

    如果您的部署名称被禁用,您的 Kibana 实例可能不健康,在这种情况下,请与 Elastic 支持 联系。如果您的部署不包含 Kibana,您需要做的就是 首先启用它

  3. 打开您的部署的侧边导航菜单(位于左上角的Elastic标志下方),然后转到开发工具 > 控制台

    Kibana Console
  4. 检查 cluster.routing.allocation.enable 集群设置

    GET /_cluster/settings?flat_settings

    响应将会是这样的:

    {
      "persistent": {
        "cluster.routing.allocation.enable": "none" 
      },
      "transient": {}
    }

    表示当前配置的值,该值控制数据是否部分或完全允许在系统中分配。

  5. 更改 配置 值以允许系统中的所有数据完全分配:

    PUT _cluster/settings
    {
      "persistent" : {
        "cluster.routing.allocation.enable" : "all" 
      }
    }

    系统范围配置 allocation.enable 的新值已更改为允许所有分片进行分配。