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

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

在亚马逊的 ARC 中使用区域切换 EventBridge

使用 Amazon EventBridge,您可以设置事件驱动的规则,在亚马逊应用程序恢复控制器 (ARC) 中监控您的区域切换资源,然后启动使用其他 Amazon 服务的目标操作。例如,您可以通过在区域切换计划完成执行时向 Amazon SNS 主题发送信号,来设置发送电子邮件通知的规则。

您可以在 Amazon 中创建规则 EventBridge 来处理以下 ARC 区域切换事件:

  • 执行区域切换计划。该事件指定区域切换计划已运行(已执行)。

  • 区域切换计划评估。该事件表明区域切换计划评估已完成。

要捕获您感兴趣的特定 ARC 事件,请定义 EventBridge 可用于检测事件的特定事件模式。事件模式与它们匹配的事件具有相同的结构。模式引用了您要匹配的字段,并提供您所查找的值。

尽最大努力发出事件。在正常运行情况下,它们几乎实时 EventBridge 地从ARC交付。但是,可能会出现延迟或阻止事件交付的情况。

有关 EventBridge 规则如何与事件模式配合使用的信息,请参阅中的事件和事件模式 EventBridge

使用监控区域切换资源 EventBridge

借 EventBridge助,您可以创建规则,定义 ARC 为区域切换资源发出事件时要采取的操作。

要在 EventBridge 控制台中键入或复制并粘贴事件模式,请在控制台中选择 “Enter my ow n” 选项。为了帮助您确定可能对您有用的事件模式,本主题包括区域切换模式示例

要为资源事件创建规则
  1. 打开亚马逊 EventBridge 控制台,网址为https://console.aws.amazon.com/events/

  2. Amazon Web Services 区域 要在其中创建规则,请选择您创建要监控其事件的计划的区域。

  3. 选择 Create rule (创建规则)

  4. 输入规则的 Name (名称) 和“Description (描述)”(可选)。

  5. 对于事件总线,保留默认值,即默认

  6. 选择下一步

  7. 对于构建事件模式步骤,对于事件源,保留默认值,即 Amazon 事件

  8. 示例事件下,选择输入我自己的

  9. 对于示例事件,键入或复制并粘贴事件模式。有关示例,请参阅下一节。

区域切换模式示例

事件模式与它们匹配的事件具有相同的结构。模式引用了您要匹配的字段,并提供您所查找的值。

您可以将本节中的事件模式复制并粘贴 EventBridge 到中,以创建可用于监控 ARC 操作和资源的规则。

以下事件模式提供了一些示例,您可以在 ARC 中的 EventBridge 区域切换功能中使用这些示例。

  • 从 “区域切换” 中选择所有事件 PlanExecution

    { "source": [ "aws.arc-region-switch" ], "detail-type": [ "ARC Region switch Plan Execution" ] }
  • 从 “区域切换” 中选择所有事件 PlanEvaluation

    { "source": [ "aws.arc-region-switch" ], "detail-type": [ "ARC Region Switch Plan Evaluation" ] }

以下是执行区域切换计划的 ARC 事件示例:

{ "version": "0", "id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn "detail": { "version": "0.0.1", "eventType": "ExecutionStarted", "executionId": "bbbbbbEXAMPLE", "executionAction": "activating/deactivating {region}", "idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging } }

以下是区域切换计划步骤级别执行的 ARC 事件示例:

{ "version": "0", "id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn "detail": { "version": "0.0.1", "eventType": "StepStarted", "executionId": "bbbbbbEXAMPLE", "executionAction": "activating/deactivating {region}", "idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging "stepDetails" : { "stepName": "Routing control step", "resource": ["arn:aws:route53-recovery-control::111122223333:controlpanel/abcdefghiEXAMPLE/routingcontrol/jklmnopqrsEXAMPLE"] } } }

以下是区域切换计划评估警告的 ARC 事件示例。

对于区域切换计划评估,当返回警告时会发出一个事件。如果警告未被清除,则每 24 小时仅针对该警告发出一次事件。清除该事件后,不会针对该警告发出进一步的事件。

{ "version": "0", "id": "05d4d2d5-9c76-bfea-72d2-d4614802adb4", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d"], "detail": { "version": "0.0.1", "idempotencyKey": "1111111-2222-3333-4444-5555555555", "metadata": { "evaluationTime" : "timestamp", "warning" : "There is a plan evaluation warning for arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d. Navigate to the Region switch console to resolve." } } }

指定要用作目标的 CloudWatch 日志组

创建 EventBridge 规则时,必须指定将与该规则匹配的事件发送到哪个目标。有关可用目标的列表 EventBridge,请参阅 EventBridge 控制台中的可用目标。您可以添加到 EventBridge 规则的目标之一是 Amazon CloudWatch 日志组。本节介绍将 CloudWatch 日志组添加为目标的要求,并提供了在创建规则时添加日志组的过程。

要将 CloudWatch 日志组添加为目标,可以执行以下操作之一:

  • 创建新的日志组

  • 选择现有的日志组

如果您在创建规则时使用控制台指定了新的日志组,则 EventBridge 会自动为您创建该日志组。确保用作 EventBridge 规则目标的日志组以开头/aws/events。如果要选择现有的日志组,请注意,只有以开头的日志组才/aws/events会作为选项出现在下拉菜单中。有关更多信息,请参阅 Amazon CloudWatch 用户指南中的创建新日志组

如果您使用控制台之外的 CloudWatch 操作创建或使用 CloudWatch 日志组作为目标,请确保正确设置权限。如果您使用控制台向 EventBridge 规则添加日志组,则该日志组的基于资源的策略会自动更新。但是,如果您使用 Amazon Command Line Interface 或 S Amazon DK 来指定日志组,则必须更新该日志组的基于资源的策略。以下示例策略说明了您必须在基于资源的策略中为日志组定义的权限:

{ "Statement": [ { "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Effect": "Allow", "Principal": { "Service": [ "events.amazonaws.com", "delivery.logs.amazonaws.com" ] }, "Resource": "arn:aws:logs:region:account:log-group:/aws/events/*:*", "Sid": "TrustEventsToStoreLogEvent" } ], "Version": "2012-10-17" }

您无法使用控制台为日志组配置基于资源的策略。要向基于资源的策略添加所需的权限,请使用 CloudWatch PutResourcePolicyAPI 操作。然后,您可以使用 describe-resource-policiesCLI 命令来检查您的策略是否已正确应用。

为资源事件创建规则并指定 CloudWatch 日志组目标
  1. 打开亚马逊 EventBridge 控制台,网址为https://console.aws.amazon.com/events/

  2. 选择 Amazon Web Services 区域 要在其中创建规则的。

  3. 选择 “创建规则”,然后输入有关该规则的任何信息,例如事件模式或计划详细信息。

    有关创建就绪性 EventBridge 规则的更多信息,请参阅使用监控准备情况检查资源 EventBridge

  4. “选择目标” 页面上,选择CloudWatch作为您的目标。

  5. 从下拉菜单中选择一个 CloudWatch 日志组。