

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

# 管理 Image Builder 基础设施配置
<a name="manage-infra-config"></a>

您可以使用基础设施配置，以指定 Image Builder 用于构建和测试 EC2 Image Builder 映像的 Amazon EC2 基础设施。基础设施设置包括：
+ 构建和测试基础设施的实例类型。我们建议指定多种实例类型，因为这允许 Image Builder 从具有足够容量的池中启动实例。这可以减少临时的生成失败次数。

  对于 Mac 映像，可能需要选择原生支持 macOS 操作系统的实例类型。有关更多信息，请参阅《Amazon EC2 用户指南》**中的 [Amazon EC2 Mac 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html)。
+ 实例放置设置，您可以在其中指定从映像启动的实例应保存到的主机、主机置放群组或可用区。
+ 实例配置文件为您的构建和测试实例提供执行自定义活动所需的权限。例如，如果您具有一个从 Amazon S3 中检索资源的组件，则实例配置文件需要具有访问这些文件的权限。该实例配置文件还需要具备能使EC2 Image Builder 成功与实例进行通信的最低权限。有关更多信息，请参阅 [准备好使用 Image Builder 构建自定义映像](set-up-ib-env.md)。
+ 管道构建和测试实例的 VPC、子网和安全组。
+ Image Builder 存储构建和测试应用程序日志的 Amazon S3 位置。如果配置日志记录，在基础设施配置中指定的实例配置文件必须具有目标存储桶 (`arn:aws:s3:::BucketName/*`) 的 `s3:PutObject` 权限。
+ 在您的构建失败并且您将 `terminateInstanceOnFailure` 设置为 `false` 时，Amazon EC2 密钥对可以让您登录到实例以进行故障排除。
+ Image Builder 发送事件通知的 SNS 主题。有关 Image Builder 如何与 Amazon SNS 集成的更多信息，请参阅 [Image Builder 中的 Amazon SNS 集成](integ-sns.md)。
**注意**  
如果 SNS 主题已加密，则加密此主题的密钥必须位于 Image Builder 服务运行的账户中。Image Builder 无法向使用其他账户密钥进行加密的 SNS 主题发送通知。

您可以使用 Image Builder 控制台，通过 Image Builder API 或 AWS CLI中的 **imagebuilder** 命令来创建和管理基础设施配置。

**Topics**
+ [列出并查看有关基础设施配置的详细信息](infra-config-details.md)
+ [创建基础设施配置](create-infra-config.md)
+ [更新基础设施配置](update-infra-config.md)
+ [Image Builder 和 AWS PrivateLink 接口 VPC 终端节点](vpc-interface-endpoints.md)

**提示**  
在您具有相同类型的许多资源时，制作标签可帮助您根据分配给特定资源的标签来识别它。有关使用 Image Builder 命令为资源添加标签的更多信息 AWS CLI，请参阅本指南的[标记资源](tag-resources.md)部分。

# 列出并查看有关基础设施配置的详细信息
<a name="infra-config-details"></a>

本部分描述您可以通过多种方式查找有关您的 EC2 Image Builder 基础设施配置的信息和查看详细信息。

**Topics**
+ [从中列出基础架构配置 AWS CLI](#cli-list-infrastructure-configurations)
+ [从中获取基础架构配置的详细信息 AWS CLI](#cli-get-infrastructure-configuration-details)

## 从中列出基础架构配置 AWS CLI
<a name="cli-list-infrastructure-configurations"></a>

以下示例说明了如何使用 AWS CLI中的 **[list-infrastructure-configurations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/list-infrastructure-configurations.html)** 列出所有基础设施配置。

```
aws imagebuilder list-infrastructure-configurations
```

## 从中获取基础架构配置的详细信息 AWS CLI
<a name="cli-get-infrastructure-configuration-details"></a>

以下示例说明如何使用中的**[get-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/get-infrastructure-configuration.html)**命令通过指定基础设施配置的 Amazon 资源名称 (ARN) 来获取基础设施配置的详细信息。 AWS CLI 

```
aws imagebuilder get-infrastructure-configuration --infrastructure-configuration-arn arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration
```

# 创建基础设施配置
<a name="create-infra-config"></a>

本节介绍如何使用 Image Builder 控制台或中的**imagebuilder**命令 AWS CLI 来创建基础架构配置，

------
#### [ Console ]

要从 Image Builder 控制台创建基础设施配置资源，请执行以下步骤：

1. 打开 EC2 Image Builder 控制台，网址为[https://console.aws.amazon.com/imagebuilder/](https://console.aws.amazon.com/imagebuilder/)。

1. 从导航窗格中选择**基础设施配置**。

1. 选择**创建基础设施配置**。

1. 在 **概述** 部分中，输入以下必要信息：
   + 输入基础设施配置资源的**名称**。
   + 选择希望与构建和测试实例上的组件权限实例配置文件关联的 **IAM 角色**。Image Builder 使用这些权限来下载和运行您的组件 CloudWatch、向其上传日志，以及执行配方中组件指定的任何其他操作。

1. 在 **AWS 基础设施**面板中，您可以配置其余可用的基础设施设置。输入以下必要信息：
   + **实例类型**：您可以为此构建指定一个或多个实例类型。该服务将根据可用性选择其中一种实例类型。
**注意**  
Mac 实例运行于专属主机上的 `.metal` 实例类型。您的实例类型必须与为运行它的主机定义的类型之一相匹配。有关 Mac 实例的更多信息以及原生支持 macOS 操作系统的实例类型列表，请参阅《Amazon EC2 用户指南》**中的 [Amazon EC2 Mac 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html)。
   + **SNS 主题（可选）** - 选择一个 SNS 主题来接收来自 EC2 Image Builder 的通知和提醒。

   如果您没有为以下设置提供值，则这些设置将使用特定于服务的默认值（如适用）。
   + **VPC、子网和安全组**：Image Builder 将使用默认 VPC 和子网。有关配置 VPC 接口端点的更多信息，请参阅 [Image Builder 和 AWS PrivateLink 接口 VPC 终端节点](vpc-interface-endpoints.md)。
   + 在**故障排除设置**部分，配置以下值：
     + 默认情况下，**失败时终止实例**复选框为选中状态。但是，构建失败时，您可以登录 EC2 实例排查问题。如果您希望实例在构建失败后继续运行，请清除该复选框。
     + **密钥对**：如果 EC2 实例在构建失败后继续运行，则可以创建密钥对或使用现有密钥对登录实例并排查问题。
     + **日志**：您可以指定一个 S3 存储桶，Image Builder 可以在其中写入应用程序日志，以帮助构建和测试排查问题。如果您未指定 S3 存储桶，Image Builder 会将应用程序日志写入实例。
   + 在**实例元数据设置**部分，您可以配置以下值以应用于 Image Builder 用于构建和测试映像的 EC2 实例：
     + 选择**元数据版本**，确定 EC2 是否要求为元数据检索请求提供签名令牌标头。
       + **V1 和 V2（令牌可选）**：如果您未选择任何内容，则为默认值。
       + **V2（令牌必填）**
**注意**  
我们建议您将 Image Builder 从管道构建中启动的所有 EC2 实例配置为使用， IMDSv2 以便实例元数据检索请求需要签名的令牌标头。
     + **元数据标记响应跃点限制** – 元数据令牌可以传输的网络跃点数。最小跃点数：1，最大跃点数：64，默认为一跃点。
   + 在**实例放置设置**部分，您可以配置以下值以应用于 Image Builder 用于构建和测试映像的 EC2 实例：
     + 您可以选择 Image Builder 在创建映像期间启动实例的**可用区**。
     + （可选）为运行您启动的实例的服务器选择**租赁**。默认情况下，EC2 实例将在共享租赁硬件上运行。这表示多个 AWS 账户 可能会共享相同物理硬件。具有 `dedicated` 租期的实例在单租户硬件上运行。具有 `host` 租期的实例在专属主机上运行。

       在构建自定义映像之前，Mac 实例需要一台作为先决条件创建的专属主机。为您的 macOS 映像选择 `host`。然后，您可以选择目标主机或主机资源组来启动实例，但如果您的专属主机启用了自动置放功能，则不需要这样做。有关更多信息，请参阅《Amazon EC2 用户指南》中的[自动置放](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-understanding.html#dedicated-hosts-auto-placement)。
       + **租赁主机 ID** - 运行实例的专属主机的 ID。
       + **租赁主机资源组** - 要在其中启动实例的主机资源组的 Amazon 资源名称 (ARN)。

1. 在**基础设施标签**部分（可选）中，您可以将元数据标签分配给 Image Builder 在构建过程中启动的 Amazon EC2 实例。输入标签作为键值对。

1. 在**标签**部分（可选）中，您可以将元数据标签分配给 Image Builder 作为输出创建的基础设施配置资源。输入标签作为键值对。

------
#### [ AWS CLI ]

以下步骤说明如何使用 AWS CLI中的 Image Builder **[create-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/create-infrastructure-configuration.html)** 命令为您的映像配置基础设施。步骤 2 中的命令采用您在步骤 1 中创建的文件。对于这些示例，步骤 1 中的文件称为 `create-infrastructure-configuration.json`。

1. 

**创建 CLI 输入 JSON 文件**

   以下示例展示了您可能为基础设施配置创建的 JSON 文件的变体。使用文件编辑工具创建您自己的 JSON 文件。

   **示例 1：用于保留编译失败后的实例的配置**

   此示例指定了两种实例类型，即 `m5.large` 和 `m5.xlarge`。我们建议指定多种实例类型，因为这允许 Image Builder 从具有足够容量的池中启动实例。这可以减少临时的生成失败次数。

   `instanceProfileName` 规定了实例配置文件，该文件用于为实例提供执行自定义活动所需的权限。例如，如果您具有一个从 Amazon S3 中检索资源的组件，则实例配置文件需要具有访问这些文件的权限。该实例配置文件还需要具备能使EC2 Image Builder 成功与实例进行通信的最低权限。有关更多信息，请参阅 [准备好使用 Image Builder 构建自定义映像](set-up-ib-env.md)。

   ```
   {
       "name": "ExampleInfraConfigDontTerminate",
       "description": "An example that will retain instances of failed builds",
       "instanceTypes": [
           "m5.large", "m5.xlarge"
       ],
       "instanceProfileName": "myIAMInstanceProfileName",
       "securityGroupIds": [
           "sg-12345678"
       ],
       "subnetId": "sub-12345678",
       "logging": {
           "s3Logs": {
               "s3BucketName": "my-logging-bucket",
               "s3KeyPrefix": "my-path"
           }
       },
       "keyPair": "myKeyPairName",
       "terminateInstanceOnFailure": false,
       "snsTopicArn": "arn:aws:sns:us-west-2:123456789012:MyTopic"
   }
   ```

**示例 2：具有自动置放功能的 macOS 配置**  
此示例为专属主机启用了自动置放功能的 Mac 实例指定实例类型和置放位置。

   ```
   {
      "name": "macOSInfraConfigAutoPlacement",
      "description": "An example infrastructure configuration for macOS.",
      "instanceProfileName": "EC2InstanceProfileForImageBuilder",
      "instanceTypes": ["mac1.metal, mac2.metal"],
      "terminateInstanceOnFailure": false,
      "placement": {
         "tenancy": "host"
      }
   }
   ```

**示例 3：指定了主机 ID 的 macOS 配置**  
此示例为以特定专属主机为目标的 Mac 实例指定实例类型和置放位置。

   ```
   {
      "name": "macOSInfraConfigHostPlacement",
      "description": "An example infrastructure configuration for macOS.",
      "instanceProfileName": "EC2InstanceProfileForImageBuilder",
      "instanceTypes": ["mac2-m1ultra.metal"],
      "terminateInstanceOnFailure": false,
      "placement": {
         "tenancy": "host",
         "hostId" : "h-1234567890abcdef0"
      }
   }
   ```

1. 

**当您运行以下命令时，使用您作为输入而创建的文件。**

   ```
   aws imagebuilder create-infrastructure-configuration --cli-input-json file://create-infrastructure-configuration.json
   ```

------

# 更新基础设施配置
<a name="update-infra-config"></a>

本节介绍如何使用 Image Builder 控制台或中的**imagebuilder**命令 AWS CLI 来更新基础设施配置资源。要跟踪资源，可以应用标签，如下所示。输入标签作为键值对。
+ *资源标签*将元数据标签分配给 Image Builder 在构建过程中启动的 Amazon EC2 实例。
+ *标签*将元数据标签分配给 Image Builder 作为输出创建的基础设施配置资源。

------
#### [ Console ]

您可以从 Image Builder 控制台编辑以下基础设施配置详细信息：
+ 基础设施配置的**描述**。
+ 将 **IAM 角色** 与实例配置文件关联。
+ **AWS 基础架构**，包括**实例类型**和通知的 **SNS 主题**。
+ **VPC、子网和安全组**。
+ **问题排查设置**（包括**失败时终止实例**、用于连接的**密钥对**以及用于存储实例日志的可选 S3 存储桶位置）。

要通过 Image Builder 控制台更新基础设施配置资源，请执行以下步骤：

**配置选择现有的 Image Builder 基础设施配置**

1. 打开 EC2 Image Builder 控制台，网址为[https://console.aws.amazon.com/imagebuilder/](https://console.aws.amazon.com/imagebuilder/)。

1. 要查看您账户下的基础设施配置资源列表，请从导航窗格中选择**基础设施配置**。

1. 要查看详细信息或编辑基础设施配置，请选择**配置名称**链接。此操作将打开基础设施配置的详细视图。
**注意**  
您也可以选中**配置名称**旁边的框，然后选择**查看详细信息**。

1. 在**基础设施详细信息**面板的右上角，选择**编辑**。

1. 准备保存对基础设施配置所做的更新时，请选择**保存更改**。

------
#### [ AWS CLI ]

以下示例展示了如何使用 AWS CLI中的 Image Builder **[update-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/update-infrastructure-configuration.html)** 命令更新映像的基础设施配置。

1. 

**创建 CLI 输入 JSON 文件**

   此基础设施配置示例使用的设置与创建示例相同，仅仅将 `terminateInstanceOnFailure` 设置更新为 `false`。运行 **update-infrastructure-configuration** 命令后，使用此基础设施配置的管道将在构建失败时终止构建和测试实例。

   使用文件编辑工具创建一个 JSON 文件，其中包含以下示例中显示的密钥，以及对您的环境有效的值。此示例使用名为 `update-infrastructure-configuration.json` 的文件：

   ```
   {
   "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration",
   "description": "An example that will terminate instances of failed builds",
   "instanceTypes": [
       "m5.large", "m5.2xlarge"
   ],
   "instanceProfileName": "myIAMInstanceProfileName",
   "securityGroupIds": [
       "sg-12345678"
   ],
   "subnetId": "sub-12345678",
   "logging": {
       "s3Logs": {
           "s3BucketName": "my-logging-bucket",
           "s3KeyPrefix": "my-path"
       }
   },
   "terminateInstanceOnFailure": true,
   "snsTopicArn": "arn:aws:sns:us-west-2:123456789012:MyTopic"
   }
   ```

1. 

**当您运行以下命令时，使用您作为输入而创建的文件。**

   ```
   aws imagebuilder update-infrastructure-configuration --cli-input-json file://update-infrastructure-configuration.json
   ```

------

# Image Builder 和 AWS PrivateLink 接口 VPC 终端节点
<a name="vpc-interface-endpoints"></a>

您可以通过创建*接口 VPC 端点*在 VPC 和 EC2 Image Builder 之间建立私有连接。接口端点由一项技术提供支持 [AWS PrivateLink](https://aws.amazon.com/privatelink/)，该技术使您 APIs 无需互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接即可私密访问 Image Builder。您的 VPC 中的实例不需要公有 IP 地址即可与 Image Builder 通信 APIs。VPC 和 Image Builder 之间的流量不会脱离 Amazon 网络。

每个接口端点均由子网中的一个或多个[弹性网络接口](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)表示。创建新映像时，可以在基础设施配置中指定 VPC 子网 ID。

**注意**  
您从 VPC 内访问的每项服务都有自己的接口端点和自己的端点策略。Image Builder 下载 AWSTOE 组件管理器应用程序并访问 S3 存储桶中的托管资源以创建自定义映像。要授予访问这些存储桶的权限，您必须更新 S3 端点策略以允许访问。有关更多信息，请参阅 [访问 S3 存储桶的自定义策略](#vpc-endpoint-policy-s3)。

有关 VPC 端点的更多信息，请参阅 *Amazon VPC 用户指南*中的[接口 VPC 端点 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。

## Image Builder VPC 端点的注意事项
<a name="vpc-endpoint-considerations"></a>

请务必先查看 *Amazon VPC 用户指南*中的[接口端点属性和限制](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#vpce-interface-limitations)，然后再为 Image Builder 设置接口 VPC 端点。

Image Builder 支持从 VPC 调用它的所有 API 操作。

## 为 Image Builder 创建接口 VPC 端点
<a name="vpc-endpoint-create"></a>

要为 Image Builder 服务创建 VPC 终端节点，您可以使用亚马逊 VPC 控制台或 AWS Command Line Interface (AWS CLI)。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint)。

使用以下服务名称为 Image Builder 创建 VPC 端点：
+ com.amazonaws。 *region*.imagebuilder

如果为终端节点启用私有 DNS，则可以使用其默认 DNS 名称作为区域，向 Image Builder 发送 API 请求，例如：`imagebuilder.us-east-1.amazonaws.com`。要查找适用于您的目标区域的端点，请参阅 [*Amazon Web Services 一般参考* 中的 EC2 Image Builder 端点和配额](https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html#imagebuilder_region)。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[通过接口端点访问服务](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#access-service-though-endpoint)。

## 为 Image Builder 创建 VPC 端点策略
<a name="vpc-endpoint-policy"></a>

您可以为 VPC 端点附加控制对 Image Builder 的访问的端点策略。该策略指定以下信息：
+ 可执行操作的主体。
+ 可执行的操作。
+ 可对其执行操作的资源。

如果您在配方中使用 Amazon 托管的组件，则 Image Builder 的 VPC 端点必须允许访问以下服务拥有的组件库：

`arn:aws:imagebuilder:region:aws:component/*`

**重要**  
将非默认策略应用于 EC2 Image Builder 的接口 VPC 终端节点时，某些失败的 API 请求（例如失败的请求）可能不会记录到 AWS CloudTrail 或 Amazon CloudWatch。`RequestLimitExceeded`

有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Controlling access to services with VPC endpoints](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)。

### 访问 S3 存储桶的自定义策略
<a name="vpc-endpoint-policy-s3"></a>

Image Builder 使用公开可用的 S3 存储桶来存储和访问托管的资源，例如组件。它还会从单独的 S3 存储桶下载 AWSTOE 组件管理应用程序。如果您在环境中使用 Amazon S3 的 VPC 端点，则需要确保您的 S3 VPC 端点策略允许 Image Builder 访问以下 S3 存储桶。每个 AWS 区域 (*region*) 和应用程序环境 (*environment*) 的存储桶名称都是唯一的。Image Builder 并 AWSTOE 支持以下应用程序环境：`prod``preprod`、和`beta`。
+  AWSTOE 组件管理器存储桶：

  ```
  s3://ec2imagebuilder-toe-region-environment
  ```

  **示例：**s3://ec2 imagebuilder-toe-us-west -2-prod/\$1
+ Image Builder 托管资源存储桶：

  ```
  s3://ec2imagebuilder-managed-resources-region-environment/components
  ```

  **示例：**s3://ec2 imagebuilder-managed-resources-us-west-2-prod/components/\$1

### VPC 端点策略示例
<a name="vpc-endpoint-policy-examples"></a>

本节包括自定义 VPC 端点策略的示例。

**Image Builder 操作的常规 VPC 端点策略**  
以下是拒绝删除 Image Builder 映像和组件的权限的 Image Builder 终端节点策略示例。示例策略还授予执行所有其他 EC2 Image Builder 操作的权限。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "imagebuilder:*",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteImage",
            "Effect": "Deny",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteComponent",
            "Effect": "Deny",
            "Resource": "*"
        }
    ]
}
```

------

**按组织限制访问权限，允许访问托管组件**  
以下端点策略示例说明了如何对属于您组织的身份和资源的访问权限进行限制，以及如何提供对 Amazon 托管的 Image Builder 组件的访问权限。将*region**principal-org-id*、和，替换*resource-org-id*为贵组织的价值观。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsByOrgsIdentitiesToOrgsResources",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalOrgID": "principal-org-id",
                    "aws:ResourceOrgID": "resource-org-id"
                }
            }
        },
        {
            "Sid": "AllowAccessToEC2ImageBuilderComponents",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "imagebuilder:GetComponent"
            ],
            "Resource": [
                "arn:aws:imagebuilder:us-east-1:aws:component/*"
            ]
        }
    ]
}
```

------

**访问 Amazon S3 存储桶的 VPC 端点策略**  
以下 S3 端点策略示例显示了如何提供对 Image Builder 用于构建自定义映像的 S3 存储桶的访问权限。*environment*用贵组织的价值观替换*region*和。根据您的应用程序要求向策略添加任何其他必需的权限。

**注意**  
对于 Linux 映像，如果您未在映像配方中指定用户数据，Image Builder 会添加一个脚本，用于在映像的构建和测试实例上下载和安装 Systems Manager Agent。要下载代理，Image Builder 会访问您的构建区域的 S3 存储桶。  
为确保 Image Builder 可以引导构建和测试实例，请在 S3 端点策略中添加以下额外资源：  
"`arn:aws:s3:::amazon-ssm-region/*`"

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowImageBuilderAccessToAppAndComponentBuckets",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "s3:GetObject"
      ],
      "Resource": [
        "arn:aws:s3:::ec2imagebuilder-toe-region-environment/*",
        "arn:aws:s3:::ec2imagebuilder-managed-resources-region-environment/components/*"
      ]
    }
  ]
}
```

------