Exporting Amazon EC2 Instances
If you have previously imported an instance into Amazon EC2, you can use the command line tools to export that instance to Citrix Xen, Microsoft Hyper-V, or VMware vSphere. Exporting an instance that you previously imported is useful when you want to deploy a copy of your EC2 instance in your on-site virtualization environment.
If you're using VMware vSphere, you can also use the AWS Connector for vCenter to export a VM from Amazon EC2. For more information, see Exporting a Migrated Amazon EC2 Instance in the AWS Management Portal for vCenter User Guide.
VM Export Prerequisites
Before you begin the process of exporting a VM from Amazon EC2, you must be aware of the operating systems and image formats that AWS supports, and understand the limitations on exporting instances and volumes.
To import or export a VM from Amazon EC2, you must also install the CLI tools:
For more information about installing the Amazon EC2 CLI, see the Amazon EC2 Command Line Reference.
For more information about installing the AWS CLI, see the AWS Command Line Interface User Guide. For more information about the Amazon EC2 commands in the AWS CLI, see ec2 in the AWS Command Line Interface Reference.
Known Limitations for Exporting a VM from Amazon EC2
Exporting instances and volumes is subject to the following limitations:
You can have up to five export tasks per region in progress at the same time.
You cannot export Amazon Elastic Block Store (Amazon EBS) data volumes.
You cannot export an instance or AMI that has more than one virtual disk.
You cannot export an instance or AMI that uses a fixed Virtual Hard Disk (VHD).
You cannot export an instance or AMI that has more than one network interface.
You cannot export an instance or AMI from Amazon EC2 unless you previously imported it into Amazon EC2 from another virtualization environment.
You cannot export an instance or AMI from Amazon EC2 if you've shared it from another AWS account.
Exporting Image Formats from Amazon EC2
AWS supports the following image formats for exporting both volumes and instances from Amazon EC2. Make sure that you convert your output file to the format that your VM environment supports:
Open Virtual Appliance (OVA) image format, which is compatible with VMware vSphere versions 4 and 5.
Virtual Hard Disk (VHD) image format, which is compatible with Citrix Xen and Microsoft Hyper-V virtualization products.
Stream-optimized ESX Virtual Machine Disk (VMDK) image format, which is compatible with VMware ESX and VMware vSphere versions 4 and 5 virtualization products.
Export an Instance
You can use the Amazon EC2 CLI to export an instance. If you haven't installed the CLI already, see Setting Up the Amazon EC2 Tools.
The ec2-create-instance-export-task command gathers all of the information necessary (e.g., instance ID; name of the Amazon S3 bucket that will hold the exported image; name of the exported image; VMDK, OVA, or VHD format) to properly export the instance to the selected virtualization format. The exported file is saved in the Amazon S3 bucket that you designate. VM Export supports the export of Dynamic Virtual Hard Disks (VHDs). Fixed VHDs are not supported.
Note
When you export an instance, you are charged the standard Amazon S3 rates for the bucket where the exported VM is stored. In addition, a small charge reflecting temporary use of an Amazon EBS snapshot might appear on your bill. For more information about Amazon S3 pricing, see Amazon Simple Storage Service (S3) Pricing.
To export an instance
Create an Amazon S3 bucket for storing the exported instances. The Amazon S3 bucket must grant Upload/Delete and View Permissions access to the [email protected] account. For more information, see Creating a Bucket and Editing Bucket Permissions in the Amazon Simple Storage Service Console User Guide.
Note
Instead of the [email protected] account, you can use region-specific canonical IDs. The Amazon S3 bucket for the destination image must exist and must have WRITE and READ_ACP permissions granted to the following region-specific accounts using their canonical ID:
China (Beijing): 834bafd86b15b6ca71074df0fd1f93d234b9d5e848a2cb31f880c149003ce36f
AWS GovCloud (US) : af913ca13efe7a94b88392711f6cfc8aa07c9d1454d4f190a624b126733a5602
For more information, see Amazon Elastic Compute Cloud (Amazon EC2) in the AWS GovCloud (US) User Guide.
All other regions: c4d8eabf8db69dbe46bfe0e517100c554f01200b104d59cd408e777ba442a322
At a command prompt, type the following command:
ec2-create-instance-export-taskinstance_id-etarget_environment-fdisk_image_format-ccontainer_format-bs3_bucketinstance_idThe ID of the instance you want to export.
target_environmentVMware, Citrix, or Microsoft.
disk_image_formatVMDK for VMware or VHD for Microsoft Hyper-V and Citrix Xen.
Note
VM Export only supports Dynamic Virtual Hard Disks (VHDs). Fixed VHDs are not supported.
container_formatOptionally set to OVA when exporting to VMware.
s3_bucketThe name of the Amazon S3 bucket to which you want to export the instance.
To monitor the export of your instance, at the command prompt, type the following command, where
task_idis the ID of the export task:ec2-describe-export-taskstask_id
Cancel or Stop the Export of an Instance
You can use the Amazon EC2 CLI to cancel or stop the export of an instance up to the point of completion. The ec2-cancel-export-task command removes all artifacts of the export, including any partially created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.
To cancel or stop the export of an instance
At the command prompt, type the following command, where
task_id is the ID of the export task:
ec2-cancel-export-task task_id
