为温水池活动创建 EventBridge 规则 - Amazon A EC2 uto Scaling

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

为温水池活动创建 EventBridge 规则

以下示例创建了调用编程操作的 EventBridge 规则。每当您的自动扩缩组在有新实例被添加到暖池时发出事件时,都会执行此操作。

在创建规则之前,请创建要将该规则用作目标的 AWS Lambda 函数。您必须将此函数指定为该规则的目标。以下过程仅提供创建规则的步骤,该 EventBridge 规则在新实例进入温池时起作用。有关演示如何创建可在传入的事件与规则匹配时进行调用的简单 Lambda 函数的入门教程,请参阅教程:配置调用 Lambda 函数的生命周期钩子

有关创建和使用暖池的更多信息,请参阅 使用温池减少启动时间较长的应用程序的延迟

创建会调用 Lambda 函数的事件规则
  1. 打开亚马逊 EventBridge 控制台,网址为 https://console.aws.amazon.com/events/

  2. 在导航窗格中,选择规则

  3. 选择创建规则

  4. 对于定义规则详细信息,请执行以下操作:

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

      规则不能与同一区域中的另一个规则和同一事件总线上的名称相同。

    2. 对于事件总线,选择默认。当您的账户 AWS 服务 中的某项生成事件时,它始终会转到您账户的默认事件总线。

    3. 对于规则类型,选择具有事件模式的规则

    4. 选择下一步

  5. 对于 Build event pattern(构建事件模式),执行以下操作:

    1. 对于事件来源,选择AWS 事件或 EventBridge 合作伙伴事件

    2. 对于 Event pattern(事件模式),选择 Custom pattern (JSON editor) [自定义模式(JSON 编辑器)],并将以下模式粘贴到 Event pattern(事件模式)框中,将其中的斜体文本替换为您的自动扩缩组的名称。

      { "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-launch Lifecycle Action" ], "detail": { "AutoScalingGroupName": [ "my-asg" ], "Origin": [ "EC2" ], "Destination": [ "WarmPool" ] } }

      要创建与其他事件匹配的规则,请修改事件模式。有关更多信息,请参阅 示例事件模式

    3. 选择 下一步

  6. 对于 Select target(s)(选择目标),请执行以下操作:

    1. 对于 Target types(目标类型),选择 AWS 服务

    2. 对于 Select a target(选择目标),选择 Lambda function(Lambda 函数)。

    3. 然后,对于 Function(函数),选择要将事件发送到的函数。

    4. (可选)对于 Configure version/alias(配置版本/别名),输入目标 Lambda 函数的版本和别名设置。

    5. (可选)对于 Additional settings(其他设置),视应用程序的情况输入任何其他设置。有关更多信息,请参阅 EventBridge 《亚马逊 EventBridge 用户指南》中的创建对事件做出反应的亚马逊规则

    6. 选择下一步

  7. (可选)对于 Tags(标签),您可以选择向规则分配一个或多个标签,然后选择 Next(下一步)。

  8. 对于 Review and create(检查并创建),检查规则的详细信息并根据需要对其进行修改。然后选择 Create rule(创建规则)。