VM Import/Export 要求 - VM Import/Export
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

VM Import/Export 要求

尝试导入 VM 之前,请根据需要采取行动以满足以下要求。您可能还需要准备Amazon环境中通过创建具有适当权限的服务帐户,并且必须准备本地托管的 VM,以便在其导入到之后可以访问。Amazon.

系统要求

在开始之前,您必须了解虚拟机的导入/导出支持的操作系统和映像格式,以及实例和卷的导入限制。

映像格式

VM Import /导出支持下列映像格式用于导入磁盘和 VM:

  • 启动虚拟装置 (OVA) 映像格式,该格式支持将映像与多个硬盘一起导入。

  • 流优化型 ESX 虚拟机磁盘 (VMDK) 映像格式,该格式可与 VMware ESX 和 VMware vSphere 虚拟化产品兼容。

  • 固定和动态虚拟硬盘 (VHD/VHDX) 映像格式,该格式与 Microsoft Hyper-V、Microsoft Azure 和 Citrix Xen 虚拟化产品兼容。

  • 用于导入磁盘和 VM 的 RAW 格式。

操作系统

以下操作系统可以导入并从 Amazon EC2 中导出。有关默认情况下是否启用区域的更多信息,请参阅可用区中的适用于 Linux 实例的 Amazon EC2 用户指南.

Windows(默认情况下启用区域)

  • Microsoft Windows Server 2003(标准版、数据中心版、企业版)和 Service Pack 1 (SP1) 或更高版本(32 位和 64 位)

  • Microsoft Windows Server 2003 R2(标准版、数据中心版、企业版)(32 位和 64 位)

  • Microsoft Windows Server 2008(标准版、数据中心版、企业版)(32 位和 64 位)

  • Microsoft Windows Server 2008 R2(标准版、Web Server、数据中心版、企业版)(仅限 64 位)

  • Microsoft Windows Server 2012(标准版、数据中心版)(仅限 64 位)

  • Microsoft Windows Server 2012 R2(标准版、数据中心版)(仅限 64 位)(不支持安装纳米 Server)

  • Microsoft Windows Server 2016(标准版、数据中心版)(仅限 64 位)

  • Microsoft Windows Server 1709(标准版、数据中心版)(仅限 64 位)

  • Microsoft Windows Server 1803(标准版、数据中心版)(仅限 64 位)

  • Microsoft Windows Server 2019(标准版、数据中心版)(仅限 64 位)

  • Microsoft Windows 7(家庭版、专业版、企业版、旗舰版)(美国英语)(32 位和 64 位)

  • Microsoft Windows 8(家庭版、专业版、企业版)(美国英语)(32 位和 64 位)

  • Microsoft Windows 8.1(专业版、企业版)(美国英语)(仅限 64 位)

  • Microsoft Windows 10(家庭版、专业版、企业版、教育版)(美国英语)(仅限 64 位)

Windows(默认情况下不启用区域)(仅限 64 位)

  • Microsoft Windows Server 2008 R2(标准版、Web Server、数据中心版、企业版)

  • Microsoft Windows Server 2012(标准版、数据中心版)

  • Microsoft Windows Server 2012 R2(标准版、数据中心版)(不支持安装纳米 Server)

  • Microsoft Windows Server 2016(标准版、数据中心版)

  • Microsoft Windows Server 1709(标准版、数据中心版)

  • Microsoft Windows Server 1803(标准版、数据中心版)

  • Microsoft Windows Server 2019(标准版、数据中心版)

  • Microsoft Windows 7(家庭版、专业版、企业版、旗舰版)(美国英语)

  • Microsoft Windows 8(家庭版、专业版、企业版)(美国英语)

  • Microsoft Windows 8.1(专业版、企业版)(美国英语)

  • Microsoft Windows 10(家庭版、专业版、企业版、教育版)(美国英语)

Linux/Unix(仅限 64 位)

  • Amazon Linux 2

  • CentOS 5.1-5.11、6.1-6.8、8.0-8.2

  • Debian 6.0.0-6.0.8、7.0.0-7.8.0、8.0.0

  • Fedora 服务器 19-21

  • 带有 el5uek 内核后缀的甲骨文 Linux 5.10-5.11

  • Oracle Linux 6.1-6.10 使用 RHEL 兼容的内核 2.6.32 或 UEK 内核 3.8.13、4.1.12

  • Oracle Linux 7.0-7.6 使用兼容 RHEL 的内核 3.10.0 或 UEK 内核 3.8.13、4.1.12、4.14.35、4.15、5.4.17

  • 红帽企业 Linux (RHEL) 5.1-5.11、6.1-6.9、7.0-7.9、8.0-8.2

  • 包含服务包 1 和内核 2.6.32.12-0.7 的 SUSE Linux 企业服务器 11

  • 包含服务包 2 和内核 3.0.13-0.27 的 SUSE Linux 企业服务器 11

  • 含 SUSE SUSE Service Pack 3 和内核 3.0.76-0.11、3.0.101-0.8 或 3.0.101-0.15 的 SUSE Linux Enterprise Server 11

  • 包含服务包 4 和内核 3.0.101-63 的 SUSE Linux 企业服务器 11

  • 含有内核的 SUSE Linux Enterprise Server 12 3.12.28-4

  • 含 Service Pack 1 和内核 3.12.49-11 的 SUSE Linux Enterprise Server 12

  • 包含 Service Pack 2 和内核 4.4 的 SUSE Linux 企业服务器 12

  • 包含 Service Pack 3 和内核 4.4 的 SUSE Linux 企业服务器 12

  • 包含服务包 4 和内核 4.12 的 SUSE Linux 企业服务器 12

  • SUSE Linux 企业服务器 12 与服务包 5 和内核 4.12

  • 含有内核 4.12 的 SUSE Linux Enterprise Server 15

  • 包含服务包 1 和内核 4.12 的 SUSE Linux 企业服务器 15

  • 含 Service Pack 2 和内核 5.3 的 SUSE Linux Enterprise Server 15

  • 内核受支持,Ubuntu 12.04、12.10、13.04、14.04、15.04、16.04、16.10、17.04、18.04 和 20.04。例如,Ubuntu 18.04 需要内核 4.15。

卷类型和文件系统

VM Import /导出支持导入具有以下文件系统的 Windows 和 Linux 实例:

Windows

使用 NTFS 文件系统格式化的 MBR 分区卷和 GUID 分区表 (GPT) 分区卷。对于 GPT 分区卷,只支持 VHDX 作为映像格式。

Linux/UNIX

使用 ext2、ext3、ext4、Btrfs、JFS 或 XFS 文件系统格式化的 MBR 分区卷。不支持 Btrfs 子卷。不支持 GUID 分区表 (GPT) 分区卷。

许可选项

在您创建新的 VM Import 任务时,您有两个选项。您可以为指定的值--license-type或者--usage-operation参数。您只能指定其中一个参数的值。为两个参数指定值将返回错误。您可以使用--usage-operation以混合操作系统和 SQL Server 许可证。

指定许可证类型

您可以为指定以下值:--license-type参数:

  • Auto (默认)

    检测源系统操作系统 (OS),并针对已迁移的虚拟机 (VM) 应用相应的许可证。

  • Amazon(包括许可证)

    将源系统许可证替换为Amazon如果适用,在已迁移的 VM 上获得许可证。

  • BYOL

    如果适用,在已迁移的 VM 上保留源系统许可证。

注意

如果您选择了与 VM 不兼容的许可证类型,VM Import 任务将失败,并提供一条错误消息。有关更多信息,请参阅以下的操作系统特定信息。

不设置 --license-type 参数与选择 Auto 效果相同。

例如,要将许可证类型指定为Amazon许可证,运行以下命令:

aws ec2 import-image --license-type aws --disk-containers Format=OVA,Url=S3://bucket_name/sql_std_image.ova

指定用情况操作

重要

Amazon使用您提供的信息在软件版本上盖章。您有责任为您带来的任何许可证输入正确的软件版本信息Amazon.

您可以为指定以下值:--usage-operation参数:

平台详细信息

使用情况操作 **

包括没有 SQL Server 的 Windows 服务器许可证

RunInstances:0002

SQL Server(任何版本)附带的 Windows 服务器许可证 BYOL

RunInstances:0002

包括 SQL Server 标准许可证的 Windows Server 许可证

RunInstances:0006

包括 SQL Server 企业许可证附带的 Windows 服务器许可证 RunInstances:0102
SQL Server Web 许可证包括在内的 Windows Server 许可证 RunInstances:0202
没有 SQL Server 的 Windows 服务器 BYOL RunInstances:0800
带 SQL(任何版本)的 Windows 服务器 BYOL RunInstances:0800
没有 SQL Server 的 Linux/UNIX RunInstances
使用 SQL Server(任何版本)的 Linux/UNIX BYOL RunInstances
含有 SQL Server Enterprise 许可证的 Linux/UNIX RunInstances:0100
含有 SQL Server Standard 许可证的 Linux/UNIX RunInstances:0004
含有 SQL Server Web 许可证的 Linux/UNIX RunInstances:0200

** 如果您正在运行竞价型实例,则 Amazon 成本和使用情况报告上的 lineup/Operation 可能与此处列出的 Usage operation (使用情况操作) 值不同。

例如,要为具有 SQL Server 标准的 Windows 指定使用操作,请运行以下命令:

aws ec2 import-image --usage-operation RunInstances:0006 --disk-containers Format=OVA,Url=S3://bucket_name/sql_std_image.ova

有关账单代码的更多信息,请参阅AMI 账单信息字段.

Linux 许可

Linux 操作系统仅支持 BYOL 许可证。选择 Auto 即表示使用 BYOL 许可证。

已迁移的 Red Hat Enterprise Linux (RHEL) VM 必须使用 Cloud Access (BYOL) 许可证。有关更多信息,请参阅 Red Hat 网站上的 Red Hat Cloud Access

已迁移的 SUSE Linux Enterprise Server VM 必须使用 SUSE 公有云程序 (BYOS) 许可证。有关更多信息,请参阅 SUSE 公有云程序—自带订阅

Windows 许可

Windows Server 操作系统支持 BYOL 或Amazon许可证. Windows 客户端操作系统 (例如 Windows 10) 只支持 BYOL 许可证。

如果选择汽车(默认值),Amazon如果 VM 具有服务器操作系统,则使用许可证。否则将使用 BYOL 许可证。

如果您通过 MSDN 或每用户 Windows 软件保障使用 BYOL Microsoft 许可证,则适用以下规则:

  • 您的 BYOL 实例将以现行 Amazon EC2 Linux 实例定价进行定价,前提是您满足以下条件:

    • 在专用主机上运行 (专用主机)。

    • 使用从源自您提供的软件二进制文件的 VM 中启动AmazonVM Import /导出,这将受当时有效的条款和功能的限制AmazonVM Import/Export。

    • 将实例指定为 BYOL 实例。

    • 在指定的范围内运行实例Amazon地区和地点Amazon提供 BYOL 模型。

    • 使用您提供的或您的密钥管理系统中使用的 Microsoft 密钥进行激活。

  • 您必须考虑的一个实际情况是,在启动 Amazon EC2 实例时,该实例可在可用区内的多台服务器中的任一服务器上运行。这意味着,每次启动 Amazon EC2 实例(包括停止/启动)时,该实例可在可用区内的不同服务器上运行。您还必须考虑有关 Microsoft 文档 批量许可产品协议中所述的许可重新分配的限制,或者查看您的特定使用权利来确定您的权利是否与此使用保持一致。

  • 您必须有资格在您与 Microsoft 签订的协议下 (例如,在您的 MSDN 用户权利下或您的每用户 Windows 软件保障权利下) 使用针对合适的 Microsoft 软件的 BYOL 计划。您单独负责获得所有所需的许可证并遵守所有适用的 Microsoft 许可要求,包括 PUR/PT。此外,您必须已接受 Microsoft 的最终用户许可协议 (Microsoft EULA),并且一旦使用 BYOL 计划下的 Microsoft 软件,即表示您同意 Microsoft EULA。

  • Amazon建议您咨询您自己的法律顾问和其他顾问以了解并遵守适用的 Microsoft 许可要求。不授权也不允许在违反您与 Microsoft 签订的协议的情况下使用服务(包括使用 licenseType 参数和 BYOL 标志)。

限制

  • 如果根分区与 MBR 位于不同的虚拟硬盘驱动器,导入的 VM 可能无法启动。

  • 对于附加有 21 个以上卷的 VM,VM 导入任务将失败。可使用 ImportSnapshot API 分别导入其他磁盘。

  • 不支持导入具有双启动配置的 VM。

  • VM 导入/导出不支持使用原始设备映射 (RDM) 的 VM。仅支持 VMDK 磁盘映像。

  • 导入的 Linux VM 必须使用 64 位映像。不支持迁移 32 位 Linux 映像。

  • 导入的 Linux VM 应使用默认内核以获得最佳结果。使用自定义 Linux 内核的 VM 无法成功迁移。

  • 在准备要导入的 Amazon EC2 Linux VM 时,请确保根卷上有足够的磁盘空间用于安装驱动程序和其他软件。对于 Microsoft Windows VM,请配置固定的页面文件大小并确保根卷上至少有 6 GiB 可用空间。如果 Windows 配置为使用 “自动管理所有驱动器的分页文件大小”,它会创建 16GBpagefile.sys实例 C 驱动器上的文件。

  • 目前不支持多个网络接口。您的 VM 在导入后会拥有一个使用 DHCP 分配地址的虚拟网络接口。您的实例会收到一个私有 IP 地址。

  • 即使子网采用自动分配公有 IP 地址的设置,迁移到 VPC 中的 VM 也不会收到公有 IP 地址。但您可以向自己的账户分配一个弹性 IP 地址并将其关联到您的实例。

  • VM Import /导出仅将 IPv4 地址分配给您的实例。您可以添加 IPv6 地址。

  • 磁盘映像必须小于 16 TiB。对于大于 8 TiB 的磁盘映像,必须使用清单文件.

  • 如果导入与 UEFI 兼容的虚拟机,则无法指定加密,无法指定许可证配置,除非同时指定平台,否则无法指定 EBS 快照。在 Linux 上,必须在 EFI 系统分区上有备用 EFI 二进制文件 BOOTX64 .EFI。在 Windows 上,如果满足以下条件,我们将 GPT 启动卷转换为 MBR:映像格式为 VHDX,未压缩的大小为 2 TiB 或更小,主分区不超过三个,卷不是动态磁盘。

  • 作为 P2V 转换的结果而创建的 VM 不受支持。通过在物理设备上执行 Linux 或 Windows 安装进程,然后将 Linux 或 Windows 安装副本导入虚拟机,从而创建磁盘映像,则会发生 P2V 转换。

  • VM 导入/导出不会安装单个根 I/O 虚拟化 (SR-IOV) 驱动程序,除非导入 Microsoft Windows Server 2012 R2 VM。除非您计划使用提供更高性能 (每秒数据包)、更短延迟和更低抖动的增强联网,否则不需要这些驱动程序。对于 Microsoft Windows Server 2012 R2 VM,会在导入过程中自动安装 SR-IOV 驱动程序。

  • VM 导入/导出不支持 VMware SEparse 增量文件格式。

  • VM 导入/导出不支持紧急救援管理服务 (EMS)。若为源 Windows VM 启用了 EMS,我们将在导入的映像中禁用它。

  • 不支持导入使用 UTF-16 (或非 ASCII ) 字符的 Windows 语言包。我们建议在导入 Windows VM 时使用英语语言包。

  • 当您尝试导出实例时,用于启动该实例的基础 AMI 必须存在。如果您已删除 AMI,则导出将失败。

IAM 用户所需的权限

如果你以Amazon Identity and Access Management(IAM) 用户,您的 IAM 策略中需要以下权限才能使用 VM Import/导出:

注意

某些操作需要使用 Amazon S3 存储桶。此示例策略不会授予创建 Amazon S3 存储桶的权限 IAM 用户需要指定现有存储桶,或者有权创建新存储桶( s3:CreateBucket)。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject" ], "Resource": ["arn:aws:s3:::mys3bucket","arn:aws:s3:::mys3bucket/*"] }, { "Effect": "Allow", "Action": [ "ec2:CancelConversionTask", "ec2:CancelExportTask", "ec2:CreateImage", "ec2:CreateInstanceExportTask", "ec2:CreateTags", "ec2:DescribeConversionTasks", "ec2:DescribeExportTasks", "ec2:DescribeExportImageTasks", "ec2:DescribeImages", "ec2:DescribeInstanceStatus", "ec2:DescribeInstances", "ec2:DescribeSnapshots", "ec2:DescribeTags", "ec2:ExportImage", "ec2:ImportInstance", "ec2:ImportVolume", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances", "ec2:ImportImage", "ec2:ImportSnapshot", "ec2:DescribeImportImageTasks", "ec2:DescribeImportSnapshotTasks", "ec2:CancelImportTask" ], "Resource": "*" } ] }

所需的服务角色

VM Import /导出需要一个角色代表您执行某些操作。您必须创建名为的服务角色vmimport并附带可允许 VM Import /Export 担任相关角色的信任关系策略文档,您还必须将 IAM 策略附加到该角色。有关更多信息,请参阅 。IAM 角色中的IAM 用户指南.

先决条件

您必须启用Amazon Security Token Service(Amazon STS) 在您计划使用 VM Import/Export 的任何区域。有关更多信息,请参阅在 Amazon 区域中激活和停用 Amazon STS

若要创建服务角色

  1. 在您的计算机上创建一个名为 trust-policy.json 的文件。将以下策略添加到该文件中:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] }
  2. 使用create-role命令以创建名为的角色vmimport并授予虚拟机导入/导出访问权限。确保您已指定在上一步中创建的 trust-policy.json 文件的位置的完整路径,并包含 file:// 前缀,如下例所示:

    aws iam create-role --role-name vmimport --assume-role-policy-document "file://C:\import\trust-policy.json"
  3. 创建名为 role-policy.json 的文件并附上以下策略,其中,disk-image-file-bucket 为存储磁盘映像的存储桶,export-bucket 为存储所导出映像的存储桶:

    { "Version":"2012-10-17", "Statement":[ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::disk-image-file-bucket", "arn:aws:s3:::disk-image-file-bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::export-bucket", "arn:aws:s3:::export-bucket/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] }
  4. (可选)导入使用加密的资源Amazon KMS关键来自Amazon Key Management Service将以下权限添加到role-policy.json文件。

    { "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*" }

    如果您使用的 KMS 密钥不是 Amazon EBS 提供的默认密钥,则必须向 KMS 密钥授予 VM 导入/导出权限(如果默认情况下启用 Amazon EBS 加密或在导入操作中启用加密)。您可以指定 KMS 密钥的 Amazon Resource Name (ARN) 作为资源,而不是 *。

  5. (可选)要将许可证配置附加到 AMI,请将以下 License Manager 权限添加到role-policy.json文件。

    { "Effect": "Allow", "Action": [ "license-manager:GetLicenseConfiguration", "license-manager:UpdateLicenseSpecificationsForResource", "license-manager:ListLicenseSpecificationsForResource" ], "Resource": "*" }
  6. 使用下面的 put-role-policy 命令将策略挂载到之前创建的角色。请务必指定 role-policy.json 文件位置的完整路径。

    aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document "file://C:\import\role-policy.json"

虚拟机导出所需的配置

在将 VM 从虚拟化环境中导出之前,请按照以下指南配置您的 VM。

常规

  • 在您将要用于发出导入命令的工作站上安装 Amazon CLI。有关更多信息,请参阅 Amazon Command Line Interface 用户指南中的安装 Amazon Command Line Interface

    提示

    In支持的Amazon Web Services 区域,您还可以使用Amazon CloudShell对于直接从启动的基于浏览器的预先验证外壳Amazon Web Services Management Console.

  • 在您的 VM 上禁用任何反病毒软件或入侵检测软件。可在导入过程完成后重新启用上述服务。

  • 从您的 VMware 虚拟机上卸载 VMware 工具。

  • 断开连接任何 CD-ROM 驱动 (虚拟或实际)。

  • 源 VM 必须有一项功能 DHCP 客户端服务。确保该服务可以启动且未从管理上被禁用。在导入期间会删除当时分配到源 VM 的所有静态 IP 地址。在 Amazon VPC 中启动导入的实例时,该实例会收到一个来自子网 IPv4 地址范围的主要私有 IP 地址。如果您在启动实例时未指定主要私有 IP 地址,我们会在子网的 IPv4 范围内为您选择一个可用的 IP 地址。有关更多信息,请参阅 VPC 和子网大小调整

  • 在导出前,请先关闭您的 VM。

Windows

  • 启用 Remote Desktop (RDP) 以进行远程访问。

  • 如果配置了主机防火墙 (Windows 防火墙或类似防火墙),请确保该防火墙允许访问 RDP。否则,在导入完成后,您将无法访问您的实例。

  • 确保管理员账户和所有其他用户账户使用安全密码。所有账户均须有密码,否则导入可能失败。

  • 在虚拟机上安装 .NET Framework 4.5 或更高版本。我们根据需要在您的 VM 上安装 .NET 框架。

  • 在导入 Windows Server VM 映像之前或之后,您可以在其上运行 System Preparation (Sysprep)。如果您在导入 VM 之前运行 Sysprep,则导入过程将在 VM 中添加一个应答文件 (unattend.xml),以自动接受最终用户许可协议 (EULA) 并将区域设置设为 EN-US。如果选择在导入后运行 Sysprep,我们建议您使用 E2Launch(Windows Server 2016 和更高版本)或 EC2Config(通过 Windows Server 2012 R2)运行 Sysprep。

    用您自己的应答文件替代默认应答文件 (unattend.xml)

    1. 复制下面的示例文件,并将 processorArchitecture 参数设置为 x86amd64,具体取决于您的操作系统架构:

      <?xml version='1.0' encoding='UTF-8'?> <unattend xmlns:wcm='http://schemas.microsoft.com/WMIConfig/2002/State' xmlns='urn:schemas-microsoft-com:unattend'> <settings pass='oobeSystem'> <component versionScope='nonSxS' processorArchitecture='x86 or amd64' name='Microsoft-Windows-International-Core' publicKeyToken='31bf3856ad364e35' language='neutral'> <InputLocale>en-US</InputLocale> <SystemLocale>en-US</SystemLocale> <UILanguage>en-US</UILanguage> <UserLocale>en-US</UserLocale> </component> <component versionScope='nonSxS' processorArchitecture='x86 or amd64' name='Microsoft-Windows-Shell-Setup' publicKeyToken='31bf3856ad364e35' language='neutral'> <OOBE> <HideEULAPage>true</HideEULAPage> <SkipMachineOOBE>true</SkipMachineOOBE> <SkipUserOOBE>true</SkipUserOOBE> </OOBE> </component> </settings> </unattend>
    2. 使用名称 unattend.xml 将文件保存在 C:\Windows\Panther 目录中。

    3. 使用 /oobe/generalize 选项运行 Sysprep。这些选项会从 Windows 安装中删除所有唯一系统信息并提示您重置管理员密码。

    4. 关闭 VM 并从您的虚拟化环境中将其导出。

  • 在您的 Windows VM 上禁用 Autologon。

  • 打开 Control Panel > System and Security > Windows Update。在左窗格中,选择 Change settings。选择所需设置。请注意,如果选择 Download updates but let me choose whether to install them(默认值),则更新检查可能会临时占用实例上 50% 到 99% 的 CPU 资源。检查通常会在实例启动后的几分钟内执行。确保没有等待进行的 Microsoft 更新且计算机未设置成在重启时安装软件。

  • 根据需要应用以下热修复程序:

  • 设置 RealTimeIsUniversal 注册表项。有关更多信息,请参阅 。设置时间中的适用于 Windows 实例的 Amazon EC2 用户指南.

Linux

  • 启用安全外壳 (SSH) 以进行远程访问。

  • 确保您的主机防火墙(例如 Linux iptables)允许访问 SSH。否则在导入完成后,您将无法访问您的实例。

  • 确保您已配置了一个非根用户以使用基于密钥的公共 SSH 在导入您的实例后访问它。使用基于密码的 SSH 和通过 SSH 进行根登录均可行,但不推荐使用。推荐使用公共密钥和非根用户,因为它更安全。VM Import 不配置ec2-user帐户作为导入过程的一部分。

  • 确保您的 Linux VM 将 GRUB (传统 GRUB) 或 GRUB 2 作为其启动加载程序。

  • 确保您的 Linux VM 对根文件系统使用以下选项之一:EXT2、EXT4、Btrfs、JFS 或 XFS。

对 VM 进行程序修改

使用导入虚拟机时ImportImageAPI,Amazon修改文件系统以使导入的 VM 可供客户访问。可以进行以下操作:

  • [Linux] 在 OS 中直接安装 Citrix PV 驱动程序或修改 initrd/initramfs 以包含它们。

  • [Linux] 修改网络脚本以使用动态 IP 替换静态 IP。

  • [Linux] 修改 /etc/fstab、注释掉无效的条目并使用 UUID 替换设备名称。如果找不到设备的匹配 UUID,会在设备描述中添加 nofail 选项。您必须更正设备命名并删除nofail导入后。最佳实践做法是,在准备要导入的 VM 时,建议您使用 UUID 而非设备名称来指定 VM 磁盘设备。

    中的条目/etc/fstab禁用包含非标准文件系统类型(cifs、smbfs、vboxsf、sshfs 等)的文件系统类型。

  • [Linux] 修改默认条目和超时等 GRUB 启动加载程序设置。

  • [Windows] 修改注册表设置以使 VM 可启动。

  • [两者] 为了与提供的图像进行奇偶校验Amazon,Amazon Systems Manager客户端已安装在虚拟机上。

写修改后的文件时,Amazon在新名称下的同一位置保留原始文件。