

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

# 使用 EC2 启动模板配置 AMI 分配
<a name="dist-using-launch-template"></a>

为了帮助确保 Image Builder AMI 在目标账户和区域中获得一致的启动体验，您可以使用 `launchTemplateConfigurations` 在分配设置中指定 Amazon EC2 启动模板。当分配过程中存在 `launchTemplateConfigurations` 时，Image Builder 会创建新版本的启动模板，其中包含模板中的所有原始设置以及来自构建的新 AMI ID。有关使用启动模板启动 EC2 实例的更多信息，请根据您的目标操作系统参阅下列链接之一。
+ [通过启动模板启动 Linux 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html)
+ [通过启动模板启动 Windows 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html)

**注意**  
当您在映像中包含用于启用 Windows 快速启动的启动模板时，启动模板必须包含以下标签，这样 Image Builder 才能代表您启用 Windows 快速启动。  
`CreatedBy: EC2 Image Builder`

## 通过控制台将 EC2 启动模板添加到 AMI 分配设置
<a name="dist-using-launch-template-console"></a>

要为您的输出 AMI 提供启动模板，请在控制台中执行以下步骤：

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

1. 从导航窗格中，选择**分配设置**。这将显示在您的账户下创建的分配设置列表。

1. 在**分配设置**页面的顶部，选择**创建分配设置**。这将打开**创建分配设置**页面。

1. 在**映像类型**部分，选择 **Amazon Machine Image (AMI)** **输出类型**。这是默认设置。

1. 在**常规**部分中，输入要创建的分配设置资源的**名称**（*必填*）。

1. 在**区域设置**部分，从列表中选择 EC2 启动模板的名称。如果您的账户中没有启动模板，请选择**创建新的启动模板**，这将在 **EC2 控制面板**中打开**启动模板**。

   选中**设置默认版本**复选框，将启动模板的默认版本更新为 Image Builder 使用您的输出 AMI 创建的新版本。

   要向所选区域添加其他启动模板，请选择**添加启动模板配置**。

   要移除启动模板，请选择**移除**。

1. 继续指定所需的任何其他设置，然后选择**创建设置**以创建新的分配设置资源。

## 将 EC2 启动模板添加到 AMI 分发设置中 AWS CLI
<a name="dist-using-launch-template-cli"></a>

本节介绍如何使用启动模板配置分配设置文件，以及如何使用 AWS CLI 中的 **create-image** 命令来构建和分配 Image Builder AMI 以及使用它的启动模板的新版本。

1. 

**配置分配设置文件**

   在使用启动模板创建 Image Builder AMI 之前 AWS CLI，必须先创建一个用于指定`launchTemplateConfigurations`设置的分发配置 JSON 结构。您必须在源区域中指定至少一个 `launchTemplateConfigurations` 条目。

   以下名为 `create-distribution-config-launch-template.json` 的示例文件显示了在源区域中配置启动模板的几种可能场景。

   ```
   {
       "name": "NewDistributionConfiguration",
       "description": "This is just a test",
       "distributions": [
           {
               "region": "us-west-2",
               "amiDistributionConfiguration": {
                   "name": "test-{{imagebuilder:buildDate}}-{{imagebuilder:buildVersion}}",
                   "description": "description"
               },
               "launchTemplateConfigurations": [
                   {
                       "launchTemplateId": "lt-0a1bcde2fgh34567",
                       "accountId": "935302948087",
                       "setDefaultVersion": true
                   },
                   {
                       "launchTemplateId": "lt-0aaa1bcde2ff3456"
                   },
                   {
                       "launchTemplateId": "lt-12345678901234567",
                       "accountId": "123456789012"
                   }
               ]
           }
       ],
       "clientToken": "clientToken1"
   }
   ```

1. 

**创建分配设置**

   要使用中的[create-distribution-configuration](https://docs.aws.amazon.com/cli/latest/reference/imagebuilder/create-distribution-configuration.html)命令创建 Image Builder 分发设置资源 AWS CLI，请在命令中提供以下参数：
   + 在 `--name` 参数中输入分配的名称。
   + 附加您在 `--cli-input-json` 参数中创建的分配配置 JSON 文件。

   ```
   aws imagebuilder create-distribution-configuration --name my distribution name--cli-input-json file://create-distribution-config-launch-template.json
   ```
**注意**  
JSON 文件路径开头必须包含 `file://` 符号。
JSON 文件的路径应遵循运行命令的基本操作系统的相应约定。例如，Windows 使用反斜杠 (\$1) 引用目录路径，而 Linux 和 macOS 使用正斜杠 (/)。

*您也可以使用 `--distributions` 参数直接在命令中提供 JSON。*