Google rebranded this service from "Migrate for Compute Engine" to "Migrate to Virtual Machines" in July 2022. The service performs block-level replication of VM data to Google Cloud while source virtual machines remain operational.
The migration engine copies your disk data to Google Cloud storage (and racks up charges faster than you expect). Initial replication transfers the complete disk image - this takes days, not hours, especially over VPN. I've seen 1TB VMs take a week when the connection kept hiccupping. Subsequent cycles only copy changed blocks, which are much faster. Those persistent disks add up fast during long migrations, so watch your costs.
Migration has six phases:
Key operational phases:
- Replication - Initial replication takes days, not hours - learned this the hard way. A 1TB VM? Plan for 3-5 days depending on your bandwidth. Delta syncs after that are much faster - usually minutes
- Test Clone - This will save your ass. Use it to catch all the stuff that breaks when you change IP addresses, database connection strings, and licensing dependencies
- Cutover - Google says "minutes" but sometimes it's 20 minutes, especially with large disks. That "under an hour" estimate? Sometimes it's true, sometimes it's not
Source Environment Integration
VMware vSphere Integration:
VMware environments use the Migrate Connector appliance - an OVA virtual appliance deployed in vCenter. This connector handles all replication operations without requiring agents on individual VMs, reducing overhead and complexity.
Cloud Platform Integration:
AWS and Azure migrations install lightweight agents on source VMs. These agents communicate with cloud provider APIs to efficiently stream disk data to Google Cloud persistent storage.
Management Interface:
The Google Cloud Console has a decent web UI for once - actually shows useful progress info instead of generic spinners. Command-line nerds get gcloud
CLI and REST APIs. The CLI is your friend when you need to script 200 VM migrations and don't want to click through the web UI like a psychopath.
Network Architecture:
Source environments require HTTPS connectivity (port 443) to Google Cloud APIs. The migration service manages data transfer and tries to configure target VM network settings automatically (emphasis on "tries" - usually needs manual tweaking afterward).
Current Version and Recent Updates
Currently at version 5.0. ARM64 support finally went GA back in March 2024 - only took them forever. Works for migrating ARM VMs from AWS and Azure, but test your shit first - learned the hard way that some apps have sneaky x86 dependencies buried in random libraries.
Supported ARM64 operating systems:
- Debian 11 and 12
- RHEL 9
- Rocky Linux 8 and 9
- SLES 15 SP5
- Ubuntu 20.04 and 22.04
Current capabilities:
Four migration source types (VMware vSphere, AWS EC2, Azure VMs, Google Cloud VMware Engine) with deep integration into Google Cloud services. Each migration path uses different APIs and has its own unique ways to break.
Recent feature additions (via release notes):
- Customer-Managed Encryption Keys (CMEK) support - finally, compliance people can shut up
- Enhanced network configuration handling - "enhanced" is doing a lot of work here
- Expanded OS support - now 75+ supported versions. Random custom Linux builds? Your mileage will vary
- VM expiration policies - they delete your test VMs after 100 days now, don't say I didn't warn you