One key question that many IT leaders ask as their organizations prepare for their move to the cloud is whether they should migrate or modernize workloads. In this article we would like to dive deep into the concepts of “Migrate” and “Modernize”, explain what they mean to us, what they mean to customers, and what the tradeoffs between them are.
Cloud migration is the process of moving applications, infrastructure, and data from one location, often a company’s private, on-site ("on-premises") datacenter to a public cloud provider’s infrastructure. Migrating an on-premises physical or virtual server to cloud infrastructure-as-a-service (IaaS) is an example. Cloud migration benefits range from reducing IT costs, enhancing security & resilience to achieving on-demand scale.
We talk about “migrating” a workload when we take its components that run in a data center or a third cloud today and move them to Azure. In many cases the target resources for a migration deployment are virtual machines (Infrastructure as a service). Tools like Azure Migrate can help facilitate the migration of workloads to Azure.
Whether you are using platform or infrastructure services, the workload’s code and architectural components will largely remain the same in a migration. A SQL database – for example – will still contain the same rows and tables at the end of the process, it’ll just be hosted elsewhere.
Cloud Modernization is the process of updating existing (sometimes legacy) applications for newer computing approaches, including newer application frameworks and use of cloud-native technologies. This can be done using PaaS, containers, low code apps, and Database-as-a-Service architectures. Key benefits include app innovation, agility, developer velocity, and cost optimization
Modernization usually involves a significant change in both the deployment resources (for example: IaaS to PaaS) and the application architecture, like the structure of databases, code, etc.
Depending on the level of ownership that you have over your application code and infrastructure, your team’s overall skill level with cloud technologies, and the business criticality of the workload that is being modernized you may choose this approach to innovate faster with a fully managed platform – such as Azure - and to take full advantage of the benefits of running in a secure public cloud.
For new applications in cloud, customers tend to build them cloud-natively using Serverless or PaaS technologies. For existing applications, there are some key technical, financial, and business considerations when making the choice between migrating or modernizing a workload.
Customers can modernize their workloads using containers or serverless technologies to maximize cloud benefits, or lift-and-shift them to take advantage of the associated operational savings and cloud scale.
If you are an enterprise with challenges in areas like shifting capital expenditure to operational expenditure, datacenter contracts and extensions, budget, and resource constraints, then migrating to Azure should be considered.
If you want faster time to market, application innovation, optimizing operational costs, modernizing on Azure should be considered.
All key trade-offs are listed in much more detail in the relevant sections of our Cloud Adoption Framework, but here are our top 3 factors for you to consider in this context:
Cost of operation versus Cost of implementation In most cases a cloud native solution will provide a lower running cost in the long term when compared to solutions that are simply lifted and shifted. An important thing to consider – however – is that more development time will be required to modernize the application and get it ready for a cloud native deployment.