Gartner’s 5Rs model for cloud migration strategies is a useful synopsis of the available approaches. When migrating a single application it is likely that a single approach will be opted for, however for migrations involving multiple applications there may be a case for using multiple strategies to match the needs of each application.
Rehost
Also known as “lift and shift”, rehosting deploys the existing application and data on to cloud servers. This approach is most suitable in cases where time is of the essence and there is little need for future scalability.
Refactor
Similar to rehosting, but with some development involved this approach is also called replatforming or “lift, tinker and shift”. This approach involves optimisation of the code base for the cloud and employing a platform-as-a-services (PaaS) model. Applications will retain their core architecture, but will use cloud-based tools and frameworks to allow the application to take advantage of the cloud’s potential.
Revise
Revising takes refactoring a stage further, by making both architectural and code changes before migrating to the cloud. This approach is chosen when the goal is for an existing application to take full advantage of cloud services. As this approach involves major changes to the architecture and the code an experienced team will be needed to deliver it.
Rebuild
As the name implies, this approach involves rebuilding the application from the ground up as cloud native. Rebuilding is most appropriate when there is consensus that the existing application does not suit future business needs and competitive advantage has been identified from the benefits that a cloud native architecture and code base offers. It may be surprising to learn that with the right team in place, this approach can offer both time and cost savings in comparison with other options.
Replace
Typically the replace approach will involve the migration to a third-party, vendor-based application from an existing custom or legacy application. With this approach data will be migrated to the new application, however everything else will be new. It is also likely that customisation and integration work will be required as part of this approach.
Strategy | Description | Best For |
Rehost | “Lift and shift”; move applications to the cloud without changes. | Fast migrations with minimal changes. |
Refactor | Optimize parts of the code and architecture for cloud. | Improving performance while migrating quickly. |
Revise | Make major architectural and code changes before migration. | Unlocking full cloud benefits for key applications. |
Rebuild | Start from scratch with a cloud-native design | Legacy apps needing full modernization. |
Replace | Move to a third-party SaaS solution, migrating data only. | Outdated internal tools that are better outsourced. |
Tip: Many large migrations use a mix of strategies, applying different approaches to different workloads.