Search
StarWind is a hyperconverged (HCI) vendor with focus on Enterprise ROBO, SMB & Edge

Migrate On-Premises Virtual Machines to AWS

  • October 11, 2018
  • 12 min read
Cloud and Virtualization Architect. Paolo is a System Engineer, VCP-DCV, vExpert, VMCE, Veeam Vanguard, and author of the virtualization blog nolabnoparty.com
Cloud and Virtualization Architect. Paolo is a System Engineer, VCP-DCV, vExpert, VMCE, Veeam Vanguard, and author of the virtualization blog nolabnoparty.com

migrate-virtual-machine-aws-01

AWS Server Migration Server (SMS) allows the migration of one or multiple on-premises virtual machines to AWS in an easy way from a single pane of glass.

The SMS service allows to schedule and automate replications needed to easily manage server migrations.

migrate-virtual-machine-aws-02

Setup the environment

Before deploying the required components to migrate virtual machines to AWS, both AWS and vSphere environments must be configured accordingly. Four main steps are required to complete the procedure:

  • Download the AWS Server Migration Service appliance
  • Create a IAM user in AWS used by the connector
  • Configure a user and the role in vCenter Server used by the SMS appliance
  • Deploy and configure the SMS appliance

Create an AWS user and grant permissions

To migrate virtual machines to AWS, you need to create a new IAM user used by the Server Migration Connector to communicate with AWS.

First login to the AWS console.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-03-600x345.jpg

From the AWS console select IAM under Security, Identity & Compliance section to create a new user.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-04-600x233.jpg

Select Users tab and click Add.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-05-600x248.jpg

Specify the User name and select Programmatic access option. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-06-600x348.jpg

Select Add user to group tab then click Create group. Specify a Group Name and select the ServiceMigrationService policy then click Create group.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-07-600x394.jpg

Click Create user.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-08-600x391.jpg

When the user has been created successfully, write down the Access key ID and the Secret access key then click Close.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-09-600x278.jpg

Attach the AWS Server Migration Service role to the created user. Following this guide to create the required role.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-10-600x323.jpg

Configure a new user and role in vCenter Server

To grant the correct permissions to the account used by the Connector, from the vSphere Client click Menu and select Administration to access the Roles management area.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-11-600x580.jpg

Select the Read-only role and click on clone icon.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-12-600x312.jpg

Enter the Role name and a Description then click OK.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-13-600x258.jpg

Select the just created role from the list and click the edit icon.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-14-600x444.jpg

Assign the following permissions to the selected role and click Next when done:

  • Datastore > Browse datastore and Low level file operations
  • vApp > Export
  • Virtual Machine > Snapshot management > Create snapshot and Remove Snapshot
  • Host > Config > System Management

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-15-600x356.jpg

Click Finish to save the configuration.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-16-600x356.jpg

Permissions assigned to the new role.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-17-600x399.jpg

To apply permissions to vCenter Server’s objects, select the vCenter Server to process and go to the Permissions tab. Click on plus icon and specify the User and the Role to use. Enable Propagate to children option then click OK.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-18-600x566.jpg

Deploy the Server Migration Connector appliance

Access the AWS portal and login with your account.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-19-600x380.jpg

Select Server Migration Service under Migration.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-20-600x303.jpg

From the AWS Server Migration Service page click Get Started button.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-21-600x342.jpg

Click Download OVA to download the required vCenter format of the Server Migration Connector appliance.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-22-600x304.jpg

When the download has completed, from vSphere Client right click the cluster/resource pool where to install the appliance and select Deploy OVF Template option.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-23.jpg

Click Choose Files and select the AWS-SMS-Connector.ova file just downloaded from AWS. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-24-600x495.jpg

Specify the Virtual machine name and select a folder then click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-25-600x495.jpg

Select the compute resource then click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-26-600x495.jpg

Click Next to continue.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-27-600x495.jpg

Specify the virtual disk format and the datastore to store the appliance. Click Next to continue.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-28-600x495.jpg

Specify the correct Destination Network to use then click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-29-600x495.jpg

Click Finish to deploy the appliance.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-30-600x495.jpg

When the appliance has been deployed successfully, right click the VM and select Power > Power On.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-31-600x388.jpg

Configure the SMS appliance

From the SMS appliance’s Summary tab, note the IP address assigned to the SMS by the DHCP. By default the SMS appliance is configured to get the IP address via DHCP.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-32-600x290.jpg

Open your favorite browser and type the address https://SMSappliance_IP_Address. Click Get started now button.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-33-600x389.jpg

Accept the EULA and click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-34-600x386.jpg

Enter a New password and click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-35-600x386.jpg

Follow the instructions if you want to configure a static IP address then click Next. The default SMS credentials are the following:

Username: ec2-user
Password: ec2pass

Login to the appliance’s console and run the following command to configure network settings:

In the example a static IP address has been configured.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-37-600x373.jpg

Select Automatically upgrade the AWS connector when new versions are available to keep the appliance always up-to-date. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-38-600x388.jpg

Choose the Region for SMS and enter the Access key and the Secret key of the IAM account previously created. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-39-600x274.jpg

Specify the vCenter Host Name and Username/Password of the account used to connect the vCenter Server. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-40-600x440.jpg

Click Trust to validate the certificate.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-41.jpg

The SMS Connector has been configured successfully. Click on Go to connector dashboard button.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-42-600x171.jpg

The SMS Connector dashboard.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-43-600x388.jpg

Import the server catalog

From the AWS console, click on Server Migration Service under the Migration section.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-44-600x326.jpg

Go to Connectors tab and click Import server catalog to create a list of VMs in the specified vCenter Server.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-45-600x276.jpg

Click Import to proceed.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-46-600x216.jpg

When the import procedure has completed, a list of virtual machines currently running in the vCenter Server is displayed.

Migrate virtual machines to AWS

When the import process has completed, from the Servers tab select the virtual machines you want to replicate to AWS. Click Create replication job.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-47-600x393.jpg

Specify the License type then click Next. Available license types are the following:

  • Auto – the source OS is detected and the appropriate license is applied to the migrated VM
  • AWS – an aws license is assigned to the migrated VM if appropriated
  • BYOL – the source-system license is retained on the migrated VM if appropriated

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-48-600x413.jpg

Configure replication settings and specify the IAM service role to use created at the beginning of the procedure. Click Next.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-49-600x413.jpg

Click Create to replicate the selected VM to AWS.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-50-600x413.jpg

The configured replication job begins. Click View replication jobs button to see replicated VMs.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-51-600x413.jpg

Replication details can be displayed by selecting the active replica.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-52-600x417.jpg

When the migration has completed successfully, an AMI ID is created. Select the migrated VM and click on Actions > Launch instance from latest AMI to run the VM.

https://nolabnoparty.com/wp-content/uploads/2018/10/migrate-virtual-machine-aws-53-600x269.jpg

The VM can be launched also from the EC2 dashboard in the Images > AMIs section.

Using this procedure, the migration of multiple on-premises virtual machines to AWS can be performed in an easy way.

 

Found Paolo’s article helpful? Looking for a reliable, high-performance, and cost-effective shared storage solution for your production cluster?
Dmytro Malynka
Dmytro Malynka StarWind Virtual SAN Product Manager
We’ve got you covered! StarWind Virtual SAN (VSAN) is specifically designed to provide highly-available shared storage for Hyper-V, vSphere, and KVM clusters. With StarWind VSAN, simplicity is key: utilize the local disks of your hypervisor hosts and create shared HA storage for your VMs. Interested in learning more? Book a short StarWind VSAN demo now and see it in action!