Now that you’ve audited, prioritized, and prepared your existing workloads and applications for transition to the Microsoft Azure platform, it’s time to advance to the next step in the process: Migration.
In the Migration phase, you’re physically moving your workloads and applications (including their data) to Azure and retiring the on-premises versions. There are five options for migrating workloads and applications to Azure – rehosting, refactoring, rearchitecting, rebuilding or replacing. Each option offers different degrees of advantages and challenges so every organization and scenario will have a different approach and will likely use a mixture of each, depending on the complexity of the applic ation and workload. Using the information you gathered during the Assessment phase, you’ll be able to determine the approach that best meets your requirements for a smooth and seamless migration to Microsoft Azure.
Most commonly known as “lift and shift,” this method entails migrating your physical servers and virtual machines “as-is” to the Azure platform. Rehosting or “lift and shift” involves no change in your application or workload framework or architecture; it simply means moving your physical hardware and OS management to the cloud environment.
Using this method, you are simply shifting your current datacenter platform straight to an Infrastructure-as-a-Service (IaaS) environment based on Azure. In this new cloud model, all aspects of the workload or application remain the same except that all the on-premises datacenter hardware and operating systems you previously managed are now managed by Microsoft.
Lift and Shift is the most popular migration approach because it allows you to migrate to Microsoft Azure quickly with little risk of disruption by employing real time replication during the transition process. Real-time replication means setting up a copy of the workload in the cloud and allowing asynchronous replication to keep the old version and the new workload in sync. Real-time replication also allows the old workload to remain online and accessible during the migration. This means that while you’re building and executing your migration plans, any data or server updates are synced between the copies to ensure zero disruptions.
With this cloud migration strategy, you are essentially discarding the legacy code and rebuilding an application or workload from scratch using cloud-native technologies. The process encompasses major revisions to add new functionality or to redesign the application particularly for Azure.
This includes revising the existing application by aggressively adopting PaaS services and architecture. An example of this stage would be redesigning the code to decompose the original application into smaller chunks, and then deploy using Azure platform as a service (PaaS).
In this scenario, the complete development and deployment environment will be in the cloud, eliminating the expense and complexity of software licenses, the need for underlying application infrastructure, or any kind of middleware. This method is especially useful for rapid development when the existing application is slowing your company down due to limited functionality and lifespan. And since you are rebuilding new applications using cloud-native technologies, you also gain the advantages of advancements in artificial intelligence (AI), blockchain, and Internet of Things (IoT).
In this cloud migration strategy, you manage the applications and services you develop, and Azure manages the platform and infrastructure required to run it.
The next migration options involve moving beyond using Azure as IaaS and towards using Azure for PaaS (Platform-as-a-Service) or even further down the spectrum towards SaaS (Software-as-a-Service).
There are a lot of service options to choose from, but two to start with are app services and database services due to the ease of the migration activity. By moving to PaaS for your suitable apps and databases, you can significantly lower costs by reducing your footprint and management requirements. You can save an additional 15–20 percent1 or more by migrating workloads and applications to PaaS, over and above the savings you can make with IaaS.
This is also known as “redesigning” an application for modernization purposes. This means modifying the app with a new and modular architecture designed specifically to run on the Azure platform. Unlike refactoring, which only involves minor code changes, rearchitecting is modifying or extending an existing application’s code base to optimize it to run on Azure.
One example of rearchitecting would be redesigning the code base of a legacy SQL Server database to make it a fully managed Azure SQL Database.
Rearchitecting an application is a more time-consuming way to migrate an application to the cloud because it requires major application code changes but is still advantageous as it allows you to bring new Azure capabilities to existing applications to meet infinite scalability in a cost-effective way.
Also known as “repackaging”, this migration method involves a more advanced process of recoding some portions of your existing application or workload prior to migration so you can take full advantage of cloud-native frameworks and functionality.
While lift and shift allows you to move your applications and workloads to Azure “as-is”, refactoring an application means making minor changes to the application code and configuration to make them more cloud-compatible and modernized so you can connect them to Azure-native infrastructure. This allows your modified application to gain advantages in availability, scalability, speed of custom code delivery and maximizes operational cost efficiency on the Azure platform.
Like the Rebuilding option, this method refers to discarding an existing application and fully modernizing it with cloud-native technologies for greater efficiency and scalability. The difference when you choose this option is that you are replacing legacy applications with all new software that is intended to be delivered as a service, or SaaS. This means all underlying infrastructure, middleware, application software, and application data are in the cloud and managed by Azure in Microsoft datacenters.
While this is the most time-consuming of all the migration methods, this method allows you to consolidate your customers into single multitenant installations that reduce variety and complexity to further lower operating costs and increase scale. This allows you to reallocate the time you spend managing hardware and updates and focus on innovating your software based on your customers’ requirements and not on the infrastructure that is required to run them. Plus, Azure makes wholesale changes less daunting because it allows you take the tools and skills you already know to build your on-premises applications and apply them to the cloud using your favorite development languages —including open source languages, editors, and frameworks. Microsoft also provides a range of resources that provide practical, real-world examples that includes reference architectures that show you what to use and when—for databases, containers, serverless, and SaaS scenarios.
There are many options for migrating workloads to Microsoft Azure depending on your business and technical objectives. Whether you simply want to rehost your applications, make minor code changes to cloud-optimize your applications, or completely overhaul your applications to make them cloud-native, there are several trade-offs and factors to consider.
It’s important to note that while the “Rehost” method lets you move quickly and receive immediate benefits, it may not be the most strategic option for long term gain. Alternatively, while modernizing your applications for migration will require more initial investments of time, effort, and budget, the move to PaaS and SaaS services will allow you to take further advantage of Azure for long-term cost savings and flexibility.
Each option offers different degrees of advantages and complexities so working with a trusted partner like DXC SLMS can help you identify the most ideal migration path to take. Using our expert guidance and support, you will have the resources you need to determine the best combination of options to deploy depending on the complexity of your applications and workloads. Together we can build a customized Azure migration plan that aligns with your short-term technical needs, minimize the risks and disruptions, and achieves your long-term business objectives.
Contact us at SLMSHOSTINGAMS@dxc.com today to schedule a free strategy session for a more in-depth look at developing an Azure migration plan that’s customized for your business.
Not ready for migration just yet? Learn about how to assess your IT environment first.
Learn more about your Azure migration options and tools at https://azure.microsoft.com/en-us/migration/ and access the resources you need at https://dxcsparc.com/sparccsp/ and https://dxcsparc.com/azure-marketplace