Amazon describes a "6 Rs" model adapted from Gartner's "5 Rs" model, which outlines ways to perform migration to AWS. The 6 Rs model includes: Rehost, Replatform, Repurchase, Refactor, Retire and Retain.
In this article, we’ll discuss each of these in depth, and show you how to decide which R to select for your applications. We’ll also show how NetApp Cloud Volumes ONTAP can help you migrate large volumes of data to the cloud effortlessly.
In this page you will learn:
Why Move an Application to the Cloud?
There are three typical drivers for undertaking the effort of migrating an application to the cloud, which can also affect your choice of a migration strategy.
- User agility and control—most application teams today depend heavily on IT teams to get them the machines they need to test, develop and integrate workloads. It may take IT teams days to make machines available or even weeks. Application teams are moving to the cloud to increase their agility, as a cloud-based model enables the provisioning of machines within hours or even minutes.
- Scalability when needed—IT teams typically find it difficult to keep pace with the demands of scale in their infrastructure, particularly when there is a sudden increase in demand for application load. Organizations are seeking an alternative where they don’t need to plan or invest ahead of time for such increases in demand, and the cloud offers this potential.
- Innovative trends such as big data—trends like high-performance computing, big data, complex event processing and mobile services are hard to configure. Cloud computing provides the option of pay-as-you-go, so organizations can test, develop, and experiment with these innovative technologies.
What Is a Cloud Migration Strategy?
The cloud migration process, as described by Amazon, encompasses five stages:
- Phase 1: Migration Preparation and Business Planning
- Phase 2: Discovery and Planning
- Phase 3: Designing the Migration
- Phase 4: Migrating and Validating Applications
- Phase 5: Operations
In the second stage, organizations start to map out existing on-premise environments, understand the possibilities offered by their cloud provider, and consider what shape each application should take in the public cloud. This is where a migration strategy comes in. Your cloud migration strategy is your vision of how to take your applications into the cloud.
A successful strategy will maximize your value from cloud infrastructure while minimizing migration time, effort, cost and risk.
Gartner published the “5 Rs” model as far back as 2010, which defined all the options available to migrate a specific application to the cloud. Amazon adopted this model and extended it to 6 Rs: Rehost, Replatform, Repurchase, Refactor, Retire and Retain. In the following sections, we’ll cover each of these in-depth, and explain how to decide which R to choose for your applications.
Understanding the 6 Rs: AWS Migration Strategies in Depth
The following diagram illustrates the migration strategies in terms of cost and time to migrate. Repurchase is the cheapest and fastest option, while Refactor / Rearchitect is the most difficult, but also gives you the biggest opportunity to optimize the application and take advantage of cloud-native features.
1. Repurchase (“Drop and Shop”)
This strategy involves decommissioning the application and replacing it with a cloud-based version, typically on the AWS Marketplace. Effectively, this is a licensing change—instead of using a traditional on-premise license, you can start using the same application as a cloud service. This is a smaller effort than “lift and shift” (see below) because you are not moving anything—just starting a new license agreement in the cloud.
Tip #1: Identify legacy applications that are no longer satisfying business needs
Do you have applications like CRM, ERP, finance or HR applications that are offered in the AWS marketplace? The move to the cloud gives you an opportunity to drop these applications and switch to a cloud-based version, which may also offer an improved feature set.
Tip #2: Use this approach for legacy applications incompatible with the cloud
If you find existing applications that could benefit from the cloud but would be difficult to migrate using “lift and shift”, “drop and shop” could be a good option. It will provide a new and improved feature set, along with the inherent benefits of the cloud platform.
2. Rehost (“Lift and Shift”)
This strategy involves moving applications from the on-premise environment to the cloud without modification. It is commonly used to migrate large-scale legacy applications to meet specific business objectives such as an accelerated product launch timeline.
The Rehost strategy sounds simple, and it is. There are mature tools on AWS which allow you to carry it out with low effort. The downside is that with no changes to the application, it has limited ability to take advantage of the cloud-native environment.
Tip #1: Identify applications that can benefit from the cloud as-is
The sweet spot of lift and shift migrations is to identify applications that can take advantage of the cloud without architectural changes. For example, applications with variable or seasonal loads can, in most cases, take advantage of the cloud without modification. The cloud can make it easy to scale tiers of the application on demand, for example by adding more web servers or adding more database instances to a cluster.
Tip #2: Lift and shift as a first stage
You shouldn’t treat lift and shift as the end of the migration story. Very often, applications can be migrated with lift and shift and then, once in the cloud, re-architected to take advantage of the cloud computing platform. Many migration projects have shown that it is easier to re-architect applications while already in the cloud, as opposed to refactoring an application and then migrating it. This is partly because the cloud makes it easy to spin up realistic dev/test environments.
3. Replatform (“Lift, Tinker and Shift”)
The replatform strategy involves moving applications almost as-is, but replacing some components to take advantage of the cloud.
Tip #1: Identify the low-hanging fruit
Try to identify low-hanging fruit—applications that require only small optimizations before moving to the cloud. In many cases, this involves switching from self-hosted infrastructure to managed services. Another common optimization is switching from commercial software to open source. This can allow you to scale freely on the cloud without worrying about the licensing cost of each additional instance.
Tip #2: Testing and monitoring is crucial
Even though this strategy involves small modifications or swapping of components, for production applications, you must conduct extensive testing, deploy on the cloud and then monitor for an extended period. Pay attention to performance, basic functionality and user metrics—if conversion rates or shopping cart completions are down, there could be a problem.
4. Refactor / Re-Architect
This strategy calls for a complete overhaul of an application to adapt it to the cloud. It is valuable when you have a strong business need for cloud-native features, such as improved development agility, scalability or performance. In many cases, refactoring involves breaking up the application into independent services and transitioning to a microservices architecture.
- The most expensive approach
Refactoring / rearchitecting is the migration strategy that involves the highest costs, the biggest effort and also the most risk. But in reality, many if not most applications end up being refactored for the cloud, either before migration or after.
- Reaching the tipping point
Refactoring is not a binary decision, it’s more a question of when—at which point will you reach the tipping point where cloud-native features will outweigh the effort and disruption caused by a refactoring project.
The final two strategies are “passive”—they don’t involve migrating an application to the cloud. Let’s discuss some common reasons why not to move an application to the cloud.
Reasons to Retain applications on-premises
- The business is heavily invested in the on-premise application and may have currently active development projects.
- Legacy operating systems and applications are not supported by cloud environments.
- Application is working well—no business case for the cost and disruption of migration.
- For industries which must adhere to strict compliance regulations that require that data is on-premise.
- For applications that require very high performance, the on-premise option may prove the better choice.
Reasons to Retire applications altogether as part of the migration project
- In many cases, during a migration project you can identify applications that are redundant, and shutting them down can represent a cost saving.
- There may already be existing plans to decommission the application or consolidate it with other applications.
Lift and Shift Your Data to AWS with Cloud Volumes ONTAP
There are many methods for migrating to AWS—however, the lift and shift approach remains the quickest, simplest, lowest-risk and most cost-effective way to get working in the cloud.
The lift and shift migration approach involves migrating your application and connected data to the cloud with little or no changes. Applications are “lifted” from their current environments and “shifted” in their existing state to new premises, such as the cloud. Typically, there are no marked changes to make to the application data flow, architecture or authentication processes.
A successful lift and shift migration strategy, however, requires the right tools. That is why many companies are using solution provides such as NetApp to help them with migration and to assist them with ongoing data management.
NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP supports up to a capacity of 368TB, and supports various use cases such as file services, databases, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, storage efficiencies, cloud automation, Kubernetes integration, and more.
In particular, Cloud Volumes ONTAP provides utilizes NetApp SnapMirror® technology, to migrate, replicate, and synchronize files, or any data from on-premise, hybrid or multicloud storage systems architecture. Cloud Volumes ONTAP NetApp data replication tools SnapMirror® and Cloud Sync service will get your data to the cloud.
Want to learn more about AWS migration?
Here are some further reading suggestions:
- AWS Migration: Understanding the Process and Solving 5 Key Challenges
- NetApp SnapMirror Data Replication with AWS
- 5 Optimal Approaches for Your Hyper-V to AWS Migration Strategy
- 5 Steps to the Cloud: AWS Migration Checklist
Want to get started? Try out Cloud Volumes ONTAP today with a 30-day free trial.