DEV Community


Posted on

AWS Migration Strategies

Image description

AWS Application Migration Strategies

AWS provides seven common migration strategies. We can call it as seven R’s. Since each application is unique, enterprises often use multiple strategies based on separate applications.


A customer’s application is brought to AWS without changes to the operating system or database management system (DBMS). It is simply moved to Amazon Elastic Compute Cloud (Amazon EC2) instances. It moves workloads “as is” to the cloud with minimal changes. Examples include servers running packaged software and applications without an active development roadmap.
Sometimes called lift and shift. Customers use lift-and-shift to quickly migrate and then focus on optimization. Using this method, a migration can be fast, predictable and economical.


A customer’s application is brought to AWS but, as an example, uses Amazon Relational Database Service (Amazon RDS) rather than continuing to manage DBMS instances. It’s like changing an auto engine for higher performance or newer functionality. A cloud migration re-platform might involve upgrading the operating system, such as from Windows 2003 to Windows 2012, or upgrading an application to the latest release. Because of these types of changes, re-platform might trigger some application code changes. As such, more tests are required at the migration validation stage. This is sometimes called lift-tinker-shift.


A customer’s application is moved as a software as a service (SaaS) platform that replaces all components of an application and assumes management tasks for the application’s infrastructure. Think of this as moving an application to a different product.


This strategy involves redesigning application architecture or rewriting an application, before migrating, to make it a cloud-native application. One example of re-factoring is changing from virtual machines (VMs) to containers for microservices. Another example is transitioning enterprise databases to cloud-optimized Amazon Aurora or Amazon DynamoDB. These major changes towards cloud-native capabilities require time, resources, and skills. It is often driven by a need to add features, performance, or scale to customer’s current resources.


During a migration, customers discover that an application is no longer necessary and must be decommissioned. Simply stop using the application, such as legacy databases.


Some applications might not be migrated due to licensing or other reasons. So, Retain for now, or revisit at a later date.


Applications running on VMWare and containerized applications can be quickly relocated to AWS using the host applications familiar to customers. Virtual machines and containers are copied to AWS, and run on AWS systems.


These are the major strategies to be consider before migrating an application to AWS. By following these strategies, we can decrease the burden or any challenges that we could probably face during our application migration to AWS.

Top comments (0)