You need to enable JavaScript to run this app.
文档中心
云搜索服务

云搜索服务

复制全文
下载 pdf
最佳实践
如何管理均衡云搜索服务实例中主分片分布
复制全文
下载 pdf
如何管理均衡云搜索服务实例中主分片分布
在新建索引或者节点个数发生变化时(如节点重启、新增节点),Elasticsearch 将会对分片位置进行调整,在新增节点或新建索引时,可能会出现某个(某些)节点中的主分片数量不均衡,导致写入高峰期时节点负载不均衡,集群整体资源利用率偏低。您可以通过配置主分片均衡相关配置项,开启主分片均衡,尽量将不同索引的主分片均匀地分布在所有节点中,从而提高整体资源利用率。​
注意事项​
  • 由于在多个可用区时会通过 awareness 控制主副分片的分布,强制主副分片无法分布在一个可用区中,因此会对 relocation 阶段的主分片均衡产生一定程度的限制。​
  • 存量的索引在开启主分片均衡时可能无法跨可用区进行主分片均衡​
  • 新增的索引在逐个分配主分片时依然可以跨可用区进行主分片均衡​
  • 目前仅支持在 2024 年 12 月以后创建的 Elasticsearch 7.10.2 版本实例和 OpenSearch 2.9.0 版本实例支持开启主分片均衡功能,您可以先尝试配置,如果遇到报错参数无法识别,可重启实例后就可以具备此功能。​
参数说明​
您可以通过以下参数设置索引的主分片均衡。​
​
参数​
说明​
cluster.routing.allocation.balance.prefer_primary​
是否开启 allocation 时的主分片均衡,取值如下:​
  • true:表示开启。​
  • false:(默认值)表示关闭。​
cluster.routing.allocation.rebalance.primary.enable​
是否开启 rebalance 时的主分片均衡,取值如下:​
  • true:表示开启。​
  • false:(默认值)表示关闭。​
cluster.routing.allocation.rebalance.primary.buffer​
rebalance 时能够接受的不均衡程度,取值范围为 0~1,默认值为 0.1。​
0 表示完全不接受,具体表示当前节点主分片个数超出理论上能接受的单节点平均值的程度。​
cluster.routing.allocation.move.primary_first​
迁移分片时是否先迁移主分片,取值如下:​
  • true:表示迁移分片时先迁移主分片。​
  • false:(默认值)表示迁移分片时不先迁移主分片,且不影响主分片均衡功能。​
cluster.routing.allocation.primary_constraint.threshold​
表示违反全局的主分片均衡所带来 weight 增加。Long 类型,默认为 10。​
说明​
当参数取值过大可能会导致某些情况下出现某些节点只有主分片而没有副分片的情况,因此需谨慎修改该参数配置。​
​
使用示例​
下文以在 Kibana 界面为例,介绍如何开启主分片均衡。​
  1. 登录 Kibana。具体操作步骤,请参见登录 Kibana/Dashboards。​
  1. 在 Kibana 界面,输入以下命令,开启主分片均衡:​
  • ​
    PUT _cluster/settings​
    {​
    "persistent": {​
    "cluster": {​
    "routing": {​
    "allocation.balance.prefer_primary": true,​
    "allocation.rebalance.primary.enable": true​
    }​
    }​
    }​
    }​
    ​
说明​
该参数仅支持当实例健康状态为绿色时进行修改,若实例健康状态为橙色,也需要将 cluster.routing.allocation.allow_rebalance 从 indices_all_active 改为 indices_primaries_active,均衡完之后需要改回原有配置。具体操作,请参见查看实例健康概览。​
​
最近更新时间:2026.03.31 18:46:03
这个页面对您有帮助吗?
有用
有用
无用
无用