专用主节点主要用于提高集群稳定性。专用主节点执行群集管理任务,但不保留数据也不响应数据上传请求。集群管理任务的卸载,可增加 OpenSearch 域的稳定性。

管理任务

专用主节点执行以下集群管理任务:

  • 跟踪集群中的所有节点

  • 跟踪集群中的索引数量

  • 跟踪属于每个索引的分片数量

  • 维护集群中节点的路由信息

  • 跟踪集群状态,如在集群中创建索引和添加或移除节点

  • 复制集群中的所有节点之间状态的更改

  • 通过发送心跳信号,监控集群中数据节点可用性的周期信号,并监控所有集群节点的运行状况

配置选型

一个专用主节点

OpenSearch 不支持创建一个专用主节点。该配置下,故障发生时,集群将不可用。

两个专用主节点

配置两个专用主节点时,一个专用主节点发生故障且仅存在一个备份,此时,集群没有仲裁节点,无法选择新的主节点。不满足需求。

三个专用主节点

企业云平台推荐用户配置三个专用主节点。集群可在主节点发生故障时提供两个备份节点和必要的仲裁节点来选择新主节点。

四个专用主节点

配置四个专用主节点,并不比三个专用主节点好。特别是,在使用多个可用区域环境,可能会导致问题。

例如,若一个主节点发生故障,目前选择新主节点所需的仲裁节点数 3。若两个节点发生故障,则失去该仲裁节点数,与三个专用主节点时一样。

在三个可用区配置中,两个可用区具有一个专用主节点,一个可用区有两个。如果该 AZ 发生中断,其余两个可用区没有选择新主节点所需的仲裁节数 (3)。

五个专用主节点

配置五个专用主节点,与拥有三个节点效果相当,在维持仲裁节点数的同时支持丢失两个节点。

由于在任何给定时间只有一个专用主节点处于活动状态,因此配置五个专用主节点意味着有四个空闲节点,不是高性价比选择。

选型结论

默认情况下,企业云平台建议用户在每个 OpenSearch 生产环境配置三个专用主节点。

若一个集群具有偶数个符合主节点条件的节点,则 OpenSearch 和 Elasticsearch 版本 7.x 及更高版本将忽略一个节点,以便选举配置始终为奇数。在此情况下,4 个专用主节点实质上相当于 3 个。

注意

不同于 OpenSearch 的默认主备选举,若集群没有充足的备节点数来选择新的主节点,则集群的 写入读取 请求均会失败。