Cloud Migration Strategy – The Ultimate Guide to the 6 R’s
Embracing the power of the cloud has become inevitable to succeed in today’s digital era, especially when organizations are increasingly migrating their applications to the cloud to drive growth. According to Gartner, the worldwide spending on public-cloud services is forecast to grow up to $304.9 billion in 2021, up from $257.5 billion in 2020. By 2024, more than 45% of the IT spending will shift from traditional solutions to the cloud.
Despite such heavy spending on the cloud, one in every three organizations fail to realize its benefits. 33% of organizations have seen no or slight improvement in organizational effectiveness after cloud adoption, as per Unisys Cloud Success barometer report. Cloud migration is a complex and costly affair. So how do you avoid a cloud project failure?
The answer lies in proper planning and selecting the right cloud migration approach for your IT assets. This blog aims to give you a better understanding of a suitable cloud migration strategy to help you create a path for migration and smoothly transition to the cloud.
Let’s get started with understanding cloud migration.
What is Cloud Migration?
Cloud migration isn’t just about moving to the cloud; it is an iterative process of optimization to reduce costs and reach the full potential of the cloud. It impacts all the organizational aspects including people, processes, and technology. But with flexible consumption and pricing models, the cloud can support high scalability, performance, agility, remote work, and cost-efficiency.
Spotify, for one, needed an infrastructure solution that can process 100+ Petabytes of data with a 20,000 daily data pipeline running, which can connect their millions of creators with a billion fans. Since 2011 the music streaming company surpassed 1 million customers, and to meet this hypergrowth, they required a technology that sustains data as huge as 130 million audio files and 8 million events per second with greater performance.
What Spotify did was it migrated 1200+ services and 20,000 data jobs to the Google Cloud without causing any ripples in the streaming experience. This way, it secured flexible storage space, saved money, and achieved a more reliable, high-quality music experience.
Like Spotify, many organizations end up paying higher costs for the on-premise data centers in upgrading the hardware, restrict themselves to become a scalable platform, experience less accessibility, inflexibility, unreliability, and more by keeping the same traditional infrastructure setup.
The journey to the cloud is different for every organization, as there is no one-size-fits-all migration plan. Each IT asset to be migrated is unique in terms of cost, performance, and complexity. So you cannot move all components to the cloud with one common method. Making a roadmap for the migration will answer the questions of what, how, and in what order to move these components. This is where the cloud migration strategies come into play.
Broadly known as the 6 R’s of migration, these strategies essentially answer the question of how to migrate your IT assets to the cloud. A brief explanation of each strategy with use cases is given below.
The 6 R’s of Cloud Migration Strategy
Say you want to move your on-premises Oracle database to an EC2 instance in AWS with little upfront effort. Then rehosting is for you! It’s one of the quickest and easiest cloud migration strategies that moves data without code-level changes.
Here’s how it works– this “lift and shift” pattern transfers data assets from on-premises infrastructure to cloud infrastructure, especially adopted for large-scale migrations. What’s more, it also enhances the speed and performance of the cloud at a lower cost. Rehosting can be automated using tools like CloudEndure Migration and AWS VM Import/Export, but you could also go for manual implementation to gain cloud maturity.
Despite these numerous benefits, you may not be able to fully avail features like ephemeral compute and autoscaling. Legacy and resource-intensive apps can also face latency issues due to non-compatibility with cloud environments.
Read this blog to understand and analyze AWS Lambda pricing
Cordant Group rehosted its IT operations on AWS and saved upto 50% infrastructure costs
The Cordant Group, a leading securities and facilities management company in the UK, had an extensive IT infrastructure to serve a wide scale of business operations. It could save 40-50% costs by moving from on-premise CapEx to cloud-based OpEx model. It used the ‘lift and shift’ approach to successfully migrate their entire IT operations to AWS cloud including multiple websites, client desktop services and SQL databases.
Use Rehost if you’re:
- migrating a large-scale enterprise
- new to the cloud
- migrating off-the-shelf applications
- migrating with a deadline
This ‘lift, tinker and shift’ strategy is a modified version of rehosting. Replatform enables you to make a few configurational changes to the apps to better suit the cloud environment without changing their core architecture. Developers commonly apply this approach to change the way apps interact with the database so they can run on managed platforms like Google CloudSQL or Amazon RDS.
Having said that, it’s also crucial that you review your project in intervals, so it doesn’t convert into a complete refactor. The key is to avoid unnecessary changes to deal with this risk.
Pinterest increased infrastructure capacity by 80% in non-peak hours
Pinterest migrated from AWS’s legacy cloud to the next-gen cloud computing system when it reached over 250 million customers and served more than 1,000 microservices with different infrastructure layers and tools. It followed the ‘lift, tinker, and shift’ approach to move the microservices to Docker containers powered by Kubernetes. As a result, it reduced the instance hours for the engineers and made it cost-effective.
Use Replatform if you want to:
- migrate with a time-crunch
- leverage the benefits of the cloud without refactoring the app
- migrate a complex on-premises app with minor tweaks for cloud benefits
Refactor or Re-architect method involves rewriting your applications from scratch to make them cloud-native. This strategy allows you to realize the full potential of cloud-native technologies like microservices architecture, serverless, containers, function-as-a-service, and load balancers. For example, you can refactor assets when you move your digital assets from an on-premise monolithic architecture to a fully serverless architecture in the cloud. These refactored applications are scalable, agile, efficient, and return ROI in the long run, even in the most competitive markets.
This approach is the most expensive, resource-intensive, and time-consuming compared to the others but will prove most worthy in the long run. Some other challenges you might face can be the lack of cloud skills, complex projects and program delivery, or potentially significant business disruption. The key is to prioritize smaller chunks of your monolithic application as microservices, and then refactor them. Also, allow the legacy applications to run on-premises while you rebuild in the cloud to avoid disruption.
Netflix saw an 8X times increase in streaming members
Netflix decided to migrate to the cloud when it experienced major database corruption for three days back in 2008. Netflix chose to re-engineer all of their technology and fundamentally change the way they operate, with AWS as the cloud provider. High reliability, horizontal scalability, and distributed systems in the cloud were critical to their success. The complete refactoring took them years but proved the best approach for them. Today, it has 8 times as many members as in 2008 and is a global OTT platform with a presence in 130 countries.
Use Refactor if:
- The application will gain most from the cloud
- There is a strong business drive to add scalability, speed, performance
- An on-premise app is not compatible with cloud
Repurchase, also known as the “drop and shop” strategy, replaces the on-premise application with a cloud-native vendor-packaged software. It typically means moving to a SaaS (Software as a Service) application with the same capabilities. Effectively, it entails a licensing change sometimes––you drop the existing on-premise license and start a new license agreement with the cloud provider for their solution. The newer, upgraded cloud version offers you a better value with higher efficiency, savings on app storage, and maintenance costs.
For example: moving from on-premise CRM to Salesforce or Hubspot, moving to Workday for HRM, migrating your built-in CMS to Drupal. This method is simple, fast, and eliminates a lot of migration effort.
Some hurdles you might face with repurchasing are training your staff for the new software or vendor lock-in. SaaS platforms offer limited customizability and control comparatively. You might feel the pinch of losing a highly-tailored on-premise custom solution.
Check out this blog to know all about multi-cloud and why do you need a multi-cloud strategy?
Airbnb saved expense of at least one operations position by shifting to Amazon RDS
Airbnb switched to Amazon RDS and dropped MySQL during their migration to AWS. Complex procedures like replication and scaling were challenging to perform with MySQL. Amazon RDS simplified and handled much of the time-intensive administrative tasks associated with databases. As a result, the engineers could spend more time developing. And the entire database was migrated to Amazon RDS with only 15 minutes of downtime.
Use Repurchase if:
- You’re replacing software for standard functions like finance, accounting, CRM, HRM, ERP, email, CMS, etc.
- A legacy app is not compatible with cloud
In the ‘retire’ strategy, you get rid of applications no longer needed or productive for your IT portfolio. If an application is considered not worth migrating to the cloud, it can either be eliminated or downsized. It allows you to explore all your applications in terms of their uses, dependencies, and cost to the company. It is a rather passive strategy as there is no migration. According to Stephen Orban at AWS, as much as 10% of an enterprise IT portfolio is no longer useful when migrating to the cloud and can be simply turned off.
Though it sounds easy, decommissioning apps is a complex process and critical to deciding which apps to retire. It should be done in the initial stages of planning so you can migrate pivotal applications or services, reduce the scope of applications to migrate, and save resources.
Here are some considerations for retiring applications during cloud migration:
- Archive applications that contain useful data.
- Retire applications with duplicate capabilities to save costs.
- Retire apps whose functionality can be added to another through microservices.
Autodesk improved its UX and security by retiring 209 application environments
Autodesk retired some applications during its migration to AWS to increase efficiency, resilience, and automation through large-scale migration and modernization. It retired 209 application environments that reduced the attack surface and migrated 239 apps with 97% cost efficiency. Overall, the enterprise achieved improved business outcomes, reduced costs, better end-user experience, and stronger security.
Use Retire if:
- An app is redundant or obsolete
- A legacy app is not compatible with the cloud and provides no productive value anymore
- You decide to refactor or repurchase an app
Retaining, also referred to as re-visit, is revisiting some critical applications/portions of your digital assets that need a significant amount of refactoring before migrating them to the cloud. Eventually, you may figure out some applications are more suitable to on-premise arrangements or have been recently upgraded and need to be retained. In other cases, applications are retained due to latency requirements, compliance or regulatory constraints, or it’s simply not cost-efficient.
Retaining is often used in hybrid cloud deployment by organizations to ensure business continuity during large-scale migrations that take several years. For example, Johnson & Johnson and Hess Corporation, created a hybrid cloud environment to support their ongoing migrations to AWS. It offers benefits of the cloud as well as keep the critical workloads and confidential data on-premise.
Use Retain if:
- You adopt a hybrid cloud model during migration
- You’re heavily invested in on-premise applications
- A legacy app is not compatible with the cloud and works well on-prem
- You decide to revisit an app later
Now that you’re familiarized with the different cloud migration strategies, you’re ready to plan and implement! Don’t forget to consider every aspect of your business while designing your migration strategy like costs, security, scaling needs, timeline, expertise, and your business goals. Right guidance and meticulous planning are crucial for a successful migration.
Simform has walked several companies through the intricacies of cloud migration, and we live by these seven best practices to facilitate and accelerate the leap from legacy systems to the cloud.
Best Practices for a Successful Cloud Migration
Know your IT portfolio inside out –the data, applications, and infrastructure
A fundamental part of the portfolio discovery and planning phase––this practice allows you to look deeper into the existing environment by evaluating each asset in terms of cost, performance, size, complexity, and internal dependencies. This assessment can then be used to develop a business case and KPI metrics for each asset to gauge their performance during and after migration. To easily gather information about on-premise data centers and applications, automated discovery tools can be used, for e.g. AWS Discovery Service.
Design your migration strategy
A step-by-step plan categorized in each of the 6 R’s explained earlier can go a long way. All you need to do is start small with the least critical workloads and move forward confidently. Consider both business goals and technical aspects while developing your migration plan.
Select the right partner for your cloud migration journey
Choose a cloud consulting partner who not only has the technical expertise but also a diverse portfolio and managerial expertise. Your cloud provider must have an in-depth understanding of all aspects like cost, tools, compliance, security, governance, and cloud-skill requirements.
Simform is an AWS Select Consulting partner. Our trained AWS consultants and architects can help you develop, deploy and optimize cloud applications on AWS.
Prepare your team and the existing IT environment for the transition
Training is instrumental in empowering your staff to better adapt to the new ways and facilitate smoother migration. To bring more clarity and transparency, you can establish a clear set of roles, responsibilities, and protocols for reporting and management. It’s also important that you prepare the existing IT environment by optimizing the network connection, organizing resources, managing access, and implementing a system for compliance, governance, and security.
Leverage automated tools and managed services from cloud services provider wherever possible
One of the most effective ways to efficiently migrate to the cloud is identifying repetitive patterns. You can automate them using tools like VMware along with managed services such as AWS Directory Service and Amazon DynamoDB. Automation accelerates the process, frees up your staff to focus on other vital tasks, and reduces downtime.
Track and monitor the migration process continuously
Remember the KPIs you defined in the beginning? It’s time to put those in use to measure and monitor the process.. These metrics make it easier to identify and remediate performance issues during the migration. Timely problem resolutions are critical to successful cloud migration. You can also expect re-strategizing based on the events that unfold. Don’t forget to document the process for future reference.
Test and validate for optimization
To accurately examine and validate the migration’s success, use the same business goals and individual application KPIs set during planning. It highlights the scope for optimization. For example, you might see the need to refactor an initially rehosted application to the cloud. Since workloads on the cloud continuously evolve, it may require improving the foundation.
Cloud migration is a difficult journey, but it doesn’t have to be with the right knowledge and direction. These strategies aren’t definitive but surefire ways to get started with migration planning. The selection of approaches also depends on which migration model you choose or have in place for your organization, for instance, Infrastructure as a Service (IaaS), Software as a Service (SaaS), or Platform as a Service (PaaS). Your migration plan can be a mixture of some of these strategies or include all of them, as there’s no one-size-fits-all approach.
Say your organization isn’t into tech like Spotify. You don’t want to spend hours working on data centers or hiring additional resources. Well, you know what Spotify did? It sought help from technology consultants to migrate to the Google cloud platform.
Fret not! You can get started with this new technology too! Seek help from the right cloud services partners to decide what suits your needs, create a structured framework, and execute your migration plan.