

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

# 亚马逊 EventBridge 集成到 Image Builder 中
<a name="integ-eventbridge"></a>

Amazon EventBridge 是一项无服务器事件总线服务，您可以使用它来连接您的 Image Builder 应用程序与其他 AWS 服务应用程序的相关数据。在中 EventBridge，规则匹配传入的事件并将其发送到目标进行处理。一条规则可以将一个事件发送到多个目标，然后这些事件并行运行。

借 EventBridge助，您可以自动执行 AWS 服务 并自动响应系统事件，例如应用程序可用性问题或资源更改。来自 AWS 服务 的事件以近乎实时 EventBridge 的方式传送到。您可以设置对传入事件做出响应的规则以启动操作。例如，当 EC2 实例的状态从待处理变为正在运行时，发送事件到 Lambda 函数。这些被称为*模式*。要基于事件模式创建规则，请参阅[ EventBridge 《亚马逊 EventBridge 用户指南》中的创建对事件做出反应](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html)*的亚马逊*规则。

可自动触发的操作包括：
+ 调用一个 AWS Lambda 函数
+ 调用 Amazon EC2 Run Command
+ 将事件中继到 Amazon Kinesis Data Streams
+ 激活 AWS Step Functions 状态机
+ 通知 Amazon SNS 主题或 Amazon SQS 队列

您还可以为默认事件总线设置调度规则，使其定期执行操作，例如运行 Image Builder 管道以每季度刷新一次映像。有两种类型的计划表达式：
+ **cron 表达式** — 以下 cron 表达式示例将任务安排在每天中午 (UTC\$10) 运行：

  `cron(0 12 * * ? *)`

  有关将 cron 表达式与一起使用的更多信息 EventBridge，请参阅 A *mazon EventBridge 用户*[指南中的 Cron 表达式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html#eb-cron-expressions)。
+ **rate 表达式** — 以下 rate 表达式示例将任务安排为每 12 小时运行一次：

  `rate(12 hour)`

  有关在中使用费率表达式的更多信息 EventBridge，请参阅 *Amazon EventBridge 用户指南*中的[费率表达式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html#eb-rate-expressions)。

有关 EventBridge 规则如何与 Image Builder 图像管道集成的更多信息，请参阅[在 Image Builder 管道中使用 EventBridge 规则](ev-rules-for-pipeline.md)。

## Image Builder 发送的事件消息
<a name="integ-eb-event-summary"></a>

当 Image Builder 资源的状态发生重大变化 EventBridge 时，Image Builder 会向其发送事件消息。例如，当映像的状态发生变化时。以下示例显示了 Image Builder 可能发送的典型 JSON 事件消息。

**Topics**
+ [EC2 Image Builder Image State Change](#eb-event-state-change)
+ [EC2 Image Builder CVE Detected](#eb-event-cve-detected)
+ [EC2 Image Builder Workflow Step Waiting](#eb-event-wf-step-waiting)
+ [EC2 Image Builder 镜像管道自动禁用](#eb-event-pipeline-disabled)

### EC2 Image Builder Image State Change
<a name="eb-event-state-change"></a>

在映像创建过程中，当映像资源的状态发生变化时，Image Builder 会发送此事件。例如，当映像状态从一种状态变为另一种状态时，如下所示：
+ 从 `building` 到 `testing`
+ 从 `testing` 到 `distribution`
+ 从 `testing` 到 `failed`
+ 从 `integrating` 到 `available`

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "detail-type": "EC2 Image Builder Image State Change",
    "source": "aws.imagebuilder",
    "account": "111122223333",
    "time": "2024-01-18T17:50:56Z",
    "region": "us-west-2",
    "resources": ["arn:aws:imagebuilder:us-west-2:111122223333:image/cmkencryptedworkflowtest-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222/1.0.0/1"],
    "detail": {
        "previous-state": {
            "status": "TESTING"
        },
        "state": {
            "status": "AVAILABLE"
        }
    }
}
```

### EC2 Image Builder CVE Detected
<a name="eb-event-cve-detected"></a>

如果您为映像启用了 CVE 检测，则每当完成映像扫描时，Image Builder 都会发送一条包含扫描结果的消息。

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "detail-type": "EC2 Image Builder CVE Detected",
    "source": "aws.imagebuilder",
    "account": "111122223333",
    "time": "2023-03-01T16:59:09Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:imagebuilder:us-east-1:111122223333:image/test-image/1.0.0/1",
        "arn:aws:imagebuilder:us-east-1:111122223333:image-pipeline/test-pipeline"
    ],
    "detail": {
        "resource-id": "i-1234567890abcdef0",
        "finding-severity-counts": {
            "all": 0,
            "critical": 0,
            "high": 0,
            "medium": 0
        }
    }
}
```

### EC2 Image Builder Workflow Step Waiting
<a name="eb-event-wf-step-waiting"></a>

当 `WaitForAction` 工作流步骤暂停以等待异步操作完成时，Image Builder 会发送一条消息。

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "detail-type": "EC2 Image Builder Workflow Step Waiting",
    "source": "aws.imagebuilder",
    "account": "111122223333",
    "time": "2024-01-18T16:54:44Z",
    "region": "us-west-2",
    "resources": ["arn:aws:imagebuilder:us-west-2:111122223333:image/workflowstepwaitforactionwithvalidsnstopictest-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222/1.0.0/1", "arn:aws:imagebuilder:us-west-2:111122223333:workflow/build/build-workflow-a1b2c3d4-5678-90ab-cdef-EXAMPLE33333/1.0.0/1"],
    "detail": {
        "workflow-execution-id": "wf-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
        "workflow-step-execution-id": "step-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "workflow-step-name": "TestAutoSNSStop"
    }
}
```

### EC2 Image Builder 镜像管道自动禁用
<a name="eb-event-pipeline-disabled"></a>

如果您已`autoDisablePolicy`为管道配置了，则 Image Builder 会禁用管道，并在连续调度管道执行失败次数超过策略允许的最大数量 EventBridge 时向其发送事件消息。

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "detail-type": "EC2 Image Builder Image Pipeline Automatically Disabled",
    "source": "aws.imagebuilder",
    "account": "111122223333",
    "time": "2025-09-18T16:54:44Z",
    "region": "us-west-2",
    "resources": ["arn:aws:imagebuilder:us-west-2:111122223333:image-pipeline/disabled-image-pipeline-name"],
    "detail": {
        "consecutive-failures": "5"
    }
}
```