本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用映像生成器导入经过验证的 Windows ISO 磁盘映像
Windows 操作系统 ISO 文件是一个磁盘映像文件,其中包含特定版本 Windows 操作系统的完整安装包。微软提供官方的Windows操作系统ISO文件供下载,可以直接从其网站下载,也可以通过授权经销商下载。为避免潜在的恶意软件或未经授权的版本,请从可信的合法来源获取 ISO 文件。
EC2 映像生成器使用build-image-from-iso导入工作流程导入 ISO 磁盘文件并从中创建辅助卷。配置完成后,映像生成器会拍摄其在导入过程中创建的卷的快照,并使用它来创建亚马逊系统映像 (AMI)。
导入 ISO 磁盘映像的安全注意事项
您提供的 ISO 磁盘映像为输出 AMI 提供操作系统。在导入过程中,映像生成器会挂载 ISO 并应用其包含的 Windows 映像。
导入过程运行从 ISO 和应用的 Windows 映像解析的可执行文件。这些可执行文件在构建实例上以 SYSTEM 权限运行,使用您为导入指定的基础架构配置中的实例配置文件角色。
由于 ISO 提供操作系统,因此获取真实媒体是您的责任。来自不可信来源的 ISO 可能会影响输出 AMI 以及您从中启动的任何实例。从微软或授权经销商处获取 ISO 文件。
针对基础架构配置启动导入的权限包括在该配置的实例配置文件角色下运行的能力。Image Builder 会在您创建基础架构配置iam:PassRole时进行评估,而不是在您开始导入时进行评估。我们建议您仅向您信任的具有实例配置文件角色的委托人授予开始导入的权限。
有关更多信息,请参阅 数据保护和 AWS 映像生成器中的责任共担模型。
导入 ISO 磁盘映像支持的操作系统
映像生成器支持以下 Windows 操作系统 ISO 磁盘映像:
-
Windows 11 企业版 25H2 (x64)
-
Windows 11 企业版 24H2 (x64)
-
Windows 11 企业版 23H2 (x64)
映像生成器不支持以下 Windows 操作系统 ISO 磁盘映像:
-
Long-Term 服务频道 (LTSC) 图片
-
通过 Windows 媒体创建工具创建的 ISO 磁盘映像
-
评估图片
导入 ISO 磁盘映像的先决条件
注意
在导入过程中,编译实例会从亚马逊 S3 下载 AWS 驱动程序、EC2Launch v2 和系统管理器代理,并从公共互联网下载微软 Defender
构建实例从运行导入的同一 AWS 区域 区域 Amazon S3 存储桶中下载 AWS 驱动程序。由于这些流量停留在该区域内,因此 Amazon S3 Gateway 终端节点足以在任何区域下载驱动程序。
但是,无论哪个地区,微软Defender都需要公共互联网访问才能下载。如果构建实例无法访问互联网,则导入仍会成功,但不会在输出 AMI 上安装 Microsoft Defender。
有关所需的最低 VPC 终端节点和 S3 URL 的列表,请参阅私有 VPC 的最低网络要求。
要导入 ISO 磁盘映像,必须满足以下先决条件:
-
磁盘映像的操作系统必须是映像生成器支持的操作系统。有关支持的操作系统的列表,请参阅导入 ISO 磁盘映像支持的操作系统。
-
为确保你可以导入 ISO 镜像,请从微软 365 管理中心下载该镜像。
-
在运行导入过程之前,您必须将您的 AWS 账户 ISO 磁盘文件上传到导入 AWS 区域 所在位置的 Amazon S3。
-
文件扩展名在导入过程中区分大小写,必须
.ISO区分大小写。如果您的文件扩展名为小写,请运行以下命令之一对其进行重命名: -
Microsoft 许可不会自动包含在导入中。您必须自备许可证 (BYOL)。有关微软软件许可的更多信息,请参阅亚马逊网络服务和微软常见问题解答页面上的
许可。 -
导入过程使用两个单独的 IAM 角色:
- 执行角色
-
此角色授予Image Builder AWS 服务 在导入过程中代表您调用的权限。
重要
我们建议您不要将AWSServiceRoleForImageBuilder服务相关角色作为执行角色传递。相反,创建自定义 IAM 角色并附加EC2ImageBuilderExecutionPolicy AWS 托管策略。此政策授予的权限与映像生成器 AWS 服务 代表您调用所需的权限相同。使用自定义角色可以完全控制映像生成器使用的权限。它还可以使您的服务控制策略 (SCP) 和资源控制策略 (RCP) 在 Image Builder 代表您执行的操作中保持有效。
- 实例配置文件角色
-
此角色授予服务在 EC2 实例上执行操作的权限。您可以在基础设施配置资源中指定实例配置文件角色。将以下托管策略附加到您的实例配置文件角色,以确保您拥有导入过程所需的所有权限:
该EC2InstanceProfileForImageBuilder策略包括构建实例用于下载您的 ISO 文件的
s3:GetObject权限。此访问权限适用于您自己的账户中具有 ISO 文件扩展名的对象。因此,您无需为 ISO 授予额外的 Amazon S3 权限。注意
我们建议您仅向实例配置文件角色授予导入所需的权限。导入过程在此角色下以 SYSTEM 权限运行 ISO 和应用的 Windows 映像中的可执行文件。您授予的任何其他权限也适用于这些可执行文件。
有关更多信息,请参阅 管理 Image Builder 基础设施配置、EC2InstanceProfileForImageBuilder policy 和 导入 ISO 磁盘映像的安全注意事项。
可选的导入设置
导入 ISO 磁盘映像时,您可以选择配置以下设置。这些设置控制导入映像的安全启动、UEFI 数据和映像索引选择。
- 安全启动
-
安全启动是一项 UEFI 安全功能,可确保在启动过程中仅运行可信软件。默认情况下,为 ISO 磁盘映像导入启用安全启动。如果您需要使用自定义的未签名驱动程序进行测试或旧版应用程序兼容性,则可以禁用 Secure Boot。
- 自定义 UEFI 数据
-
您可以将自定义 UEFI 数据 blob 作为 Base64-encoded 字符串提供,以供在启动过程中使用,而不是映像生成器生成的默认 UEFI 数据。只有在启用 “安全启动”(默认)时,才能指定自定义 UEFI 数据。数据最多可为 64 KB。
你可以使用网站上的 python-uefivars 工具检查和修改 UEF
I 数据。 GitHub 有关更多信息,请参阅 Amazon EC2 实例的 UEFI 变量。 - 图像索引
-
Windows ISO 文件可以包含具有多个图像索引的
.wim文件,其中每个索引代表不同的 Windows 版本(例如,家庭版或专业版)。默认情况下,映像生成器使用 ISO 文件中的第一个有效图像索引。您可以指定基于一个的图像索引,以从多版本 ISO 文件中选择特定版本。
将 ISO 磁盘映像导入映像生成器
在开始导入过程之前,请确保您已满足所有要求先决条件。
导入过程会在您的映像上安装以下软件和驱动程序:
-
EC2Launch v2
-
AWS Systems Manager 代理人
-
AWS NVMe 驱动程序
-
AWS ENA 网络驱动程序
-
AWS PCI 串行驱动程序
-
EC2 Windows 实用程序驱动程序
-
微软卫士更新套件
导入过程会对您的映像进行以下配置更新:
-
将系统配置为使用亚马逊时间服务器。
选择一个选项卡来查看您的首选方法的导入步骤:
从输出 AMI 启动实例
现在,您可以将输出 AMI 用作常规 AMI 并从中启动实例。当你从输出 AMI 启动实例时,Windows 操作系统会运行 Sysprep Specialization 来完成实例配置。
注意
本页描述的网络要求仅适用于导入构建过程。成功完成导入后,从输出 AMI 启动实例将遵循标准 Amazon EC2 联网要求。成功导入并不能保证实例成功启动——您的启动可能仍会失败,具体取决于您的网络配置。
私有 VPC 的最低网络要求
所需的 VPC 端点:
| 端点 | Type | 用途 |
|---|---|---|
com.amazonaws. |
网关 | 访问 Amazon S3 存储桶(EC2Launch v2、SSM 代理、 AWS 驱动程序和您的 ISO) |
com.amazonaws. |
接口 | 创建快照并描述卷 |
com.amazonaws. |
接口 | 将编译日志写入 CloudWatch 日志 |
com.amazonaws. |
接口 | SSM API 调用 (SendCommand, DescribeInstanceInformation) |
com.amazonaws. |
接口 | SSM 代理数据通道(接收命令、发送输出) |
com.amazonaws. |
接口 | SSM 代理消息轮询 |
导入期间访问的 Amazon S3 端点:
-
https://ec2-windows-drivers-downloads-{region}.s3.dualstack.{region}.amazonaws.com/NVMe/Latest/AWSNVMe.zip -
https://ec2-windows-drivers-downloads-{region}.s3.dualstack.{region}.amazonaws.com/ENA/Latest/AwsEnaNetworkDriver.zip -
https://ec2-windows-drivers-downloads-{region}.s3.dualstack.{region}.amazonaws.com/AWSPCISerialDriver/Latest/AWSPCISerialDriver.zip -
https://ec2-windows-drivers-downloads-{region}.s3.dualstack.{region}.amazonaws.com/EC2WinUtil/Latest/EC2WinUtil.zip -
https://amazon-ec2launch-v2-{region}.s3.dualstack.{region}.amazonaws.com/windows/amd64/latest/AmazonEC2Launch.msi -
https://amazon-ssm-{region}.s3.{region}.amazonaws.com/latest/windows_amd64/AmazonSSMAgentSetup.exe
注意
在中us-east-1,驱动程序存储桶名称没有区域后缀。编译实例ec2-windows-drivers-downloads.s3.dualstack.us-east-1.amazonaws.com改为从中下载驱动程序。在这两种情况下,存储桶与导入位于同一区域,因此 Amazon S3 网关终端节点就足够了。
这表示导入在私有子网中运行所需的最低配置。根据您的 VPC 设置和预期结果,您可能需要额外的网络配置来允许构建实例和 VPC 终端节点之间的流量。
后续步骤
您可以像使用任何其他 AMI 一样使用输出 AMI,直接从中启动实例,或者在 Image Builder 中将其用作基础映像来进一步构建和自定义。有关更多信息,请参阅 使用 Image Builder 创建自定义映像。
排除 ISO 磁盘映像导入故障
如果您的 ISO 磁盘映像导入失败,您可以使用亚马逊 CloudWatch 日志来确定导入错误的地方。构建完成后,映像生成器将构建 CloudWatch 日志流式传输到日志。要查找要导入的日志,请使用以下日志组和直播,ImageName替换为您提供的图像名称:
LogGroup: /aws/imagebuilder/ImageName
LogStream: ImageVersion/ImageBuildVersion
有关日志中镜像生成器 CloudWatch 日志的更多信息,请参阅使用 Amazon 日志监控 Image Builder CloudWatch 日志。有关其它故障排除指南,请参阅Image Builder 问题疑难解答。