elasticsearch中Master节点网关和其他节点网关有什么区别?它们都存储元数据,不是吗?元数据,elasticsearch称为,我们可以从中得到什么信息?
1 回答
主节点与集群中的任何其他节点相同,只是它已被选为主节点。
它负责协调任何集群范围的更改,例如节点的添加或删除、索引的创建、删除或状态更改(即打开/关闭)以及分片到节点的分配。当任何这些更改发生时,“集群状态”会由主节点更新并发布到集群中的所有其他节点。它是唯一可以发布新集群状态的节点。
Master 执行的任务是轻量级的。任何处理数据的任务(例如索引、搜索等)都不需要主控。如果您选择将主节点作为非数据节点运行(即充当主节点和路由器的节点,但不包含任何数据),那么主节点可以在一个小盒子上愉快地运行。
如果节点被标记为“主节点合格”(默认情况下所有节点都是),则允许节点成为主节点。如果当前的 master 宕机,集群将选举一个新的 master。
集群中的一个重要配置选项是minimum_master_nodes
. 这指定了节点必须能够看到的“主合格”节点的数量才能成为集群的一部分。其目的是避免“脑裂”,即将集群分成两个集群,这两个集群都认为它们运行正常。
例如,如果您有 3 个节点,所有这些节点都是 master 合格的,并且设置minimum_master_nodes
为 1,那么如果第三个节点与其他两个节点分开,它仍然会看到一个 master-eligible 节点(本身)并认为它可以自己形成一个集群。
相反,minimum_master_nodes
在这种情况下设置为2(节点数/ 2 + 1),那么如果第三个节点分离,它将看不到足够的主节点,因此不会自行形成集群。它将继续尝试加入原始集群。
虽然 Elasticsearch 非常努力地选择正确的默认值,minimum_master_nodes
但无法猜测,因为它无法知道您打算运行多少个节点。这是您必须自己配置的内容。