View a markdown version of this page

关于区域切换 - Amazon 应用程序恢复控制器(ARC)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

关于区域切换

使用区域切换,您可以协调切换运行多区域应用程序的 Amazon Web Services 区域 特定步骤。

区域切换围绕计划概念构建,您可以根据特定的恢复需要来设计和配置这些计划。每个计划都包括由步骤组成的工作流程。每个步骤都运行一个或多个执行块,区域交换机并行或按顺序运行,以完成应用程序恢复。每个执行块处理不同的任务,例如切换资源或管理应用程序的流量重定向。为了获得更大的灵活性,您可以通过添加子计划来创建家长计划。

每当您创建或更新计划时,区域切换都会执行计划评估,以确保 IAM 权限、资源配置或运行容量没有问题。区域切换定期运行这些评估,并针对它发现的任何问题生成警告。

区域切换还会计算每个计划执行的实际恢复时间值,以协助您评估该计划是否符合您的目标。您可以在 Amazon Web Services 管理控制台的区域切换控制面板中查看恢复时间和有关计划执行的其它详细信息。有关更多信息,请参阅 区域切换控制面板

要了解有关区域切换中各个方面的更多信息,请参阅以下部分。

区域切换计划

区域切换计划是区域切换中的顶级资源。您应将计划范围限定为特定的多区域应用程序。计划使您能够构建工作流程,通过运行一系列区域交换执行区块来恢复应用程序,这些区块可在您指定的区域中激活或停用您的应用程序及其资源,包括跨账户资源。 Amazon Web Services 区域

计划由一个或多个工作流程组成,使您能够激活或停用特定 Amazon Web Services 区域工作流程。您可以将工作流程中的执行块配置为按顺序运行,也可以指定某些块并行运行。

对于您为 active/passive 多区域方法配置的计划,您可以创建一个可用于激活任一区域的工作流程,或者创建两个单独的激活工作流程,每个区域一个。对于您为某种active/active 方法配置的计划,您可以创建一个用于激活您的区域的工作流程和一个用于停用您的区域的工作流程。

Amazon Web Services 区域 是全球 Amazon 集群数据中心的地理位置。从设计而言,每个区域都与其他区域完全隔离,提供容错能力和稳定性。使用区域切换时,您需要考虑您的应用程序部署在哪些区域以及要使用哪些区域进行恢复。

区域切换支持在服务可用的任意两 Amazon Web Services 区域 者之间进行恢复。配置区域切换计划时,需要指定部署应用程序的区域和要使用的恢复方法: active/passive 或active/active。

例如,您可能采用 active/passive 多区域方法,将 us-east-1 作为主要区域,将 us-west-2 作为备用区域。要从影响 us-east-1 中应用程序的操作问题中恢复您的应用程序,您可以执行区域切换计划以激活 us-west-2。这将导致应用程序从 us-east-1 中的资源切换到 us-west-2 中的资源。

区域切换计划使用您创建计划时指定的 IAM 角色相关联的权限。

您可以为每个多区域应用程序创建多个计划,然后通过创建父计划按所需顺序编排这些计划的恢复。父计划是使用区域切换计划执行块作为步骤的计划。计划的层次结构仅限于两个级别(父级和子级),但您可以在同一个父计划下包括多个子计划。

工作流程和执行块

创建区域切换计划后,必须向计划中添加一个或多个工作流程,以定义您希望该计划为应用程序恢复执行的步骤。对于每个工作流程,您可以添加包含执行块的步骤。每个执行块执行特定的恢复操作,例如扩展资源或更新路由控制以重新路由流量。步骤组织这些执行块并控制它们是并行运行还是按顺序运行。通过创建父计划,您还可以协调多个应用程序恢复到您正在激活的区域的顺序。

您可以将执行块组织成工作流程中的步骤。每个步骤可以包含一个或多个并行运行的执行块,您可以安排步骤在工作流程中按顺序运行。此外,根据资源的不同,您可以选择以优雅(计划内)或非优雅(计划外)的执行方式运行执行块。

  • 优雅执行:计划的执行工作流程。当您的环境状况正常时,您可以使用优雅的工作流程来运行所有步骤,以便有序地执行计划。

  • 非优雅执行:计划外执行。非优雅工作流程模式仅使用必要的步骤和操作。此模式要么更改工作流程中执行块的行为,要么跳过特定的执行块。

  • Post-recovery 执行:在成功恢复后运行的工作流程,为未来的区域活动做准备。 Post-recovery 执行可以创建只读副本、通过 Lambda 函数运行自定义逻辑、添加手动批准门以及为复杂的编排嵌入子计划。这些处决要求两个区域都处于健康状态,并在之前受损的区域内运行。

最后,您还可以为执行块配置跨账户资源。首先,您必须按照Cross-account 支持区域切换中的指导配置权限。设置所需的 IAM 角色后,您可以在计划工作流程的执行区块中添加跨账户资源。要添加跨账户资源,在添加步骤时,您需要指定一个具有访问其他 Amazon Web Services 账户资源权限的目标 IAM 角色。您还必须为跨账户角色指定您在信任策略中提供的外部 ID。有关创建所需 IAM 角色的详细信息,请参阅Cross-account 资源权限

要了解有关工作流程的更多信息,请参阅创建区域切换计划工作流程。有关每种执行块类型的详细信息,包括配置步骤、工作原理以及计划评估的内容,请参阅添加执行块

计划评估

计划评估是一个自动流程,区域切换在创建或更新计划时运行,然后在稳定状态下每 30 分钟运行一次。评估过程会验证计划配置和资源配置的几个关键方面。评估包括验证 IAM 权限、资源配置和运行容量。

如果区域切换发现可能阻碍计划成功执行的问题,它会生成计划评估警告,该警告将在控制台的计划详细信息页面上突出显示。您也可以使用亚马逊的计划评估警告 EventBridge,也可以使用区域切换 API 查看警告。有关计划评估 API 的更多信息,请参阅GetPlanEvaluationStatus《亚马逊应用程序恢复控制器 (ARC) 区域切换 API 参考指南》

您可以在计划详细信息页面的计划评估选项卡中查看计划评估出现的问题的详细信息和建议的补救措施。我们建议您同时通过执行区域切换计划来测试应用程序恢复,并且不要仅仅依靠区域切换计划评估来测试恢复计划能否按预期运行。

自动计划执行报告

区域切换可以自动为计划执行生成全面的 PDF 报告,以帮助您满足监管合规性要求。这些报告为您的灾难恢复测试和实际恢复事件提供证据,包括详细的执行时间表、计划配置和资源状态。

当您为计划配置自动生成报告时,区域交换机会在每次计划执行完成后创建 PDF 报告,并将其交付到您指定的 Amazon S3 存储桶。报告通常在执行完成后 30 分钟内可用。S3 存储费用适用。

每份报告包括:

  • 包含服务概述和报告创建日期的执行摘要

  • 按执行时存在的配置详细信息进行规划

  • 详细的执行时间表,包括步骤、受影响的资源和状态

  • 执行开始时出现的计划警告

  • 亚马逊 CloudWatch 警报状态和相关警报的警报历史记录

  • 有关父计划、子计划的配置和执行的详细信息

  • 术语和概念词汇表

要启用自动生成报告,请在创建或更新计划时配置报告输出目的地。您还必须确保计划的执行 IAM 角色拥有将报告写入您的 Amazon S3 存储桶和访问生成报告内容所需的资源所需的必要权限。有关所需权限的更多信息,请参阅自动计划执行报告权限

您可以查看报告生成状态,并从控制台的计划执行详细信息页面下载已完成的报告。如果报告生成遇到错误,例如权限不足或 Amazon S3 存储桶配置错误,区域切换会提供错误详细信息以帮助您解决问题。

计划评估会持续验证您的报告配置,包括验证执行角色是否具有所需的 IAM 权限。如果区域交换机检测到会妨碍成功生成报告的配置问题,它会生成警告,您可以在计划详细信息页面上查看这些警告。

区域警报和实际恢复时间

区域切换会计算每次计划执行的实际恢复时间值,您可以在计划执行后查看该值。实际恢复时间显示在计划执行详细信息页面上,因此您可以将实际时间与创建计划时指定的恢复时间目标进行比较。

实际恢复时间是根据计划执行完成所花费的总时间以及您配置的特定亚马逊 CloudWatch 警报返回绿色状态之前经过的任何额外时间计算的。

为了支持计算计划执行的准确实际恢复时间,您必须为区域切换计划配置区域亚马逊 CloudWatch 警报,以提供有关您的应用程序在每个区域的运行状况的信号。执行计划时,区域切换会使用这些应用程序运行状况警报来确定您的应用程序何时恢复正常。然后,Region Switch根据您配置的应用程序运行状况警报,根据执行计划所花费的时间加上应用程序恢复正常所需的时间,计算实际恢复时间。

在向区域切换计划添加 CloudWatch 警报之前,请确保您制定了正确的 IAM 政策。有关更多信息,请参阅 CloudWatch 应用程序运行状况权限警报