View a markdown version of this page

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

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

Lambda 事件源映射执行块

Lambda 事件源映射执行块允许您在恢复操作中启用或禁用 Lambda 事件源映射。事件源映射是 Lambda 资源,它们从事件源(例如亚马逊 Kinesis、Amazon DynamoDB Streams、亚马逊简单队列服务和适用于 Apache Kafka 的亚马逊托管流媒体(亚马逊 MSK)(亚马逊 MSK)中读取,并使用批量记录调用 Lambda 函数。

注意

此执行块仅管理事件源映射。此执行块不支持 Lambda 触发器,即来自 Amazon S3、Amazon 简单通知服务和亚马逊简单电子邮件服务等服务的服务端事件驱动的调用。

配置

可以将此模块配置为一次对一个事件源映射资源执行一项操作(启用或禁用)。

要配置 Lambda 事件源映射执行块,请输入以下值。

重要

在配置执行块之前,请确保计划的执行角色具有正确的 IAM 策略。有关更多信息,请参阅 Lambda 事件源映射执行区块示例策略。

  1. 步骤名称:输入名称。

  2. 步骤描述(可选):输入步骤的描述。

  3. 操作:选择在此步骤运行时是启用还是禁用事件源映射。

  4. 在以下情况下@@ 启用或禁用 Lambda 事件源映射 ARN activating/deactivatingRegion-1:输入事件源映射 ARN,以便在您执行操作时执行操作。 activate/deactivate Region-1

  5. 在以下情况下@@ 启用或禁用 Lambda 事件源映射 ARN activating/deactivatingRegion-2:输入事件源映射 ARN,以便在您执行操作时执行操作。 activate/deactivate Region-2

  6. 超时:输入超时值。

  7. 不雅执行:选择是否在非优雅(计划外)执行期间跳过此执行块。如果您不选择跳过该屏蔽,则区域切换将在不雅的执行期间执行配置的操作。

然后,选择保存步骤。

事件源映射必须位于计划所针对的其中一个区域中。但是,您正在激活的区域和对事件源映射进行操作的区域不需要匹配。

例如,要在激活另一个区域时禁用停用该区域的事件处理,请执行以下操作:

  • 激活us-west-2时要禁用的事件源映射 ARN:. arn:aws:lambda:us-east-1:123456789012:event-source-mapping:uuid-1

  • 激活us-east-1时要禁用的事件源映射 ARN:. arn:aws:lambda:us-west-2:123456789012:event-source-mapping:uuid-2

此块支持优雅和非优雅的执行模式。Ungraceful 模式专为计划外故障切换场景而设计。当该步骤配置为在停用区域中执行操作时,通常可以允许在此执行块上进行不雅的执行期间跳过该步骤。在故障转移期间,您可能需要停止处理停用 Region 中的事件,然后在激活 Region 时开始处理。为此,您需要按顺序设置两个 Lambda 事件源映射执行块:一个用于在停用 Region 时禁用事件源映射资源,另一个用于在激活区域时启用事件源映射资源。

工作原理

Lambda 事件源映射执行块可启用或禁用 Lambda 函数上的事件源映射。在计划执行期间调用该区块时,区域切换会调用 Lambda UpdateEventSourceMapping API 以对指定的 Lambda 事件源映射执行配置的操作(启用或禁用)。然后,区域切换会等到事件源映射达到目标状态并更新此步骤的状态(完成或因失败而暂停),然后再继续计划的下一步。如果映射已处于所需状态,则区域切换会立即将该步骤标记为完成。在非正常执行期间,只有当您将不雅行为配置为跳过时,区域切换才会跳过此步骤。如果您未配置不当行为,则区域切换会按照配置启用或禁用事件源映射。