弹性搜索最佳主人数

时间:2012-12-28 20:07:52

标签: elasticsearch

我们目前有一个包含6个数据节点和一个非数据节点的集群。其中,两个目前是主人符合条件。此群集位于EC2上。

主节点的最佳数量是多少,还是有理由进行区分?

3 个答案:

答案 0 :(得分:12)

如果没有主节点,群集将无法运行。因此,符合主节点的节点数量取决于您丢失所有主节点的容差。

拥有奇数个符合主节点的节点并将discovery.zen.minimum_master_nodes设置为大于群集中符合主节点数的节点数的一半可能也会有所帮助。这应该可以显着降低您的群集进入裂脑状态的可能性。

例如,对于具有3个符合主节点的节点的群集,您可以将discovery.zen.minimum_master_nodes设置为2.

答案 1 :(得分:4)

Elasticsearch Pre-Flight Checklist所述,您可以在discovery.zen.minimum_master_nodes个节点的群集上将(N/2)+1设置为至少N > 2

其中N是符合条件的主节点数。

在您的情况下,discovery.zen.minimum_master_nodes: 4符合条件的主节点,即(6/2)+1

答案 2 :(得分:1)

minimum_master_nodes(法定人数)应根据主节点的数量而非数据节点计算,当且仅当所有数据节点都是主要合格节点时,Uyi的建议才是正确的。

你应该永远不会有2个主节点,因为有可能处于split-brain情况,我的建议是,至少让3个节点符合条件,并将最小主节点设置为2.

要考虑的另一件事是拥有更小但专用的主节点,以确保它们更稳定并且不会因处理索引而承受压力。