Best Practices for SQL to Azure SQL Managed Instance Migration

InfraSolutions 711 Reputation points
2025-04-08T16:24:28.7566667+00:00

An SAP tool is hosted in Azure across two regions (one for primary and another for disaster recovery), with web servers and SQL servers in different subnets, as illustrated in the diagram below.

User's image

The plan is to migrate from hosted SQL VMs to Azure SQL Managed Instance (SQL MI). After reviewing Microsoft documentation, it was noted that there are four available migration options:

  1. Managed Instance Link
  2. Log Replay Service (LRS)
  3. Native RESTORE DATABASE FROM URL (using native backups from SQL Server and necessitating some downtime)
  4. Azure SQL Migration Extension for Azure Data Studio (allowing migration with near-zero downtime)

The database sizes are manageable, with three databases: one around 10 GB, another 150 GB, and the third is 160 GB. A combination of LRS and Database Migration Service (DMS) is intended to automate the end-to-end data migration (Assuming this would work)

However, there is confusion about how the "to-be" diagram would look after migration based on the current setup.

A note from Microsoft states the following:

  • Azure SQL MI requires a dedicated subnet. If this is the case, can a VNet-local endpoint be used during data transfer (for connectivity between the old SQL VM and Azure SQL MI)?
  • Given that there are two SQL servers enabled with Failover Cluster Instances (FCI), would one Azure SQL MI typically replace the need for multiple FCIs?
  • During the transition phase, is the data transfer from Azure Blob Storage to Azure SQL MI a straightforward process?

Apologies if the "to-be" diagram lacks clarity; it serves as a rough representation. Confirmation on these assumptions would be appreciated for a smooth migration process.

Transition:

User's image

To-Be:

User's image

Azure SQL Database
{count} vote

Accepted answer
  1. Adithya Prasad K 1,375 Reputation points Microsoft External Staff Moderator
    2025-04-09T18:29:29.3833333+00:00

    Hi
    Allow me to address your queries in detail:

    Private Endpoints vs. FQDN for Firewall Scenarios Microsoft recommends utilizing Private Endpoints for secure and isolated connectivity between your web servers and Azure SQL Managed Instance (MI). This ensures that traffic remains within your virtual network, avoiding traversal over the public internet for enhanced security. If you choose to use an FQDN, please ensure that DNS resolution is correctly configured to route traffic to the private endpoint, which can be managed through Azure Private DNS Zones.

    VNet-local Communication Between Subnets Once the Azure SQL MI is placed in its designated subnet, communication between SQL Server (Subnet 1) and Azure SQL MI (Subnet 2) will utilize the VNet-local endpoint by default. This provides private communication within the virtual network itself, without requiring a separate private endpoint. A dedicated private endpoint is only necessary for scenarios involving resources across different VNets or for additional isolation.

    Data Migration Strategy For minimal downtime during migration, combining the Log Replay Service (LRS) with Azure Database Migration Service (DMS) is highly recommended. However, if zero downtime and instant switchover to the Disaster Recovery (DR) region are priorities, solutions like Failover Groups or Geo-Replication can be explored to ensure seamless migration and operational continuity.

    Decommissioning Existing Resources Yes, you are correct. Once data migration, connectivity, and configurations have been validated, the existing Azure Blob Storage and SQL VMs can be decommissioned. Azure SQL MI provides robust disaster recovery capabilities, including automated backups and high availability, ensuring data resilience and security moving forward.
    I hope this information helps. Please do let us know if you have any further queries.
    I would request you to refer the below mentioned links for more information
    1-Azure Private Endpoint private DNS zone values
    2-What is a private endpoint?
    3-Disaster recovery guidance - Azure SQL Managed Instance
    4-Connectivity architecture for Azure SQL Managed Instance
    5-Azure SQL Managed Instance connection types
    6-Azure Private Link for Azure SQL Managed Instance
    7-Migrate databases from SQL Server by using Log Replay Service - Azure SQL Managed Instance
    8-Overview of Log Replay Service with Azure SQL Managed Instance
    9-Overview of business continuity with Azure SQL Managed Instance

    If this answers your query, do click "Accept the answer” for the same, which might be beneficial to other community members reading this thread. And, if you have any further query do let us know
    User's image, Picture

    1 person found this answer helpful.
    0 comments No comments

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.