

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

# 在 Ama OpenSearch zon 服务中配置多可用区域
<a name="managedomains-multiaz"></a>

为了防止数据丢失并最大限度地减少 OpenSearch 服务中断时的 Amazon Service 集群停机时间，您可以在同一区域的两个或三个*可用区*中分配节点，这种配置称为多可用区。可用区是每个 AWS 区域内的隔离位置。

对于运行生产工作负载的域，建议使用带待机功能的多可用区部署选项，该选项可创建以下配置：
+ 跨三个区域部署域。
+ 为专用主节点和数据节点选择最新一代实例类型。
+ 三个专用主节点和三个（或三倍）数据节点。
+ 您的域中每个索引至少有两个副本，或者三倍的数据副本（包括主节点和副本）。

本节的其余部分提供了有关这些配置的解释和背景。

## 带待机功能的多可用区
<a name="managedomains-za-standby"></a>

带备用模式的多可用区是 Amazon Ser OpenSearch vice 域的部署选项，可提供 99.99% 的可用性、稳定的生产工作负载性能，并简化域配置和管理。当您使用带待机功能的多可用区时，域可以抵御基础设施故障，而不会影响性能或可用性。此部署选项通过强制执行一些最佳实践（例如指定的数据节点数、主节点数、实例类型、副本数量、软件更新设置和开启自动调整）来达到这一标准。

**注意**  
带备用模式的多可用区适用于 1.3 及更高 OpenSearch 版本，并且需要至少有三个可用区的区域。

当您将多可用区与备用区域配合使用时，S OpenSearch ervice 会跨三个可用区创建一个域，每个可用区都包含完整的数据副本，并且数据在每个区域中均匀分布。您的域让其中一个区中的节点处于待机状态，这意味着它们不响应搜索请求。当 S OpenSearch ervice 检测到底层基础设施出现故障时，它会在不到一分钟的时间内自动激活备用节点。域可以继续提供索引和搜索请求服务，而影响仅限于执行故障转移所耗费的时间。但不会对数据或资源进行重新分配，所以集群性能不会受到影响，而且也不会出现可用性下降的风险。带待机功能的多可用区完全免费。

您可以通过两种方式在 AWS 管理控制台上创建带有待机状态的域。首先，您可以使用 E **asy create 创建方法创建**域，然后 S OpenSearch ervice 将自动使用预先确定的配置，其中包括以下内容：
+ 三个可用区，其中一个可处于待机状态
+ 三个专用的主节点和数据节点
+ 已在域上启用自动调整
+ GP3 数据节点的存储

您也可以选择**标准创建**创建方法，然后选择**不带待机状态的域**作为部署选项。您可以自定义域，同时仍必需使用具有待机状态的域的关键功能，例如三个区和三个主节点。建议选择三倍（可用区数量）的数据节点数。

创建域后，您可以导航到域详细信息页面，然后在**集群配置**选项卡中，确认可用区下显示*带待机功能的 3-AZ*。

如果您在将现有域迁移到带待机功能的多可用区时遇到问题，请参阅故障排除指南中的[迁移到带待机功能的多可用区时出错](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/handling-errors.html#troubleshooting-multi-az-standby)。

### 限制
<a name="limitations"></a>

在设置带待机功能的多可用区的域时，请考虑以下限制：
+ 节点上的分片总数不能超过 1000，集群上的分片总数不能超过 75000，单个分片的大小不能超过 65 GB。
+ 带备用模式的多可用区仅适用`c5`于`m5``r5`、、`r6g`、`c6g`、`m6g`、`r6gd`、`r7g`、`c7g`、`m7g`、`r7gd`、和`i3`实例类型。有关所支持实例类型的更多信息，请参阅[支持的实例类型](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html)。
+ 您只能使用预配置 IOPs SSD、通用型 SSD (GP3) 或带待机状态的实例备份存储。
+ 如果您在带有备用域的多可用区[UltraWarm](ultrawarm.md)上启用，则温节点的数量必须是正在使用的可用区数量的倍数。

## 不带待机功能的多可用区
<a name="managedomains-za-no-standby"></a>

OpenSearch 服务仍支持不带备用状态的多可用区，可用性高达 99.9%。节点分布在各个可用区中，可用性取决于可用区的数量和数据副本。而在带有待机功能的情况下，您必须按照最佳实践配置您的域，而在没有待机功能的情况下，您可以自己选择可用区、节点和副本的数量。除非您的现有工作流程会因创建带有待机功能的域而中断，否则我们不建议使用此选项。

如果您选择此选项，我们仍然建议您选择三个可用区，以保持对节点、磁盘和单可用区故障的弹性。发生故障时，集群会在剩余资源之间重新分配数据，以保持可用性和冗余。这种数据移动会增加集群的资源使用量，并可能对性能产生影响。如果集群的大小不正确，其可用性可能会降低，这在很大程度上违背了多可用区的目的。

配置未开启备用域的唯一方法 AWS 管理控制台 是选择**标准创建**方法，然后选择**不带备用状态的域**作为部署选项。

### 分片分配
<a name="shards"></a>

如果您启用不带待机功能的多可用区，则应该为集群中的每个索引创建至少一个副本。如果没有副本，S OpenSearch ervice 就无法将您的数据副本分发到其他可用区。幸运的是，所有索引的默认配置均为副本数量等于 1。如下图所示，S OpenSearch ervice 会尽最大努力将主分片及其对应的副本分片分配到不同的区域。

![三个可用区各包含两个数据节点，主分片和副本分布在各个区域。](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/images/za-3-az.png)


除了按可用区分配分片外，S OpenSearch ervice 还按节点分发分片。但是，某些域配置可能会导致分片计数不平衡。考虑以下域：
+ 5 个数据节点
+ 5 个主分片
+ 2 个副本
+ 3 个可用区

在这种情况下，S OpenSearch ervice 必须超载一个节点，才能将主分片和副本分片分布到各个区域，如下图所示。

![三个可用区，其数据节点包含跨区域分布的主分片和副本。](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/images/za-3-az-imbal.png)


为避免这些可能导致单个节点紧张并损害性能的情况，如果您计划每个索引有两个或更多副本，建议您选择带待机功能的多可用区或一个为三的倍数的实例计数。

### 专用主节点分配
<a name="dm"></a>

即使您在配置域时选择了两个可用区，S OpenSearch ervice 也会自动在三个可用区之间分配[专用主节点](managedomains-dedicatedmasternodes.md)。此分发有助于在区域遇到服务中断时防止集群停机。如果您使用推荐的三个专用主节点并且一个可用区域关闭，则您的集群仍具有配额数量 (2) 的专用主节点，并且可以选择新的主节点。下图演示了此配置。

![四个数据节点，主分片和副本分片分布在两个可用区中，专用主节点分布在三个区域中。](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/images/za-2-az.png)


如果您选择三个可用区中不可用的较旧一代实例类型，则以下方案适用：
+ 如果您为域选择了三个可用区，则 OpenSearch 服务会引发错误。请选择其他实例类型，然后重试。
+ 如果您为域选择了两个可用区，S OpenSearch ervice 会将专用主节点分布在两个区域中。

## 可用区中断
<a name="managedomains-za-summary"></a>

可用区中断很少见，但仍会出现。下表列出了中断期间的不同多 AZ 配置和行为。表中的最后一行适用于带待机功能的多可用区，而所有其他行的配置仅适用于不带待机功能的多可用区。


| 一个区域中的可用区数量 | 您选择的可用区数量 | 专用主节点的数量 | 一个可用区遇到中断时的行为 | 
| --- | --- | --- | --- | 
| 2 或更多 | 2 | 0 |  停机时间。您的集群丢失了一半的数据节点，并且必须替换剩余可用区中的至少一个，然后才能选择主节点。  | 
| 2 | 2 | 3 |  停机几率为 50/50。 OpenSearch 服务将两个专用主节点分配到一个可用区，将一个分配到另一个可用区： [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/managedomains-multiaz.html)  | 
| 3 或更多 | 2 | 3 |  没有停机时间。 OpenSearch Service 会自动将专用主节点分布到三个可用区，因此剩下的两个专用主节点可以选出一个主节点。  | 
| 3 或更多 | 3 | 0 |  无停机时间。大约三分之二的数据节点仍可用于选择主节点。  | 
| 3 或更多 | 3 | 3 |  无停机时间。其余两个专用主节点可以选择主节点。  | 

在*所有*配置中，无论原因如何，节点故障都可能导致集群的其余数据节点经历一段时间的负载增加，而 Ser OpenSearch vice 会自动配置新节点以替换现在缺少的节点。

例如，如果三区域配置中发生可用区中断，则三分之二的数据节点必须处理所有集群请求。当它们处理这些请求时，其余节点也会在新节点上线时将分片复制到新节点上，这可能会进一步影响性能。如果可用性对您的工作负载至关重要，请考虑向集群中添加资源以缓解此问题。

**注意**  
OpenSearch 服务以透明方式管理多可用区域，因此您无法手动模拟可用区中断。