

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

# 自定义操作 Lambda 执行块
<a name="custom-action-lambda-block"></a>

自定义操作 Lambda 执行块允许您使用 Lambda 函数向计划添加自定义步骤。

## 配置
<a name="custom-action-lambda-block-config"></a>

要配置 Lambda 执行块，请输入以下值。

**重要**  
在配置执行块之前，请确保您具有正确的 IAM 策略。有关更多信息，请参阅 [自定义操作 Lambda 执行块示例策略](security_iam_region_switch_lambda.md)。

1. **步骤名称：**输入名称。

1. **步骤描述（可选）：**输入步骤的描述。

1. **激活或停用*区域*时要调用的 Lambda 函数 ARN**：指定要在此步骤中运行的 Lambda 函数的 ARN。

1. **运行 Lambda 函数的区域：**在下拉菜单中，选择您想要在其中运行 Lambda 函数的区域。

1. **超时：**输入超时值。

1. **重试间隔：**输入重试间隔，如果在此间隔内没有成功，则重新运行 Lambda 函数。

然后，选择**保存步骤**。

## 工作原理
<a name="custom-action-lambda-block-how"></a>
+ 创建自定义操作 Lambda 执行块时，您需要为要执行的步骤指定两个 Lambda 函数，计划的每个区域有一个函数。
+ 您可以配置希望运行 Lambda 的区域，例如，激活区域或停用区域。但是，如果您在停用区域中执行，该区域会成为依赖项。我们不建议您依赖停用区域。

此块支持优雅和非优雅的执行模式。在非优雅执行模式下，区域切换会跳过 Lambda 执行块步骤。

## 作为计划评估一部分的评估内容
<a name="custom-action-lambda-block-eval"></a>

当区域切换评估您的计划时，会对您的 Lambda 执行块配置和权限执行多项检查。区域切换可验证以下内容是否正确：
+ 配置中指定的 Lambda 函数存在。
+ Lambda 函数的并发设置不受限制，包括验证以下内容：
  + 并发度未设置为 0。
  + 至少有一个并发执行可用，或者存在未预留的并发。

区域切换执行 Lambda 函数的试运行，以验证指定的参数和权限，而无需执行实际的函数逻辑。标准的 Lambda 成本是在您进行试运行时产生的。

区域切换还会验证计划的 IAM 角色是否具有 Lambda 执行所需的权限。有关区域切换执行块所需权限的更多信息，请参阅[用于 ARC 中区域切换的基于身份的策略示例](security_iam_id-based-policy-examples-region-switch.md)。

正确的 IAM 权限对于 Lambda 执行块的正常运行至关重要。如果其中任何一个验证失败，区域切换将返回说明存在问题的警告，并提供特定的错误消息来帮助您解决权限或配置问题。这确保了在计划执行期间此步骤运行时，您的计划具有必要的权限来管理 Lambda 并与之交互。