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

使用 VM Import/Export 将磁盘作为快照导入

VM Import/Export 让您能够将磁盘作为 Amazon EBS 快照导入。您可以从 EBS 快照创建 EBS 卷,然后将其挂载到某个实例。

先决条件

  • 支持以下磁盘格式:虚拟硬盘 (VHD/VHDX)、ESX 虚拟机磁盘 (VMDK)、原始格式。

  • 首先,您必须将磁盘上传到 Amazon S3。

导入磁盘映像

  1. 使用下面的 import-snapshot 命令导入磁盘。您可以指定 S3 存储桶的 URL,或提供 S3 存储桶名称和密钥。

    aws ec2 import-snapshot --description "Windows 2008 VMDK" --disk-container file://containers.json

    文件 containers.json 是一个包含所需信息的 JSON 文档。

    { "Description": "Windows 2008 VMDK", "Format": "vmdk", "UserBucket": { "S3Bucket": "mys3bucket", "S3Key": "vms/Win_2008_Server_Enterprise_R2_64-bit.vmdk" } }

    以下为响应示例:

    { "ImportTaskId": "import-snap-abcd1234", "SnapshotTaskDetail":[ { "DiskImageSize": "0.0", "Progress": "3", "Status": "active", "Description": "Windows 2008 VMDK", "UserBucket": { "S3Bucket": "mys3bucket", "S3Key": "vms/Win_2008_Server_Enterprise_R2_64-bit.vmdk" }, "StatusMessage": "pending" } ], "Description": "Windows 2008 VMDK" }
  2. 使用 describe-import-snapshot-tasks 命令确认快照是否导入成功。

    aws ec2 describe-import-snapshot-tasks --import-task-ids import-snap-fgr1mmg7

    以下为响应示例:所示状态为 active,表明正在导入。

    { "ImportSnapshotTasks": [ { "SnapshotTaskDetail": [ "DiskImageSize": "3.115815424E9", "Progress": "22", "Status": "active", "Description": "Windows 2008 VMDK", "Format": "VMDK", "UserBucket": { "S3Bucket": "mys3bucket", "S3Key: "vms/Win_2008_Server_Enterprise_R2_64-bit.vmdk" } "StatusMessage": "Validated" ], "ImportTaskId": "import-snap-fgr1mmg7", "Description": "Windows 2008 VMDK" } ] }
  3. 使用下面的 create-volume 命令从快照创建卷。您必须选择要将卷挂载到的实例的可用区。

    aws ec2 create-volume --availability-zone us-east-1a -snapshot-id snap-1234567890abcdef0

    下面是示例输出:

    { "AvailabilityZone": "us-east-1a", "VolumeId": "vol-1234567890abcdef0", "State": "creating", "SnapshotId": "snap-1234567890abcdef0" }
  4. 使用下面的 attach-volume 命令将上一步中创建的 EBS 卷挂载到某个现有实例。

    aws ec2 attach-volume --volume-id vol-1234567890abcdef0 --instance-id i-1234567890abcdef0 --device /dev/sdf

    下面是示例输出:

    { "AttachTime": "YYYY-MM-DDTHH:MM:SS.000Z", "InstanceId": "i-1234567890abcdef0", "VolumeId": "vol-1234567890abcdef0", "State": "attaching", "Device": "/dev/sdf" }

取消导入任务

可取消正在进行的导入任务。

取消快照导入任务

  1. 使用 describe-import-snapshot-tasks 命令确定想要取消的导入任务的 ImportTaskId。

    aws ec2 describe-import-snapshot-tasks
  2. 使用 cancel-import-task 命令取消任务。

    aws ec2 cancel-import-task --import-task-id "import-snap-abcd1234"

本页内容: