Home / Azure

AzureRunbookIntermediate

Transformation: rehost servers to Azure VMs with Azure Migrate (agentless replication)

Plan and run a lift-and-shift of VMware, Hyper-V or physical servers into Azure with Azure Migrate. Discovery, dependency mapping, assessment, replication, test migration and cutover, with the checks that keep waves on schedule.

Deepak Bhardwaj3 min read

Applies toAzure Migrate (Discovery and assessment, Migration and modernization), VMware vSphere, Hyper-V, physical servers

The flow

Discover → assess → group into waves → replicate → test migrate → cut over → optimise. Most delays come from skipping the test migration or from unmapped dependencies, so give both real time.

1. Create the project and appliance

  • Create an Azure Migrate project in the target geography.
  • Deploy the Azure Migrate appliance on-premises (OVA for VMware, VHD for Hyper-V, script for physical) and give it read-only credentials for vCenter and guest discovery.
  • Let discovery run for a few days to collect performance data.

2. Dependency analysis

Agentless dependency analysis shows TCP connections between servers. Use it to build application groups: everything that must move together.

Pattern found Wave decision
Web server talks to one DB server Same wave
Many apps use one shared SQL instance Move the DB first or last, with a latency test
Server talks to mainframe or appliance staying on-prem Check latency over ExpressRoute before moving

3. Assessment

Create an Azure VM assessment with performance-based sizing and a comfort factor. Review:

  • Readiness issues (unsupported OS, boot type, disk count).
  • Suggested sizes vs. your licensing: apply Azure Hybrid Benefit for Windows and SQL where you have it.
  • Disk types: Premium SSD v2 or Standard SSD based on IOPS, not on-premises disk layout.

4. Replicate

Start replication for a wave from Migration and modernization. For VMware agentless, the appliance takes snapshots and sends deltas to the target region.

# Monitor replication status for the project (Az.Migrate module)
Get-AzMigrateServerReplication -ProjectName mig-prod -ResourceGroupName rg-migrate |
  Select-Object MachineName, MigrationState, MigrationStateDescription, ReplicationStatus

5. Test migration (do not skip)

  • Run Test migration into an isolated test VNet.
  • Log in, check services start, run the app's smoke test, check licensing activation.
  • Clean up the test migration. Fix and re-test as needed.

6. Cutover

  1. Agree the downtime window with app owners.
  2. Stop the app on-premises (or let Azure Migrate shut down source VMs).
  3. Run Migrate; a final delta sync runs before the Azure VM is created.
  4. Update DNS, load balancers and firewall rules.
  5. Run the smoke test and hand back to the app owner.

Tip

Lower DNS TTLs a few days before cutover so clients follow the new IP quickly.

7. After cutover

  • Remove VMware Tools / Hyper-V integration leftovers; check the Azure VM agent is running.
  • Enable Azure Backup, Azure Monitor Agent and Defender for Servers.
  • Right-size after two to four weeks of real metrics; decommission sources after the soak period.

Checklist

  • Appliance discovery and dependency data covers at least a full business cycle
  • Waves defined by application group with owners
  • Test migration passed for every server in the wave
  • DNS TTL lowered, rollback plan (restart source VM) documented
  • Backup, monitoring and patching configured on day one