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 Amazon EC2 API tools, or if you use the VMware vSphere virtualization platform, the AWS Management Portal for vCenter to import a virtual machine (VM) image from your VMware environment. You then specify which Availability Zone and instance type you want to run in Amazon EC2, and VM Import/Export will automatically transfer the image file and create your instance. Once you have imported your VMs, 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. Your instance will be up and running in Amazon EC2 in as little time as it takes to upload your image.*
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 VMware ESX and VMware Workstation VMDK images, Citrix Xen VHD images and Microsoft Hyper-V VHD images for Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Red Hat Enterprise Linux (RHEL) 5.1-5.11, 6.1-6.6, 7.0-7.1 (using Cloud Access), Centos 5.1-5.11, 6.1-6.6, 7.0-7.1, Ubuntu 12.04, 12.10, 13.04, 13.10, 14.04, 14.10, and Debian 6.0.0-6.0.8, 7.0.0-7.2.0. You can export previously imported EC2 instances to VMware ESX VMDK, VMware ESX OVA, Microsoft Hyper-V VHD or Citrix Xen VHD file formats. We plan to support import for additional operating systems, versions and virtualization infrastructure products in the future.
*The time required for VM Import is dependent upon your network connection speed and the size of the virtual machine image being uploaded.
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 Amazon EC2 API tools. To get started, simply:
- Download the VM Import Command Line Tools from Amazon EC2 API tools.
- Import the VMDK, VHD or RAW file via the ec2-import-instance API. The import instance task captures the parameters necessary to properly configure the Amazon EC2 instance properties (instance size, availability zone, and security groups) and uploads the disk image into Amazon S3.
- If ec2-import-instance is interrupted or terminates without completing the upload, use ec2-resume-import to resume the upload. The import task will resume where it left off.
- Use the ec2-describe-conversion-tasks command to monitor the import progress and obtain the resulting Amazon EC2 instance ID.
- Once your import task is completed, you can boot the Amazon EC2 instance by specifying its instance ID to the ec2-run-instances API.
- Finally, use the ec2-delete-disk-image command line tool to delete your disk image from Amazon S3.
You can export EC2 instances you previously imported using the Amazon EC2 CLI tools:
- 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.
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 software and underlying hardware resources. Your on-premise Microsoft Windows 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.
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 create AMIs from the instance, enabling you to 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 instances from the VM images you have imported. Then, once you have imported your VMs, create Amazon EC2 AMIs from the imported instances. Your new AMIs can then 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. 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.