Ebook 'From FinOps to proven cloud cost management & optimization strategies'
Whitepaper 'FinOps and cost management for Kubernetes'

Cloud migration to MS Azure in
five steps

What is cloud migration?

Cloud migration is a critical step towards business digital transformation. It refers to the process of moving mission-critical operations from on-premises or legacy infrastructure to a virtual data center of a cloud provider or either moving from one cloud to another and involves migrating your data, applications, databases, and IT processes to remote data centers.

Today, moving to the cloud is no longer an option, it’s a must. More and more businesses adopt cloud, and this trend is on the rise. 

And there is a number of reasons for that: using cloud services means getting rid of a significant part of your own IT infrastructure, thus converting CAPEX to OPEX, reducing the cost of its administration and maintenance and in the meantime increasing flexibility and the ability to cope with peak loads.

However, cloud migration is a major challenge that requires a lot of preparatory work and resources. In most cases, it takes up to several days or even weeks depending on the chosen cloud providers that meet all the business requirements, desired options, and migration software.

Step one: preparing for cloud migration

The process of migrating existing IT infrastructure to the cloud is complex and isn’t limited to an organization’s IT team. So, it’s important to make sure that the cloud migration process is not regarded as a mere IT project, since it goes way beyond that and requires attention of all of the organisation’s stakeholders.


This is what the first step should look like – to synchronize and agree on where the company is now, where it should be going, and what steps it should take to get there. As a result, a list of strategic goals for moving to the cloud should be elaborated.

To help businesses accelerate their Azure cloud adoption journey and better understand Azure migration services, Microsoft put together the so-called Cloud Adoption Framework, a collection of documents, implementation guidance, best practices, and tools for each unit in an organization.

Based on this knowledge base, representatives of each and every organization department that’s going to be affected by cloud migration understand their roles in the cloud migration process, which will help transform defined goals into a clear and detailed cloud implementation plan.

This plan should by all means include the information about your current architecture and the list of applications for migration.

Cloud migration strategies

On the goal-setting and planning stage you also need to choose your level of cloud integration – it can be either shallow or deep. Shallow cloud integration level implies the use of migration strategies – like lift-and-shift or replatforming – that uses an IaaS (Infrastructure-as-a-Service) model. That means that in this case, when you move software to the cloud, you make no to little changes to the applications just to make them work in the cloud environment. 

With a deep level integration, you either essentially modify (refactor or rebuild) your applications to fit them into the target cloud platform (it’s called a Platform-as-a-Service approach) or replace the applications with another SaaS (Software-as-a-Service) product.

Let’s explore each of so called 5 R’s cloud migration strategies in more detail.

Rehosting or lift-and-shift

Lift-and-shift means migrating a part of the infrastructure or the entire system from the on-premises environment to the cloud without changing the architecture at all. This is the fastest, the easiest, the least expensive and least risky approach to migrate an existing workload to the cloud. It requires fewer efforts and resources to implement, but the capabilities of the cloud platform are not used to their fullest in this case. This could result in latency or performance issues as well as an increased risk of migration failures.


A replatform approach is somewhat similar to lift-and-shift but with a subtle difference: in this scenario, some modification of the program takes place. Usually these software adjustments only concern the way the program interacts with the cloud database and how it utilizes the resources of the cloud environment. When it comes to fundamental software modifications due to the cloud migration, we call it refactoring, which we’ll talk about later.
The good thing about replatforming is that it’s cost-efficient, doesn’t require serious investments, but it still enables leveraging cloud capabilities.


Refactoring refers to moving applications to the cloud and re-coding them to better suit the cloud environment. This allows getting the most out of cloud infrastructure advantages, like performance, scaling, and agility. 

Refactoring is probably the most complex, labor-intensive, and costly cloud migration strategy – it involves significant code changes and application testing to assure optimal performance and cloud resource utilization. All in all, provided that this cloud migration approach is implemented in a proper way, it can ensure the highest return on cloud investment in the long term.


In some cases, application refactoring is just not enough. So, to fit the software into the target cloud platform, it needs to be entirely rebuilt. Either way, the modifications that are profound take much effort, time, and money.


Repurchasing means replacing features or components of an existing workload with another third-party service. From the implementation standpoint, it’s faster than refactoring or rebuilding, but, on the other hand, it takes much time and effort in terms of getting familiar with this new software and tuning up the processes that will rely on its operation.

Step two: replication

Once you’ve determined how you’re moving to the cloud, you can proceed with replication of business applications and data. When it comes to Microsoft Azure migration, you start by using the Azure Resource Manager to build templates for your future deployment – then, these templates are exported to an automated configuration management tool. 

After that, you’re ready to replicate your infrastructure to the cloud, and Microsoft has numerous Azure migration tools that can help you with that: Azure Database Migration Service (a tool for Azure data migration), Azure VMware Solution (a tool to deploy a VMware private cloud to Azure), and Azure Migrate are just some of them.

Azure Migrate is the most complete application for migrations, so if you opt for Microsoft’s native tools, this is the right choice.

Step three: orchestration

After the replication to the cloud, you’ll need to launch applications in the new environment in a certain order to ensure data integrity, avoid downtime, and save time in the future. Unfortunately, this cannot be done with the help of native Azure applications. 

However, it should be noted that other cloud migration solutions can provide you with these capabilities. This step is indispensable because conventional test migrations won’t be able to find the flaws related to application dependencies.

Step four: testing migrations

Azure Migrate allows you to perform test migrations while you’re replicating applications to Azure, which we covered in step two. It simulates the migration by creating an Azure Virtual Machine using replicated data by migrating to a non-production Virtual Network (VNet) in your Azure subscription.You can use the replicated test Azure VM to validate the migration, perform app testing, and address any issues before full migration.

Step five: final cutover

After all the tests are performed and all the potential problems are resolved, you can start with actual migration. In the Azure Migrate hub, you can migrate servers, databases, web applications, virtual desktops, and data.

In summary

Microsoft developed a bunch of free tools and services to facilitate Azure cloud migration and management, with Azure Migrate being one of the most prominent and complete. 

Choose the right cloud migration strategy that meets all your company’s needs and migrate to highly performed storage to modernize IT infrastructure with minimal effort.

Please, feel free to read my recent article ‘Spot instances for CI/CD jobs. Yes or No?’ here.

News & Reports

Realize your company’s FinOps adoption potential

A full description of Hystax OptScale as a FinOps enablement platform – product features, benefits and functionality.

Public cloud usage report

Great critical insights on hybrid cloud management benchmarks, trends and best practices.

Optimize your cloud usage with Hystax OptScale

Discover how to analyze cloud metrics  and get cloud optimization recommendations based on your usage.