我已经在一个集群中为Elasticsearch服务器配置了3个节点。这3个节点全部是Master合格节点和数据节点(即,所有3个节点的node.master:true
和node.data:true
)。
任何人都可以告诉我,将所有可用节点设置为主节点和数据节点会不会有影响?
是否有任何规则或公式可以根据节点总数确定主机资格节点和数据节点的数量? (例如:如果总数为nodes = 3
,则主节点应为x
,数据节点应为y
-问题是x
和{{1 }}?)。
答案 0 :(得分:0)
tl; dr:x = 3,y = 3。
在三节点群集的情况下,拥有一个主节点的弹性很小,而拥有两个主节点的弹性则不会更好,因为您仍然需要两个节点都具有仲裁(避免使用split brain)。
法定人数:N / 2 + 1,其中N是符合主机资格的节点数,因此在这种情况下:2/2 + 1 = 2。
因此,对于三个节点的群集,三个主节点合格的节点是一个不错的选择。
我建议也将这三个都保留为数据节点。在开始进入更大的集群(10个以上的节点)之前,通常不需要在节点之间分配角色。
进一步阅读:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html