Cloud Migration Checklist: a Step by Step Guide to Rehosting with Azure
This article is the last in a series that focuses on Rehosting To Azure. In previous articles, we looked at The Benefits of Rehosting to Azure, How a Cloud Migration Assessment Will Help Avoid Mistakes, and Best Practices for Building a Cloud Migration Strategy.
As we discussed in an earlier article in this series, there are five essential phases to a successful cloud migration: planning, onboarding, infrastructure deployment, service rehosting, and monitoring and optimization.
In this, the final article in our series on Azure Rehosting, we provide a comprehensive cloud rehosting checklist that will help businesses to organize their cloud migration and to understand the rehosting process followed by ViaCode’s cloud migration team.
Successful cloud rehosting projects depend on careful planning. The goal of this phase is to develop an understanding of the application’s infrastructure requirements on Azure.
- Determine the scope of the rehosting project.
- Which applications will be migrated to Azure?
- What are the project’s initial budget expectations?
- Who in the company should be informed about the migration project?
- Who in the company be involved in the initial planning?
- Assess the application’s current infrastructure and what will need to be replicated on Azure.
- Which physical servers, virtual machines, and other services does the application depend on?
- Does the application have dependencies that will also be migrated to Azure. Dependencies might include databases, caching systems, and queue management services?
- Use tools such as Azure Migrate and Azure Database Migration Service to assess the infrastructure to be migrated.
- Investigate Azure’s infrastructure services and decide which cloud services will replace the application’s current infrastructure.
- Calculate the expected infrastructure costs.
- What is a reasonable expectation for the cost of replicating the application’s existing infrastructure on Azure?
- Use Azure tools such as Azure Pricing Calculator and Azure Total Cost of Ownership Calculator.
Once the planning phase is complete, you should have a preliminary understanding of the application’s current infrastructure needs, its infrastructure needs following the migration, how those needs will be met, and the cost of meeting them.
Next, we perform the initial Azure configuration.
- Set up authentication and access rights with Azure Active Directory.
- Create Azure resources that will be used during the migration. These include:
- Azure Subscriptions, a high-level abstraction that allows groups within your organization to manage resources.
- Azure Management Groups, used to manage groups of subscriptions and apply policies and access controls for infrastructure use.
- Azure Blueprints, templates for creating groups of resources that comply with predetermined standards.
- Configure secure network connections between on-premises infrastructure and Azure with Azure Virtual Network Gateways.
The on-boarding phase lays the foundations, providing managed access to services and network connections that will be used during the migration phase.
This is the final preparation phase before the application is rehosted. We configure and deploy security, backup, storage, and network infrastructure.
- Configure and deploy network infrastructure, including Virtual Networks, Public IPs, and Load Balancers.
- Create Network Security Groups and configure firewalls.
- Configure and deploy backup infrastructure, using tools such as Recovery Services Vaults.
- Create storage accounts and configure the storage infrastructure for the application.
Once this phase is complete, we’re ready to deploy the application hosting infrastructure.
This is where the planning and preparation of the previous phases pays off. Everything we’ve done thus far is intended to ensure that migration is as swift and painless as possible.
- Migrate virtual machines from on-premises infrastructure to Azure with Azure Site Recovery and third-party tools.
- Migrate databases with Azure Database Migration Service, SQL Service Migration Assistant, or other appropriate tools.
- Migrate .NET and PHP applications using App Service Migration Assistant.
- Migrate dependencies and development workflow tooling (CI/CD) workloads.
- Use best-in-class migration tools from third-party vendors to complete specific workload migrations.
The application is now rehosted on Azure.
The final phase implements monitoring and alert systems to provide the information that we and our clients need to optimize Azure infrastructure for cost and performance.
- Configure Azure infrastructure metrics and logs to deliver actionable information and alerts to Azure Monitor.
- Integrate Azure Application Insights for code-level performance monitoring.
- Implement usage analytics to provide information to guide application performance optimization.
- Refine infrastructure to maximize availability and minimize costs.
ViaCode’s Azure rehosting specialists work with clients to complete every step in this checklist, ensuring a smooth transition to Azure infrastructure and the efficient use of cloud resources.
To learn how VIAcode can help your business to negotiate the complexity of rehosting to Azure, contact our Azure cloud migration experts for a free initial consultation.