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

使用 VM Import/Export 将实例作为 VM 导出

当您要在您的现场虚拟化环境中部署您的 Amazon EC2 实例的副本时,导出 VM 会很有用。您可以将大部分 EC2 实例导出到 Citrix Xen、Microsoft Hyper-V 或 VMware vSphere。

重要

当您导出实例时,会针对您存储所导出 VM 所用的存储桶按照标准 Amazon S3 费率向您收费。此外,对 Amazon EBS 快照的临时使用也会产生少量费用。有关 Amazon S3 定价的更多信息,请参阅 Amazon Simple Storage Service 定价

如果您使用的是 VMware vSphere,也可以使用 AWS Connector for vCenter 从 Amazon EC2 导出 VM。有关更多信息,请参阅 AWS Management Portal for vCenter 用户指南 中的导出迁移的 Amazon EC2 实例

先决条件

要从 Amazon EC2 导出 VM,首先必须满足以下先决条件。

  • 在实例上安装 AWS CLI。有关更多信息,请参阅 AWS Command Line Interface 用户指南

  • 创建 Amazon S3 存储桶用于存储导出的实例或者选择 Amazon S3 存储桶。有关更多信息,请参阅 Amazon Simple Storage Service 控制台用户指南

  • 向您的 S3 存储桶附加一个访问控制列表 (ACL),其中应包含以下授权。有关更多信息,请参阅 Amazon Simple Storage Service 开发人员指南 中的使用 ACL 管理访问

    • 对于 Grantee,请提供相应的特定区域规范账户 ID:

      Middle East (Bahrain)

      aa763f2cf70006650562c62a09433f04353db3cba6ba6aeb3550fdc8065d3d9f

      亚太地区(香港)

      97ee7ab57cc9b5034f31e107741a968e595c0d7a19ec23330eae8d045a46edfb

      中国(北京)

      834bafd86b15b6ca71074df0fd1f93d234b9d5e848a2cb31f880c149003ce36f

      AWS GovCloud (US-West)

      af913ca13efe7a94b88392711f6cfc8aa07c9d1454d4f190a624b126733a5602

      所有其他区域

      c4d8eabf8db69dbe46bfe0e517100c554f01200b104d59cd408e777ba442a322

    • READ 权限

    • WRITE 权限

使用 VM Export 时的注意事项

导出实例和卷受下列限制:

  • 如果 VM 包含 AWS 提供的第三方软件,则无法导出它。例如,VM Export 无法导出 Windows 或 SQL Server 实例或通过 AWS Marketplace 中的映像创建的任何实例。

  • 您必须将实例和卷导出为您的虚拟化环境支持的以下映像格式之一:

    • 启动虚拟装置 (OVA),该格式可与 VMware vSphere 版本 4、5 和 6 相兼容。

    • 虚拟硬盘 (VHD),该格式可与 Citrix Xen 和 Microsoft Hyper-V 虚拟化产品兼容。

    • 流优化型 ESX 虚拟机磁盘 (VMDK),该格式可与 VMware ESX 和 VMware vSphere 版本 4、5 和 6 相兼容。

  • 您无法导出 Amazon EBS 数据卷。

  • 您不能导出具有多个虚拟磁盘的实例。

  • 您不能导出具有多个网络接口的实例。

  • 如果您从另一 AWS 账户共享实例,则不能从 Amazon EC2 导出它。

  • 在每个区域,您最多可以同时进行五个导出任务。

  • 不支持卷大小超过 1 TiB 的 VM。

  • 您可以将卷导出到未加密的 S3 存储桶或者导出到使用 SSE-S3 加密的存储桶。您不能导出到使用 SSE-KMS 加密的 S3 存储桶。

导出实例

要导出实例,请使用 create-instance-export-task 命令。您必须提供必要的信息才能将实例正确地导出为选定的虚拟化格式。导出的文件保存在您指定的 S3 存储桶中。

aws ec2 create-instance-export-task --instance-id id --target-environment target_environment \ --export-to-s3-task DiskImageFormat=disk_image_format,ContainerFormat=ova,S3Bucket=bucket,S3Prefix=prefix

选项

id

实例的 ID。

target_environment

目标环境 (vmware | citrix | microsoft)。

disk_image_format

磁盘映像格式 (VMDK | VHD)。

bucket

S3 存储桶的名称。

前缀

使用下面的 S3 密钥将映像写入到 S3 存储桶中的对象:prefix/export-i-xxxxxxxx.format(例如:my-exports/export-i-12345678.ova)。

监控实例导出过程

要监控实例的导出过程,请使用下面的 describe-export-tasks 命令:

aws ec2 describe-export-tasks --export-task-ids export-i-12345678

取消或停止实例导出过程

在导出操作完成前,您可以使用下面的 cancel-export-task 命令取消或停止实例导出过程。

aws ec2 cancel-export-task --export-task-id export-i-12345678

cancel-export-task 命令会删除所有的导出项目,包括任何未完全创建的 Amazon S3 对象。如果导出任务完成或正在传输最后一个磁盘映像,则该命令将失败且会返回错误。