Amazon OpenSearch 服务中的专用主节点 - 亚马逊 OpenSearch 服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon OpenSearch 服务中的专用主节点

Amazon Ser OpenSearch vice 使用专用的主节点来提高集群稳定性。专用主节点执行群集管理任务,但不保留数据也不响应数据上传请求。此群集管理任务的卸载可增加您的域的稳定性。与所有其他节点类型一样,您为每个专用主节点支付小时费率。

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

  • 跟踪集群中的所有节点。

  • 跟踪集群中的索引数量。

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

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

  • 在状态更新后更新集群状态,如在集群中创建索引和添加或移除节点。

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

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

下图显示了一个包含 10 个实例的 OpenSearch 服务域。七个实例是数据节点,三个是专用主节点。只有一个专用主节点处于活跃状态。两个灰色专用主节点作为备份,以防活跃的专用主节点发生故障。所有数据上传请求由七个数据节点提供,并且所有群集管理任务均卸载到活动的专用主节点。

专用主节点的数量

我们建议您使用带备用空间的多可用区,这会向每个生产 OpenSearch 服务域添加三个专用的主节点。如果使用不带待机功能的多可用区或单可用区进行部署,我们仍然建议使用三个专用主节点。请勿选择偶数专用主节点。选择专用主节点的数量时,请考虑以下事项:

  • Ser OpenSearch vice 明确禁止使用一个专用主节点,因为在出现故障时您没有备份。如果您尝试创建只有一个专用主节点的域,您会收到验证异常。

  • 如果您有两个专用主节点,您的集群就没有必需的仲裁节点数,无法在发生故障时选择新的主节点。

    仲裁节点数为专用主节点数/2 + 1(向下取整到最近的整数)。在这种情况下,2/2 + 1 = 2。由于一个专用主节点发生了故障且仅存在一个备份,因此集群没有达到仲裁节点数且无法选择新的主节点。

  • 三个专用主节点(建议的数量)可在主节点发生故障时提供两个备份节点和必要的仲裁节点数 (2) 来选择新主节点。

  • 四个专用主节点并不比三个好,如果您使用多个可用区,可能会导致问题。

    • 如果一个主节点发生故障,您有选择新主节点所需的仲裁节点数 (3)。如果两个节点发生故障,则您会失去该仲裁节点数,正如您具有三个专用主节点时一样。

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

  • 拥有五个专用主节点与拥有三个节点效果一样,并且允许您在维持仲裁节点数的同时丢失两个节点。但是,由于在任何给定时间只有一个专用主节点处于活跃状态,因此此配置意味着您需要为四个空闲节点付费。许多用户发现,这一级别的故障转移保护有些过剩。

如果一个集群拥有符合主服务器条件的节点数量为偶数, OpenSearch 则为 Elasticsearch 版本 7。 x 及之后会忽略一个节点,因此投票配置始终为奇数。在此情况下,4 个专用主节点实质上相当于 3 个(2 比 1)。

注意

如果您的集群没有必要的仲裁节点数来选择新的主节点,则集群的写入 读取请求均会失败。此行为与 OpenSearch 默认行为不同。

为专用主节点选择实例类型

虽然专用主节点不处理搜索和查询请求,但它们的大小与实例大小及其管理的实例、索引和分片数量高度相关。对于生产群集,我们建议专用主节点至少采用以下实例类型。

这些建议基于典型工作负载,可能根据您的需求而有所不同。具有许多分片或字段映射的集群可受益于更大的实例类型。监控专用主节点指标以查看您是否需要使用更大的实例类型。

实例计数

主节点 RAM 大小 支持的最大分片数

推荐的最小专用主实例类型

1–10

8 GiB 10K

m5.large.searchm6g.large.search

11–30

16 GiB 30K

c5.2xlarge.searchc6g.2xlarge.search

31–75 32 GiB 40K

r5.xlarge.searchr6g.xlarge.search

76 — 125 64 GiB 75K

r5.2xlarge.searchr6g.2xlarge.search

126 – 200

128 GiB 75K

r5.4xlarge.searchr6g.4xlarge.search