Seven Migration Strategies
The Seven Rs
When a company migrates to the AWS Cloud, they have many options. There are seven migration strategies to help them reach their goals, also known as the seven Rs:
- Relocate
- Rehost
- Replatform
- Refactor
- Repurchase
- Retain
- Retire
The company may choose certain strategies depending on its specific needs, application types, where the company starts, and the company's future plans.
Often, organizations will use a combination of these strategies across their application portfolio.
Cloud Migration Strategies Video
W3schools.com collaborates with Amazon Web Services to deliver digital training content to our learners.
Relocate
Relocating is changing the hosting location to the cloud.
This could be if applications are already virtual machines (VMs) or containers running on premises and then moving to the cloud.
Rehost
Rehosting, also known as lift-and-shift, involves moving applications without changes.
In a scenario of a large legacy migration, in which the company is looking to implement its migration and scale quickly to meet a business case, the majority of applications are rehosted.
Replatform
Replatforming, also known as lift, tinker, and shift, involves making a few cloud optimizations to realize a tangible benefit.
Optimization is achieved without changing the core architecture of the application.
Refactor
Refactoring, also known as re-architecting, involves reimagining how an application is architected and developed by using features built for the cloud.
Refactoring is driven by a strong business need to add features, scale, or improve performance that would otherwise be difficult to achieve in the application's existing environment.
Repurchase
Repurchasing involves moving from a traditional license to a software-as-a-service (SaaS) model.
For example, a business might choose to implement the repurchasing strategy by migrating from a customer relationship management (CRM) system to a new sales force software.
Retain
Retaining consists of keeping applications that are critical for the business in the source environment.
This might include applications that require major refactoring before they can be migrated or work that can be postponed until a later time.
Retire
Retiring is the process of removing applications that are no longer needed.