我已配置了两个节点群集,并使用index
和4 shards
创建了1 replica
Elastic在每个节点上创建了2个主分片,这是它从头部插件看起来的样子。 shard 1
,shard 3
是node 1(stephen1c7)
的主要内容,而shard 0
shard 2
是node 2(stephen2c7)
的主要内容{/ 1}}
现在我已关闭node 2(stephen2c7)
以查看node 1(stephen1c7)
上的所有分片是否成为主分片。是的,所有分片现在都是主要的。
现在我再次启动Node 2(stephen2c7)
以查看此节点上的任何分片是否为主要分片。但令人惊讶的是,此节点上没有碎片成为主要碎片。等了很长时间,但Node 2
仍然没有碎片是主要的。
为什么这样?
是否有任何配置可以在节点启动后再次将分片设为主?
提前致谢!
答案 0 :(得分:1)
鉴于this post和this one(尽管稍微过时),在群集中平衡主分片和副本分片似乎不是Elastic群集中的优先级。如您所见,Elastic看到了副本和主要分片,因此群集的状态似乎令人满意。
我建议您查看shard balancing heuristic并使用这些值,直到获得满意的结果。 (正如ElasticSearch的情况一样,根据您的架构设计选择,测试几个参数将产生最佳配置。)
请注意,如果您开始使用分片平衡启发式,如果您同时使用shard filtering或forced awareness
,则可能无法获得良好的效果