为 Amazon EC2 Windows Server AMI 配置 EC2 Fast Launch 设置 - Amazon Elastic Compute Cloud

为 Amazon EC2 Windows Server AMI 配置 EC2 Fast Launch 设置

您可以为拥有的 Windows AMI 或通过 AWS Management Console、API、开发工具包、CloudFormation 或 AWS Command Line Interface(AWS CLI)与您共享的 AMI 配置 EC2 Fast Launch。在配置 EC2 Fast Launch 之前,请验证您的 AMI 是否满足创建预置快照所需的所有先决条件。有关更多信息,请参阅 Windows 的 EC2 Fast Launch 先决条件

为 Windows 实例启用快速启动时,Amazon EC2 会进行检查,确保您拥有从指定 AMI 和启动模板(如果提供)启动实例所需的权限,包括加密 AMI 的权限。为防止实例启动过程中出现错误,该服务会在启用 EC2 Fast Launch 之前验证您的权限。如果您没有所需的权限,则服务会返回错误,并且不会启用 EC2 Fast Launch。

EC2 Fast Launch 与 EC2 Image Builder 集成,可帮助您在启用 EC2 Fast Launch 时创建自定义映像。有关更多信息,请参阅《EC2 Image Builder 用户指南》中的在 EC2 快速启动启用时创建 Windows AMI 的分配设置(AWS CLI)

以下部分介绍了 Amazon EC2 控制台和 AWS CLI 的配置步骤。

启用 EC2 Fast Launch

要启用 EC2 Fast Launch,请选择与环境匹配的选项卡,然后按照步骤操作。

注意

要更改这些设置,请确保您的 AMI 和运行所在的区域满足所有 Windows 的 EC2 Fast Launch 先决条件

Console
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,在映像下选择 AMI

  3. 通过选择 Name(名称)旁边的复选框来选择要更新的 AMI。

  4. 从 AMI 列表上方的操作菜单中,选择配置快速启动。这将打开配置快速启动页面,您可以在此页面中配置 EC2 Fast Launch 设置。

  5. 要开始使用预置快照以更快地从 Windows AMI 启动实例,请选择启用 Windows 快速启动复选框。

  6. Set anticipated launch frequency(设置预期的启动频率)下拉列表中,选择一个值以指定为覆盖预期实例启动卷而创建和维护的快照数量。

  7. 完成更改后,选择 Save changes(保存更改)。

注意

如果您需要使用启动模板来指定非默认 VPC,或为 IMDSv2 配置元数据设置,请参阅 在设置 EC2 Fast Launch 时使用启动模板

AWS CLI

enable-fast-launch 命令调用 Amazon EC2 EnableFastLaunch API 操作。

语法:

aws ec2 enable-fast-launch \ --image-id <value> \ --resource-type <value> \ (optional) --snapshot-configuration <value> \ (optional) --launch-template <value> \ (optional) --max-parallel-launches <value> \ (optional) --dry-run | --no-dry-run \ (optional) --cli-input-json <value> \ (optional) --generate-cli-skeleton <value> \ (optional)
例如:

以下 enable-fast-launch 示例将为指定的 AMI 启用 EC2 Fast Launch,这会启动六个并行实例来进行预置。ResourceType 设置为其默认值:snapshot

aws ec2 enable-fast-launch \ --image-id ami-01234567890abcedf \ --max-parallel-launches 6 \ --resource-type snapshot

输出:

{ "ImageId": "ami-01234567890abcedf", "ResourceType": "snapshot", "SnapshotConfiguration": { "TargetResourceCount": 10 }, "LaunchTemplate": {}, "MaxParallelLaunches": 6, "OwnerId": "0123456789123", "State": "enabling", "StateTransitionReason": "Client.UserInitiated", "StateTransitionTime": "2022-01-27T22:16:03.199000+00:00" }
PowerShell

Enable-EC2FastLaunch cmdlet 将调用 Amazon EC2 EnableFastLaunch API 操作,在 Windows AMI 上启用 EC2 Fast Launch。

语法:

Enable-EC2FastLaunch -ImageId <String> -LaunchTemplate_LaunchTemplateId <String> -LaunchTemplate_LaunchTemplateName <String> -MaxParallelLaunch <Int32> -ResourceType <String> -SnapshotConfiguration_TargetResourceCount <Int32> -LaunchTemplate_Version <String> -Select <String> -PassThru <SwitchParameter> -Force <SwitchParameter>
例如:

以下 Enable-EC2FastLaunch 示例将为指定的 AMI 启用 EC2 Fast Launch,这会启动六个并行实例来进行预置。ResourceType 设置为其默认值:snapshot

Enable-EC2FastLaunch ` -ImageId ami-01234567890abcedf ` -MaxParallelLaunch 6 ` -Region us-west-2 ` -ResourceType snapshot

输出:

ImageId : ami-01234567890abcedf LaunchTemplate : MaxParallelLaunches : 6 OwnerId : 0123456789123 ResourceType : snapshot SnapshotConfiguration : Amazon.EC2.Model.FastLaunchSnapshotConfigurationResponse State : enabling StateTransitionReason : Client.UserInitiated StateTransitionTime : 2/25/2022 12:24:11 PM

禁用 EC2 Fast Launch

要禁用 EC2 Fast Launch,请选择与环境匹配的选项卡,然后按照步骤操作。

注意

要更改这些设置,请确保您的 AMI 和运行所在的区域满足所有 Windows 的 EC2 Fast Launch 先决条件

Console
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,在映像下选择 AMI

  3. 通过选择 Name(名称)旁边的复选框来选择要更新的 AMI。

  4. 从 AMI 列表上方的操作菜单中,选择配置快速启动。这将打开配置快速启动页面,您可以在此页面中配置 EC2 Fast Launch 设置。

  5. 清除为 Windows 启用快速启动复选框,禁用 EC2 Fast Launch 并删除预置快照。这将导致 AMI 向前为每个实例使用标准启动流程。

    注意

    禁用 Windows 镜像优化后,任何现有的预置快照都将自动删除。必须先完成此步骤,然后才能再次开始使用该功能。

  6. 完成更改后,选择 Save changes(保存更改)。

AWS CLI

disable-fast-launch 命令调用 Amazon EC2 DisableFastLaunch API 操作。

语法:

aws ec2 disable-fast-launch \ --image-id <value> \ --force | --no-force \ (optional) --dry-run | --no-dry-run \ (optional) --cli-input-json <value> \ (optional) --generate-cli-skeleton <value> \ (optional)
例如:

以下 disable-fast-launch 示例将禁用指定的 AMI 上的 EC2 Fast Launch,并清理现有的预置快照。

aws ec2 disable-fast-launch \ --image-id ami-01234567890abcedf

输出:

{ "ImageId": "ami-01234567890abcedf", "ResourceType": "snapshot", "SnapshotConfiguration": {}, "LaunchTemplate": { "LaunchTemplateId": "lt-01234567890abcedf", "LaunchTemplateName": "EC2FastLaunchDefaultResourceCreation-a8c6215d-94e6-441b-9272-dbd1f87b07e2", "Version": "1" }, "MaxParallelLaunches": 6, "OwnerId": "0123456789123", "State": "disabling", "StateTransitionReason": "Client.UserInitiated", "StateTransitionTime": "2022-01-27T22:47:29.265000+00:00" }
PowerShell

Disable-EC2FastLaunch cmdlet 调用 Amazon EC2 DisableFastLaunch API 操作。

语法:

Disable-EC2FastLaunch -ImageId <String> -ForceStop <Boolean> -Select <String> -PassThru <SwitchParameter> -Force <SwitchParameter>
例如:

以下 Disable-EC2FastLaunch 示例将禁用指定的 AMI 上的 EC2 Fast Launch,并清理现有的预置快照。

Disable-EC2FastLaunch -ImageId ami-01234567890abcedf

输出:

ImageId : ami-01234567890abcedf LaunchTemplate : Amazon.EC2.Model.FastLaunchLaunchTemplateSpecificationResponse MaxParallelLaunches : 6 OwnerId : 0123456789123 ResourceType : snapshot SnapshotConfiguration : State : disabling StateTransitionReason : Client.UserInitiated StateTransitionTime : 2/25/2022 1:10:08 PM

在设置 EC2 Fast Launch 时使用启动模板

您可以使用启动模板配置一组启动参数,Amazon EC2 每次从该模板启动实例时都会使用这些参数。您可以指定用于基础映像的 AMI、实例类型、存储、网络设置等内容。

启动模板是可选的,但以下特定情况除外:在配置更快启动时,必须为 Windows AMI 使用启动模板:

  • 您必须使用启动模板为 Windows AMI 指定非默认 VPC。

  • 如果账户包含对 Amazon EC2 实例强制实施 IMDSv2 的策略,您必须创建一个启动模板来指定元数据配置以强制实施 IMDSv2。

    使用包含 EC2 控制台的元数据配置的启动模板,或在 AWS CLI 中运行 enable-fast-launch 命令,或调用 EnableFastLaunch API 操作。

使用启动模板时,Amazon EC2 EC2 Fast Launch 不支持以下配置。如果您使用启动模板来设置 EC2 Fast Launch,则不得指定以下任何内容:

  • 用户数据脚本

  • 终止保护

  • 禁用元数据

  • 竞价型选项

  • 终止实例的关闭行为

  • 网络接口、弹性图形或竞价型实例请求的资源标签

指定非默认 VPC

步骤 1:创建启动模板

创建一个启动模板,指定 Windows 实例的以下详细信息:

  • VPC 子网。

  • 实例类型为 t3.xlarge

有关更多信息,请参阅 创建 Amazon EC2 启动模板

步骤 2:为 EC2 Fast Launch AMI 指定启动模板

选择与您的流程相匹配的选项卡:

Console

要从 AWS Management Console 指定用于 EC2 Fast Launch 的启动模板,请按以下步骤操作:

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,在映像下选择 AMI

  3. 通过选择 Name(名称)旁边的复选框来选择要更新的 AMI。

  4. 从 AMI 列表上方的操作菜单中,选择配置快速启动。这将打开配置快速启动页面,您可以在此页面中配置 EC2 Fast Launch 设置。

  5. Launch template(启动模板)框执行筛选搜索,在当前区域的账户中查找与您输入的文本相匹配的启动模板。在框中输入完整的启动模板名称或 ID 或其一部分,以显示匹配的启动模板列表。例如,如果您在框中输入 fast,Amazon EC2 会在当前区域中查找您的账户中名称包含“fast”的所有启动模板。

    要创建启动模板,请选择 Create launch template(创建启动模板)。

  6. 当您选择某个启动模板时,Amazon EC2 会在 Source template version(源模板版本)框中显示该模板的默认版本。要指定其他版本,请突出显示要替换的默认版本,然后在框中输入所需的版本号。

  7. 完成更改后,选择 Save changes(保存更改)。

AWS CLI, API

要从 AWS CLI 指定用于 EC2 Fast Launch 的启动模板,需在 AWS CLI 中运行 enable-fast-launch 命令时,在 --launch-template 参数中指定启动模板名称或 ID。

要在 API 请求中指定用于 EC2 Fast Launch 的启动模板,需调用 EnableFastLaunch API 操作时,在 LaunchTemplate 参数中指定启动模板名称或 ID。

有关 EC2 启动模板的更多信息,请参阅在 Amazon EC2 启动模板中存储实例启动参数