

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

# 升级 Amazon OpenSearch Service 域
<a name="version-migration"></a>

**注意**  
OpenSearch 而且 Elasticsearch 版本升级不同于服务软件更新。有关更新服务域的服务软件的信息 OpenSearch ，请参阅[Amazon OpenSearch Service 中的服务软件更新](service-software.md)。

Amazon OpenSearch Service 为运行 OpenSearch 1.0 或更高版本，或者 Elasticsearch 5.1 或更高版本的域提供了就地升级。如果您使用诸如 Amazon Data Firehose 或 Amazon CloudWatch Logs 之类的 OpenSearch 服务将数据流式传输到服务，请在迁移 OpenSearch 之前检查这些服务是否支持较新版本的。

## 支持的升级途径
<a name="supported-upgrade-paths"></a>

目前， OpenSearch 服务支持以下升级路径：


| 之前版本 | 目标版本 | 
| --- | --- | 
| OpenSearch 1.3、2。 x，或 3。 x |  OpenSearch 3。 *x* 如果你运行的是 OpenSearch 1.3 或 2.x，则必须先升级到 OpenSearch 2.19，*然后再*升级到 OpenSearch 3.x。 从 OpenSearch 2.19 升级到 OpenSearch 3.x 时，可能需要解决以下不兼容的索引设置。这些索引设置在 2.x 之前的版本中就已弃用，如果不移除，会导致升级检查验证失败。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/version-migration.html) 有关已弃用的索引设置以及修复这些设置的步骤的更多信息，请参阅[索引设置](https://docs.opensearch.org/2.6/search-plugins/knn/knn-index/#index-settings)。有关 OpenSearch 3.x 重大更改的完整列表，请参阅 [3.](https://docs.opensearch.org/latest/breaking-changes/#300) 0.0。 如果您的域包含在 OpenSearch 1.3、Elasticsearch 7.10 或更早版本中创建的索引，则必须在升级到 3.x 之前对其重新编制索引。 OpenSearch OpenSearch 3.x 不支持这些较旧的索引，无论它们是在热存储还是冷存储 UltraWarm中。要重新编制不兼容索引 UltraWarm 或冷索引，请执行以下操作： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/version-migration.html) 或者，如果您不再需要索引，也可以将其删除。  | 
| OpenSearch 1.3 或 2。 x |  OpenSearch 2。 *x* OpenSearch 如果域满足以下条件，则默认情况下，2.17 将在自动模式下启用并行区段搜索： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/version-migration.html) 版本 2.3 具有以下重大更改： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/opensearch-service/latest/developerguide/version-migration.html)  | 
| OpenSearch 1。 x | OpenSearch 1。 x | 
| Elasticsearch 7.x |  弹性搜索 7. *x* 或 OpenSearch 1。 *x*  OpenSearch 1。 *x* 引入了许多重大更改。有关更多信息，请参阅 [Amazon OpenSearch 服务重命名-变更摘要](rename.md)。   | 
|  Elasticsearch 6.8  |  弹性搜索 7. *x* 或 OpenSearch 1。 *x*  Elasticsearch 7.0 和 OpenSearch 1.0 包含许多重大更改。在启动就地升级之前，我们建议您[手动拍摄 6 的快照](managedomains-snapshots.md)。 *x* 域，在测试中将其恢复 7. *x* 或 OpenSearch 1。 *x* 域，并使用该测试域来识别潜在的升级问题。有关 OpenSearch 1.0 中的重大更改，请参阅[Amazon OpenSearch 服务重命名-变更摘要](rename.md)。 与 Elasticsearch 6.*x* 相似，索引只能包含一种映射类型，但该类型现在必须名为 `_doc`。因此，某些请求正文中 APIs 不再需要映射类型（例如 `_bulk` API）。 对于新索引，请使用自托管的 Elasticsearch 7。 *x* 和 OpenSearch 1。 *x* 的默认分片数为 1。 OpenSearch Elasticsearch 上的服务域 7. *x* 及更高版本保留之前的默认值 5。   | 
| Elasticsearch 6.*x* | Elasticsearch 6.*x* | 
| Elasticsearch 5.6 |  Elasticsearch 6.*x*  在版本 6.*x* 中创建的索引不再支持多个映射类型。在版本 5.*x* 中创建的索引在还原到 6.*x* 集群后仍然支持多个映射类型。请检查您的代码是否仅为每个索引创建一个映射类型。 尽量减少从 Elasticsearch 5.6 升级到 6 期间的停机时间。 *x，S* OpenSearch ervice 将索引重新索引到`.kibana-6``.kibana`、删除、创建名为的别名`.kibana`，并将新索引映射到新别名。`.kibana`   | 
| Elasticsearch 5.x | Elasticsearch 5.x | 

升级过程包括三个步骤：

1. **升级前检查** — OpenSearch 服务会检查是否存在可能阻碍升级的问题，除非这些检查成功，否则不会继续执行下一步操作。

1. **快照** — OpenSearch 服务会拍摄 OpenSearch 或 Elasticsearch 集群的快照，除非快照成功，否则不会继续执行下一步操作。如果升级失败， OpenSearch 服务将使用此快照将集群恢复到其原始状态。有关更多信息，请参阅 [升级后无法降级](handling-errors.md#troubleshooting-upgrade-snapshot)。

1. **升级**- OpenSearch 服务会启动升级，升级可能需要 15 分钟到几个小时才能完成。 OpenSearch 在部分或全部升级期间，仪表板可能不可用。

## 对验证失败进行故障排除
<a name="upgrade-validation"></a>

当您启动 OpenSearch 或 Elasticsearch 版本升级时， OpenSearch 服务会首先执行一系列验证检查，以确保您的域名符合升级条件。如果其中任何一项检查失败，您将收到通知，其中包含在升级域之前必须修复的特定问题。有关潜在问题及其解决步骤的列表，请参阅 [对验证错误进行故障排除](managedomains-configuration-changes.md#validation)。

## 排查升级问题
<a name="upgrade-failures"></a>

就地 升级需要正常运行的域。您的域可能不符合升级条件或出于各种原因无法升级。下表显示了最常见的问题。


| 问题 | 说明 | 
| --- | --- | 
| 不支持可选插件 |  当您使用可选插件升级域名时，S OpenSearch ervice 也会自动升级插件。因此，您的域的目标版本还必须支持这些可选插件。如果域安装了目标版本不可用的可选插件，则升级请求将失败。  | 
| 一个节点的分片过多 | OpenSearch，以及 7。 x 个版本的 Elasticsearch，其默认设置为每个节点不超过 1,000 个分片。如果您当前集群中的某个节点超过此设置，则 OpenSearch 服务将不允许您升级。有关问题排查选项，请参阅[超过最大分片限制](handling-errors.md#troubleshooting-shard-limit)。 | 
| 域正在处理中 | 域正在接受配置更改。在操作完成后检查升级资格。 | 
| 红色集群状态 | 集群中的一个或多个索引为红色。有关问题排查步骤，请参阅[红色集群状态](handling-errors.md#handling-errors-red-cluster-status)。 | 
| 高错误率 | 在尝试处理请求时，集群返回大量 5xx 错误。此问题通常是因为同时读取或写入了过多的请求。请考虑减少流向集群的流量或扩展您的域。 | 
| 裂脑 | 脑裂意味着您的集群有多个主节点并且已拆分成两个绝不会自行重新联接的集群。您可以通过使用推荐数量的[专用主节点](managedomains-dedicatedmasternodes.md)避免裂脑。为了帮助您从裂脑恢复，请联系 [支持](https://console.aws.amazon.com/support/home)。 | 
| 找不到主节点 | OpenSearch 服务找不到集群的主节点。如果您的域使用了[多 AZ](managedomains-multiaz.md)，一个可用区故障可能已导致集群失去仲裁节点数且无法选择新的[主节点](managedomains-dedicatedmasternodes.md)。如果该问题无法自行解决，请联系 [支持](https://console.aws.amazon.com/support/home)。 | 
| 待处理任务过多 | 主节点处于高负载状态，且具有很多待处理任务。请考虑减少流向集群的流量或扩展您的域。 | 
| 存储卷受损 | 一个或多个节点的磁盘卷无法正常运行。此问题通常与其他问题一起发生，例如高错误率或待处理任务过多。如果它是独立发生的且无法自行解决，请联系 [支持](https://console.aws.amazon.com/support/home)。 | 
| KMS 密钥问题 | 用于加密域的 KMS 密钥无法访问或丢失。有关更多信息，请参阅 [监控对静态数据进行加密的域](encryption-at-rest.md#monitoring-ear)。 | 
| 快照拍摄正在进行中 | 域当前正在拍摄快照。在快照拍摄完成后检查升级资格。还要检查您是否可以列出手动快照存储库，在这些存储库中列出快照，并拍摄手动快照。如果 OpenSearch 服务无法检查快照是否正在进行中，则升级可能会失败。 | 
| 快照拍摄超时或失败 | 升级前快照拍摄所需的时间过长或失败。检查集群运行状况并重试。如果问题仍存在，请联系 [支持](https://console.aws.amazon.com/support/home)。 | 
| 索引不兼容 | 一个或多个索引与目标版本不兼容。如果您从旧版本 OpenSearch 或 Elasticsearch 迁移索引，则可能会出现此问题。重建索引并重试。 | 
| 高磁盘使用率 | 集群的磁盘使用率高于 90%。删除数据或扩展域，然后重试。 | 
| 高 JVM 使用率 | JVM 内存压力高于 75%。减少流向集群的流量或扩展域，然后重试。 | 
| OpenSearch 仪表板别名问题 | .dashboards已配置为别名并映射到不兼容的索引，可能来自早期版本的 Dashboard OpenSearch s。重建索引，然后重试。 | 
| 红色控制面板状态 | OpenSearch 仪表板状态为红色。尝试在升级完成时使用控制面板。如果红色状态仍然存在，请手动解决该问题，然后重试。 | 
| 跨集群兼容性 |  仅当升级之后源域与目标域之间保持跨集群兼容性时，才能升级。在升级过程中，会识别任何不兼容的连接。要继续，请删除远程域或删除不兼容的连接。请注意，如果域上的复制处于活动状态，则在删除连接后无法恢复复制。  | 
| 其他 OpenSearch 服务服务问题 |  OpenSearch 服务本身的问题可能会导致您的域名显示为不符合升级资格。如果上述情况都不适用于您的域且该问题持续超过一天，请联系 [支持](https://console.aws.amazon.com/support/home)。 | 