[#AWS] How to perform Lift and Shift migrations on AWS ?

What’s lift and shift cloud migration ? Lift-and-Shift also called rehosting is one of the 

strategies to move workloads to the cloud. Lift-and-shit consists in copying the existing 

applications and data to the cloud with no redesigning or modification, it’s a copy paste 


In 2019 AWS acquired CloudEndure Migration which purpose is to handle data and 

workloads migration on AWS in a managed way. 

In May 2021, AWS made generally available the AWS Application Migration Service, and

recommended it as the primary migration service for lift-and-shift migrations on AWS. 

With AWS Application Migration Service (MGN) you can automate the migration cycle, doing 

less error-prone manual tasks. 

1 – AWS MGN Big picture 

In order to perform a migration using AWS MGN, we need to install the AWS MGN 

Replication Agent on our source (machine that we intend to migrate) and then define 

replication settings in the AWS MGN console, in order to create a vpc, a subnet and a 

lightweight EC2 machine that acts as a replication server. 

Replication servers copy the data from your source servers using the AWS Replication Agent. 

The data are written in the EBS volume in a compressed and encrypted format. 

When performing a cutover, AWS uses your defined launch settings to launch the instances. 

After confirming that your launched instances are operating properly on AWS, you can decommission your source servers.

2 – Getting started with AWS Application Migration Service

1 – Create a replication setting template 

First we create a replication settings template, it mainly consists of a lightweight EC2 

instances that are used to replicate data from your source to AWS. 

2 – Add source servers 

In order to add source servers, you need to install the AWS MGN Replication agent on them. 

you can install the agent on your source machine, by simply downloading the 

aws-replication-installer-init.py than executing it with python 

sudo python3 aws-replication-installer-init.py

After the AWS Replication Agent is installed, the server will be added to AWS MGN console and undergo the initial sync process.​

once this is done you will see the source server in the Source Servers in the AWS MGN console. 

3 – Configure Launch settings : 

The launch settings are a set of instructions that determine how a test or cutover instance 

will be launched for each source server on AWS.

You must configure the launch settings before you launch test or cutover instances.

in the launch tempate we specifiy the instance type, subnet, and EBS volumes

4 – Launch the test instance : 

Before performing a cutover and start the cutover instance, we initially need to test 

that everything goes fine in the test instance. 

So we launch the test instance as shown in the figure below 

By clicking on the test and cutover tab than launch test instance. 

Then we can follow the progress of the migration one the migration dashboard tab  

If everything goes fine during the test we can perform a cutover. 

5 – Launch the cutover instance :

After you have finalized the testing of your source servers, you are ready for a cutover.

It’s best practice to schedule the cutover time in advance. 

After the cutover action is performed, the server is considered migrated, and you should 

redirect your users from your original source servers to the migrated ones.

Do you have a cloud project?