Cloud migration is the process of moving data, applications or other business elements to a cloud computing environment.
There are various types of cloud migrations an enterprise can perform. One common model is the transfer of data and applications from a local, on-premises data center to the public cloud. However, a cloud migration could also entail moving data and applications from one cloud platform or provider to another — a model known as cloud-to-cloud migration. A third type of migration is to uncloud — also known as a reverse cloud migration or declouding — where data or applications are moved off of the cloud and back to a local data center.
Benefits of cloud migration
The general goal or benefit of any cloud migration is to host applications and data in the most effective IT environment possible, based on factors such as cost, performance and security.
For example, many organizations perform the migration of on-premises applications and data from their local data center to public cloud infrastructure to take advantage of benefits, such as greater elasticity, self-service provisioning, redundancy and a flexible, pay-per-use model.
Cloud migration process
The steps or processes an enterprise follows during a cloud migration vary based on factors such as the type of migration it wants to perform and the specific resources it wants to move. That said, common elements of a cloud migration strategy include evaluating performance and security requirements, choosing a cloud provider, calculating costs and making any necessary organizational changes.
Common challenges an enterprise faces during a cloud migration include interoperability, data and application portability, data integrity and security, and business continuity. Without proper planning, a migration could negatively affect workload performance and lead to higher IT costs — thereby negating some of the main benefits of cloud computing.
Depending on the details of the migration, an enterprise may choose to move an application to its new hosting environment without any modifications — a model sometimes referred to as a lift-and-shift migration. In other cases, it might be more beneficial to make changes to an application’s code or architecture before performing the migration.
In terms of data transfers from its local data center to the public cloud, an enterprise also has several options. These include the use of the public internet, a private/dedicated network connection or an offline transfer, in which an organization uploads its local data onto an appliance and then physically ships that appliance to a public cloud provider, which then uploads the data to the cloud. The type of data migration an enterprise chooses — online or offline — depends on the amount and type of data it wants to move, as well as how fast it needs to complete the migration.
Cloud migration tools and services
There are various tools and services available to help an enterprise plan and execute a cloud migration.
For example, public cloud providers, including Amazon Web Services (AWS), Microsoft Azure and Google, offer cloud migration services to support private/dedicated networks for data transfers, as well offline migrations.
Public cloud providers also offer tools to help an enterprise plan and track the progress of a migration. These tools, for example, might collect information about an enterprise’s on-premises environment, such as system dependencies, to help the company make a more informed migration plan.
Once the IT department has fully addressed these risk factors, they can move on to plan the best cloud migration approach to meet the company’s business objectives and requirements. While there are a number of approaches used in the industry, below are the most broad:
Lift and shift: This approach involves mapping the on-premises hardware and/or VMs to similar resource-sized cloud instances. For example, if a company’s front-end application server has 4 CPUs, 64GB of RAM, and 512GB of local storage, they would use a cloud instance that matches that configuration as closely as possible. The challenges with this approach is that on-premise solutions are typically over-provisioned with respect to resources in order to meet peak loads as they lack the elastic, auto-scaling features of cloud. This results in increased cloud costs, which may be fine if this is a short-term approach
Refactor and rearchitect: In order to best maximize the features of cloud, such as auto-scaling, migration can be the forcing function to take some time and re-architect the application to be more performant and also keep the costs under control. It is also a good time to re-evaluate technology choices, as a company may be able to switch some solutions from more expensive commercial ones, to open-source or cloud-native offerings.
Shelve and spend: This third approach involves retiring a monolithic on-premises application and moving to a SaaS solution. An example of this would be an HCM (Human Capital Management) application, which is often times a disparate set of code bases tied together with a relational database, migrating to an offering such as Workday HCM. This allows the modernisation of business logic and offloads the operational burden of the service and infrastructure to the SaaS provider.
While there are a number of hurdles and challenges to overcome when it comes to cloud migration, these approaches can ensure that CIOs and CSOs take the best route in order to capitalize on the benefits of moving to the cloud, while minimising risk at the same time.