允许 Elasticsearch 分配索引
edit
可以使用启用分配配置来控制数据的分配。
在某些情况下,用户可能希望暂时禁用或限制数据的分配。
忘记重新允许所有数据分配可能导致未分配的分片。
为了(重新)允许所有数据被分配,请按照以下步骤操作:
为了获取分片分配,我们需要将限制分片分配的配置值更改为all
。
使用 Kibana
-
登录到 Elastic Cloud 控制台。
-
在Elasticsearch Service面板上,点击您的部署名称。
如果您的部署名称被禁用,您的 Kibana 实例可能不健康,在这种情况下,请与 Elastic 支持 联系。如果您的部署不包含 Kibana,您需要做的就是 首先启用它。
-
打开您的部署的侧边导航菜单(位于左上角的Elastic标志下方),然后转到开发工具 > 控制台。
-
检查未分配分片的索引的 index.routing.allocation.enable
索引设置。
GET /my-index-000001/_settings/index.routing.allocation.enable?flat_settings
响应将会是这样的:
{
"my-index-000001": {
"settings": {
"index.routing.allocation.enable": "none"
}
}
}
|
表示当前配置的值,该值控制索引是否允许部分或完全分配。
|
-
更改 配置
值以允许索引完全分配:
PUT /my-index-000001/_settings
{
"index" : {
"routing.allocation.enable" : "all"
}
}
|
索引 my-index-000001 的 allocation.enable 配置的新值已更改为允许所有分片分配。
|
为了获取分片分配,我们需要将限制分片分配的配置值更改为all
。
-
检查未分配分片的索引的 index.routing.allocation.enable
索引设置。
GET /my-index-000001/_settings/index.routing.allocation.enable?flat_settings
响应将会是这样的:
{
"my-index-000001": {
"settings": {
"index.routing.allocation.enable": "none"
}
}
}
|
表示当前配置的值,该值控制索引是否允许部分或完全分配。
|
-
更改 配置
值以允许索引完全分配:
PUT /my-index-000001/_settings
{
"index" : {
"routing.allocation.enable" : "all"
}
}
|
索引 my-index-000001 的 allocation.enable 配置的新值已更改为允许所有分片分配。
|