开始使用 Amazon 应用程序恢复控制器(ARC)中的多区域恢复 - Amazon 应用程序恢复控制器(ARC)

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

开始使用 Amazon 应用程序恢复控制器(ARC)中的多区域恢复

要使用 Amazon 应用程序恢复控制器 (ARC) 中的路由控制对应用程序进行故障切换,您的 AWS 应用程序必须是多个应用程序 AWS 区域。要开始使用,首先,请确保您的应用程序设置在每个区域的孤立副本中,这样您就可以在发生事件期间从一个区域失效转移到另一个区域。然后,您可以创建路由控制来重新路由应用程序流量,使其从主应用程序失效转移到辅助应用程序,从而为用户保持连续性。

注意

如果您的应用程序被可用区隔开,请考虑使用可用区转移或可用区自动转移进行失效转移恢复。无需进行任何设置即可使用可用区转移或可用区自动转移从受影响的可用区可靠地恢复应用程序。有关更多信息,请参阅 可用区转移和可用区自动转移在 ARC 中恢复应用程序

为了使您可以使用 ARC 路由控制,在发生事件期间恢复应用程序,建议您至少设置两个彼此互为副本的应用程序。每个副本或单元格代表一个 AWS 区域。将应用程序资源设置为与区域保持一致后,请执行以下步骤,确保应用程序为成功恢复做好准备。

提示:为了帮助简化设置,我们提供 CloudFormation 了 HashiCorp Terraform 模板,用于创建具有相互独立失败的冗余副本的应用程序。要了解更多信息并下载模板,请参阅设置示例应用程序

要准备使用路由控制,请执行以下操作,确保您的应用程序设置为具有弹性:

  1. 创建应用程序堆栈(网络和计算层)的独立副本,这些副本在每个区域中彼此互为副本,以便在发生事件时可以将流量从一个区域失效转到移另一个区域。确保您的应用程序代码中不存在一个副本的故障会影响另一个副本的任何跨区域依赖关系。要在两者之间成功进行故障转移 AWS 区域,您的堆栈边界应位于一个区域内。

  2. 为应用程序跨副本复制所有必需的有状态数据。您可以使用 AWS 数据库服务来帮助复制数据。

开始使用路由控制进行流量失效转移

使用 Amazon 应用程序恢复控制器(ARC)中的路由控制,可触发在不同 AWS 区域中运行的冗余应用程序副本之间的流量失效转移。失效转移是使用 Amazon Route 53 数据面板通过 DNS 执行的。

在每个区域设置副本后(如下一节所述),您可以将每个副本与路由控制相关联。首先,您将路由控制与每个区域中副本的顶级域名相关联。然后,向路由控制添加路由控制运行状况检查,使其可以打开和关闭流量。这使您能够控制应用程序副本之间的流量路由。

您可以更新中的路由控制状态 AWS 管理控制台 以故障转移流量,但我们建议您改用 ARC 操作、API 或 AWS CLI,来更改它们。API 操作不依赖于控制台,因此它们更具弹性。

例如,要在可用区之间进行失效转移,例如从 us-west-1 失效转移到 us-east-1,可以使用 update-routing-control-state API 操作将 us-west-1 的状态设为 Off,将 us-east-1 的状态设为 On

在创建路由控制组件以设置应用程序的失效转移之前,请确保将应用程序隔离为多个可用区副本,以便您可以从一个副本失效转移到另一个副本。要了解更多信息并开始隔离新应用程序或创建示例堆栈,请参阅下一节。

设置示例应用程序

为了帮助您了解路由控制的工作原理,我们提供了一个名为 TicTacToe 的示例应用程序。该示例使用 CloudFormation 模板来简化流程,并使用可下载的 CloudFormation 模板让您可以自己快速探索如何设置和使用 ARC。

部署示例应用程序后,您可以使用这些模板创建 ARC 组件,然后探索如何使用路由控制来管理流向该应用程序的流量。您可以根据自己的应用场景和应用程序调整模板和流程。

要开始使用示例应用程序和 CloudFormation 模板,请参阅 ARC GitHub 存储库中的自述文件说明。您可以通过阅读 AWS CloudFormation 用户指南中的CloudFormation 概念来了解有关使用 CloudFormation 模板的更多信息。