Executing Migrations
IaaS and PaaS migration, database migration with DMS, and unstructured data migration β the practical execution of moving workloads to Azure.
Executing migrations
Strategy tells you WHAT to move and WHY. Execution tells you HOW.
Three migration categories: Servers (VMs β Azure VMs or PaaS), Databases (SQL β Azure SQL, PostgreSQL β Azure PostgreSQL), and Data (files, blobs, archives β Azure Storage).
Each has dedicated tools and migration paths β the architect chooses based on downtime tolerance, data volume, and target service.
Server migration paths
| Factor | Azure Migrate (Agentless) | Azure Migrate (Agent-based) | Azure Site Recovery |
|---|---|---|---|
| Source | VMware vSphere | VMware, Hyper-V, physical | VMware, Hyper-V, physical, AWS |
| Agent required | No (vCenter access only) | Yes (mobility service on each VM) | Yes (mobility service) |
| Replication | Snapshot-based | Continuous (block-level) | Continuous (block-level) |
| Downtime | Minutes (final sync) | Minutes (final sync) | Minutes (failover) |
| Concurrent VMs | 300 per vCenter | No limit | No limit |
| Best for | VMware environments, simple rehost | Large-scale, mixed environments | DR + migration (dual purpose) |
Migrating to PaaS
| Source | Target PaaS | Migration Path |
|---|---|---|
| IIS web apps | App Service | Azure App Service Migration Assistant β assess β migrate |
| .NET apps on VMs | Container Apps/AKS | Containerise with Azure Migrate app containerisation |
| Java apps | App Service / Spring Apps | Azure Migrate web app assessment |
| SQL on VMs | Azure SQL MI/DB | Azure Database Migration Service |
Database migration
| Factor | DMS Online | DMS Offline | Backup/Restore | Data-tier Application (BACPAC) |
|---|---|---|---|---|
| Downtime | Minutes (cutover) | Hours (full copy) | Hours (restore time) | Hours (import time) |
| Source | Running database | Running database | Backup file | BACPAC file |
| Continuous sync | Yes β until cutover | No β one-time copy | No | No |
| Supported targets | SQL DB, SQL MI, PostgreSQL, MySQL | SQL DB, SQL MI | SQL MI, SQL on VM | SQL DB (smaller databases) |
| Max database size | No practical limit | No practical limit | Depends on backup/restore speed | ~150 GB practical limit |
| Best for | Production β minimal downtime | Dev/test, small DBs | SQL MI migration with full compatibility | Small SQL DB migrations |
ποΈ Priyaβs database migration plan:
- 200+ SQL databases β SQL Managed Instance using DMS online migration
- Process: Assess with Azure Migrate β create target MI β start DMS continuous replication β validate β cutover during maintenance window
- RPO during migration: ~5 seconds (DMS continuous sync)
- Cutover downtime: ~5 minutes per database
Exam tip: Online vs offline migration β know the tradeoffs
Online (DMS): Continuous replication until cutover β minutes of downtime. Higher complexity, requires source database to be running throughout.
Offline: Full copy β hours of downtime but simpler. Acceptable when the business can schedule a maintenance window.
Exam signal: βminimal downtimeβ β online migration (DMS). βMaintenance window acceptableβ β offline or backup/restore.
Unstructured data migration
| Tool | Use Case | Volume | Speed |
|---|---|---|---|
| AzCopy | Command-line bulk copy to/from Azure Storage | GB to TB | Network-limited |
| Azure Data Box | Physical device shipped to you, load data, ship back | Up to 80 TB per device (order multiple) | Days (shipping) |
| Storage Migration Service | Windows file server migration to Azure Files | Any | Network-limited |
| Azure File Sync | Hybrid: keep files on-prem with cloud tiering | Any | Ongoing sync |
| Data Factory | Orchestrated copy pipelines | Any | Configurable parallelism |
π¦ Elenaβs data migration:
- 300 TB of financial archives β Azure Data Box (network transfer would take months)
- Active file shares β Storage Migration Service to Azure Files (preserves permissions)
- Application blobs β AzCopy with concurrent transfers (automated via scripts)
Knowledge check
ποΈ GlobalTech needs to migrate 200 SQL Server databases to Azure SQL Managed Instance with minimal downtime. The databases are actively used during business hours. Which approach should Priya recommend?
π NovaSaaS needs to migrate 50 TB of file data from an on-premises NAS to Azure Blob Storage. The migration must complete within 2 weeks. Their internet connection is 1 Gbps. They want to minimise downtime for the final cutover. Which approach should Marcus recommend?
π¬ Video coming soon
Next up: Connecting everything together β Network Connectivity: Internet & Hybrid.