Cloud Migration Strategy: A Framework for Cloud Adoption and Target Cloud Models
As of 2020, 81% of organizations had at least one application running on the cloud. (Source: Forbes)
What is Cloud Computing?
It is a fact that, be it small, medium, or large, all businesses are moving towards the cloud. Companies are looking to adopt cloud computing services for elasticity, agility, and scalability. With enterprise-class technology accessed from the cloud, businesses can act fast, embrace pay-as-you-go services and disrupt the market today while staying lean and agile.
Cloud Computing, known in short as the cloud, is a large pool of on-demand access to storage, compute, and networking resources that can be rapidly provisioned with minimal service provider interaction. Organizations can relocate the business applications they once had on-premises and in massive and expensive data centers and move them to the cloud.
What are the Key Business Drivers for Cloud Adoption?
Cloud migration describes the process of moving the organization’s business applications from the on-premises data center to virtual cloud infrastructure or cloud services.
There are many business factors that are driving organizations to adopt a cloud migration path in order to realize the maximum benefits of the cloud.
Embracing Cloud migration services provides you with the following benefits:
- Cloud computing allows businesses to shift their focus from infrastructure and platforms and focus on innovation at the application level.
- Cloud deployments have unmatched availability, scalability, and agility of cloud resources as compared to on-premises deployments. One can achieve improved disaster recovery and business continuity by relying on an always-on infrastructure provided by the cloud service provider.
- On-demand usage patterns and pay-as-you-go cost management offered by the cloud helps organizations convert huge CAPEX spends to smaller chunks of OPEX.
- Cloud computing is an attractive alternative to replace on-premises hardware/software components that have reached end-of-life.
- Cloud computing also allows businesses to leverage services that may not be available on-premises, leading to an optimal best-of-breed hybrid architecture.
- A side benefit of the move to cloud computing is that businesses can reduce environmental waste by reducing the hardware and physical products they use.
|Agility||Organizations purchase and set up physical servers, software licenses, storage, and network equipment.||Cloud provider sets up the infrastructure. New servers can be provisioned in minutes. This saves cost, time, and effort for organizations.|
|Efficiency and reduced cost||Organizations have to take care of the maintenance of the hardware and software.||Cloud service providers take care of the maintenance of hardware and software. Organizations can dedicate more time to their core business. This provides efficiency and effectiveness.|
|Scalability||Scaling is a slow process. Need for new systems and locating them across regions takes time.||Scaling can be done effortlessly. Auto-scaling capabilities in the cloud allow new systems to be provisioned in seconds. The systems can also be placed geographically closer to end-users, reducing access latencies.|
|Disaster planning||Elaborate planning is required to ensure that the organization can plan for any eventuality.||Backup and recovery are much simpler in the cloud. Cloud providers provide many ways to automate and restore from backups, ensuring low downtime in the event of any failure.|
The Four Stages of Cloud Adoption Plan and Where Cloud Migration Fits in
Cloud adoption is not a one-step process. Very rarely does an organization decide to move to the cloud and start right away. The following figure below shows the typical four-stage process in a cloud adoption plan.
- The Project stage: Most enterprises start with a few projects that use cloud computing. This stage gives them a chance to understand how they can leverage the cloud to meet a business need.
- The Foundation stage: Once an enterprise sees benefit from its initial investment in cloud computing, it looks to make foundational investments to scale that benefit across the organization. Investments could include creating reference architectures, prescribing best practices, and providing training and education to others in the organization.
- The Migration stage: Once an enterprise sees sufficient success with multiple projects in the cloud, it looks to migrate existing IT assets to the cloud. There are many decisions to be made in this stage, which we will discuss in the migration strategies section below.
- The Optimization and Reinvention stage: At this stage, an enterprise has the majority of its assets in the cloud, and attention turns to how the enterprise can optimize its cloud deployment to improve ROI. Another focus is on leveraging cloud services to create new business capabilities, be it products or services.
Six Strategies for Cloud Migration
Let’s unpack cloud migration a little more. Migration was the third stage in the cloud adoption process and this is when you need to decide how to move critical business applications currently deployed in your on-premises environment to the cloud. A key activity is identifying and prioritizing the applications and workloads for cloud migration. Organizations must also assess the impact on their critical business processes as a result of moving to the cloud and select candidate applications and workloads accordingly.
There are six common cloud migration paths (also known as the six Rs) for cloud migration based on the level of cloud integration that an organization desires.
- Rehosting: Also known as “Lift and Shift”, this strategy lifts servers and applications from the on-premises infrastructure and shifts them to a cloud infrastructure. Many organizations adopt this strategy as it carries the least amount of risk. Extensive changes are not required in the applications or infrastructure with this strategy.
- Replatforming: Also known as “Lift, Shift and Tweak”, this strategy is a slight variation from rehosting. The core architecture of the application remains the same, but a portion of the application or the entire application is adapted to exploit new cloud features. For instance, if an application uses a backend database server, one could consider using the Amazon Relational Database Service (RDS) when migrating the application.
- Repurchasing: This strategy is also called “Drop and Shop”. An organization can eliminate significant migration efforts by moving to commercial off-the-shelf (COTS) products from third-party vendors. These could be purchased directly as software as a service (SaaS) or via the cloud provider’s marketplace. An example of this is moving from an on-premises email server to AWS Simple Email Service (SES). Another example is moving the organization’s CRM to Salesforce.
- Refactoring: Also known as “Re-architecting”, this strategy involves converting a legacy monolithic application into a new, highly decoupled, and cloud-native architecture. Refactoring is much more complicated than other cloud migration approaches because it requires application code changes and must be tested carefully to avoid regressions in functionality. While refactoring is a resource-intensive and time-consuming process, the benefits are manifold: your applications will run smoother and have a higher degree of availability, have reduced management overhead, and save costs. Refactoring can be a high-yielding investment once your applications are running on the cloud.
- Retiring: Often, along the cloud migration path, it becomes clear that some applications are no longer useful and can be decommissioned.
- Retaining: Despite all the benefits of cloud technology, there are still reasons to retain some applications on-premises. For example, an application may be reaching its end-of-life soon, and you may not want to invest time and effort in migrating such an application. Retaining such applications as-is may be the right approach.
Choosing the Right Cloud Computing Model
Your migration path for cloud determines what type of cloud computing model you need to use: do you need to use IaaS, PaaS, or SaaS?
- Infrastructure as a Service (IaaS) – This computing model provides you the infrastructure you need to run your applications. Assets such as software & hardware, storage & networking are made available to you. This model is best suited if you plan to rehost or re-platform your application.
- Platform as a Service (PaaS) – This is a blend of Infrastructure as a Service and a set of deployment tools, software development, and middleware that enable you to migrate quickly. Organizations looking to refactor or rebuild applications can look at this option.
- Software as a Service (SaaS) – Organizations looking to replace their applications with off-the-shelf alternatives can choose SaaS services. The SaaS vendor takes care of both infrastructure and the application that your organization uses.
Several factors contribute to an organization’s decision on which cloud adoption strategy and computing model works for them. Discover the current footprint, which applications to retain, which to retire, and which ones to consider for cloud migration. For each application, determine the appropriate cloud migration path, keeping in mind the effort involved and the costs that need to be incurred. Further, estimate the time required for the migration. Notably, a one-size-fits-all approach may not work, and you may have to determine the strategy to use on an application-to-application basis.