Here is a simplified post covering the full migration solution in easy-to-follow steps.


  • Move existing application to Azure for cost and management benefits.
  • Maintain equal performance as the on-premises version.
  • Minimize administrative overhead after the migration.
  • Use Azure SQL Managed Instance for the database.

Application: SmartHotel360

  • Tier 1: Frontend web server (WEBVM)
  • Tier 2: Database server (SQLVM)

Solution Overview

We’ll rehost your application by migrating it to Azure. The database will move to Azure SQL Managed Instance, and the front-end application will run on an Azure Virtual Machine (VM).


  • Azure Subscription
  • On-premises VMware Environment (ESXi hosts, vCenter Server)
  • On-premises application with web and database tiers (e.g., SmartHotel360, WEBVM, SQLVM)

Step-by-Step Guide

1. Prepare Azure for your Migration

  • Create a dedicated subnet for your SQL Managed Instance. This subnet must be empty and cannot be used by any other service.
  • Create a virtual network (VNET) for your Managed Instance and VMs. This VNET will connect everything together.
  • Configure custom DNS pointing to your on-premises domain controllers and Azure DNS for the best compatibility.

2. Set up your Azure SQL Managed Instance

  • Create the Managed Instance in your desired Azure region and select appropriate pricing and storage options.

3. Get Azure Database Migration Service (ADMS) Ready

  • Register ADMS in your Azure subscription.
  • Create an Azure Storage blob container and generate a SAS URI. This is needed for the service to access your database backups during the migration.
  • Create an Azure Database Migration Service instance. Place this in your production network subnet for access to your on-premises database server.

4. Prepare Azure Migrate

  • Add the Migration and Modernization tool to your Azure Migrate project.

5. Configure Your On-Premises Environment

  • Deploy the Azure Migrate appliance (download an OVA image, import to VMware).
  • Discover your VMs. The appliance will find the VMs that you want to migrate.
  • Set up Accounts: Make sure you have accounts created for accessing and managing your Azure VMs after migration.

6. Replicate the On-Premises VMs

  • Start replicating the VMs selected for migration. This will create copies in Azure.

7. Migrate the Database using ADMS

  • Create an ADMS migration project.
  • Specify source details: (on-premises SQL Server) and target information (Azure SQL Managed Instance).
  • Provide backups and network share access.
  • Run the migration and verify that the database has successfully moved.

8. Migrate the VMs using Azure Migrate

  • Test migrate your VMs into a non-production Azure virtual network to ensure everything works.
  • Perform full migration. Optionally shut down the on-premises VMs during the final migration for minimal data loss.
  • Verify and manage VMs in the Azure Portal.

9. Finalize the Migration

  • Update DNS records for your web application to point to the new Azure VM.
  • Update the connection string in your application’s config file to connect to the Azure SQL Managed Instance.
  • Restart your application for the changes to take effect.

10. Clean Up

  • Decommission your old on-premises VMs. Remove them from vCenter and backup jobs.
  • Update documentation to reflect the new location of your VMs and database.

Congratulations! Your application is now running in Azure!

Docker Projects : 8 Mini Projects to Excel

Terraform : 5 Mini Projects to get Hands-on

Kubernetes + Terraform : 4 Project Ideas

Kubernetes : 5 Mini Projects to start with

Terraform + Azure : 7 bite size projects

Prometheus and Grafana (5 bite size Projects)

AWS Real Projects Scenarios (6 Mini projects)

Hope you find this post helpful.




Leave a Reply

Your email address will not be published. Required fields are marked *

DevOps Lifecycle Simplified Cybersecurity Lifecycle Top 10 Technical Roles for 2023 7 Tips to become Data Scientist