VM Import/Export enables you to easily import virtual machine images from your existing environment to Amazon EC2 instances and export them back to your on-premises environment. This offering allows you to leverage your existing investments in the virtual machines that you have built to meet your IT security, configuration management, and compliance requirements by bringing those virtual machines into Amazon EC2 as ready-to-use instances. You can also export imported instances back to your on-premises virtualization infrastructure, allowing you to deploy workloads across your IT infrastructure.

VM Import/Export is available at no additional charge beyond standard usage charges for Amazon EC2 and Amazon S3.

To import your images, use the AWS CLI or other developer tools to import a virtual machine (VM) image from your VMware environment. If you use the VMware vSphere virtualization platform, you can also use the AWS Management Portal for vCenter to import your VM. As part of the import process, VM Import will convert your VM into an Amazon EC2 AMI, which you can use to run Amazon EC2 instances. Once your VM has been imported, you can take advantage of Amazon’s elasticity, scalability and monitoring via offerings like Auto Scaling, Elastic Load Balancing and CloudWatch to support your imported images.

You can export previously imported EC2 instances using the Amazon EC2 API tools. You simply specify the target instance, virtual machine file format and a destination S3 bucket, and VM Import/Export will automatically export the instance to the S3 bucket. You can then download and launch the exported VM within your on-premises virtualization infrastructure.

You can import Windows and Linux VMs that use VMware ESX or Workstation, Microsoft Hyper-V, and Citrix Xen virtualization formats. And you can export previously imported EC2 instances to VMware ESX, Microsoft Hyper-V or Citrix Xen formats. For a full list of supported operating systems, versions, and formats, please consult the VM Import section of the Amazon EC2 User Guide. We plan to add support for additional operating systems, versions and formats in the future.

VM Import/Export offers several ways to import your virtual machine into Amazon EC2.

The first method is to import your VM image using the AWS CLI tools. To get started, simply:

  • Download and install the AWS Command Line Interface.
  • Verify that your VM satisfies the prerequisites for VM Import, prepare it for import, and export it from its current environment as an OVA file (or VMDK, VHD, or RAW).
  • Upload the VM image to S3 using the AWS CLI. Multi-part uploads will provide improved performance. As an alternative, you can also send the VM image to AWS using the AWS Import service.
  • Once the VM image is uploaded, import your VM using the ec2 import-image command. As part of this command, you can specify the licensing model and other parameters for your imported image.
  • Use the ec2 describe-import-image-tasks command to monitor the import progress.
  • Once your import task is completed, you can use the ec2 run-instances command to create an Amazon EC2 instance from the AMI generated during the import process.

You can export EC2 instances you previously imported using the Amazon EC2 CLI tools:

  • Download and install the EC2 Command Line Interface.
  • Export the instance using the ec2-create-instance-export-task command. The export command captures the parameters necessary (instance ID, S3 bucket to hold the exported image, name of the exported image, VMDK, OVA or VHD format) to properly export the instance to your chosen format. The exported file is saved in an S3 bucket that you previously created.
  • Use ec2-describe-export-tasks to monitor the export progress.
  • Use ec2-cancel-export-task to cancel an export task prior to completion.


Alternatively, if you use the VMware vSphere virtualization platform, you can use the AWS Management Portal for vCenter, which provides you a simple graphical user interface to import your virtual machines. You can learn more about the AWS Management Portal for vCenter here.

In general, when you import your Microsoft Windows VM images into Amazon EC2, AWS will provide the appropriate Microsoft Windows Server license key for your imported instance. Hourly EC2 instance charges cover the Microsoft Windows Server software and underlying hardware resources. Your on-premise Microsoft Windows Server license key will not be used by EC2 and you are free to reuse it for other Microsoft Windows VM images within your on-premise environment. You are responsible for complying with the terms of your agreement(s) with Microsoft.

If you export an Amazon EC2 instance, access to the Microsoft Windows Server license key for that instance is no longer available through AWS. You will need to reactivate and specify a new license key for the exported VM image after it is launched in your on-premise virtualization platform.

When you import Red Hat Enterprise Linux (RHEL) VM images, you can use license portability for your RHEL instances. With license portability, you are responsible for maintaining the RHEL licenses for imported instances, which you can do using Red Hat Cloud Access. More information about Cloud Access subscriptions for Red Hat Enterprise Linux is available from Red Hat. Please contact Red Hat to verify your eligibility.

Migrate your existing VM-based applications and workloads to Amazon EC2. Using VM Import, you can preserve the software and settings that you have configured in your existing VMs, while benefiting from running your applications and workloads in Amazon EC2. Once your applications and workloads have been imported, you can run multiple instances from the same image, and you can create Snapshots to backup your data. You can use AMI and Snapshot copy to replicate your applications and workloads around the world. You can change the instance types that your applications and workloads use as their resource requirements change. You can use CloudWatch to monitor your applications and workloads after you have imported them. And you can take advantage of AutoScaling, Elastic Load Balancing, and all of the other Amazon Web Services to support your applications and workloads after you have migrated them to Amazon EC2.

Copy your existing VM image catalog to Amazon EC2. If you use a catalog of approved VM images, a common practice in Enterprise computing environments, VM Import enables you to copy your image catalog to Amazon EC2, which will create Amazon EC2 AMIs from your VMs, which will serve as your image catalog within Amazon EC2. Your existing software, including products that you have installed like anti-virus software, intrusion detection systems, and more, can all be imported along with your VM images.

Import your on-premises VM images to Amazon EC2 for backup and disaster recovery contingencies. VM Import will store the imported images as Elastic Block Store-backed AMIs so they’re ready to launch in Amazon EC2 when you need them. In the event of a contingency, you can quickly launch your instances to preserve business continuity while simultaneously exporting them to rebuild your on-premises infrastructure. You only pay for Elastic Block Store charges until you decide to launch the instances. Once launched, you pay normal Amazon EC2 service charges for your running instances. If you choose to export your instances, you will pay normal S3 storage charges.

VM Import/Export is a feature of Amazon EC2 and is available at no additional charge, aside from normal Amazon EC2 service fees. Amazon S3 and EBS storage is utilized during the import and export process and is billed separately.