Skip to content
Epic IT Support

K-12 Education

Moving 300 virtual machines off VMware without losing one

A large public school district exits VMware for Azure Local — 300 VMs and 120 TB migrated in planned waves, with Azure Arc onboarding and tested disaster recovery.

Client
A large public K-12 school district
Services
Virtualization & Migration, Cloud, Backup & DR
Virtual machines migrated
~300 Virtual machines migrated
Data moved across migration waves
120 TB Data moved across migration waves
Servers onboarded to Azure Arc
150–250 Servers onboarded to Azure Arc

The situation

A large public school district was facing a VMware renewal it could not justify. Its estate had grown to roughly 300 virtual machines across 120 TB of data, spanning student information systems, instructional applications, and district business operations — all of which had to keep running through an academic year that offered only two realistic change windows.

The district had already selected hardware but had no migration plan, no dependency map, and no disaster recovery design for the target platform. The engagement came to us through a value-added reseller partner, delivered under their brand.

What we did

Design before movement. The first deliverable was a written design document covering Azure Local cluster architecture across storage, networking, and compute; a VLAN design separating management, storage, compute, out-of-band management, and VM traffic; an Azure Arc onboarding strategy for 150–250 servers; and a disaster recovery design for the district’s most critical workloads.

Wave planning grouped by risk. The 300 VMs were inventoried, dependency-mapped, and grouped into three waves. Non-production systems — development, test, and QA — moved first. Tier two and three production workloads followed inside coordinated maintenance windows. Business-critical systems moved last, on individually planned cutovers.

Test migrations before any production wave. A representative virtual machine from every workload type was migrated and validated before a single production system moved. Issues surfaced on development systems rather than on the finance platform during month-end close.

Validation as a gate, not a formality. Every migrated VM was individually validated for OS boot, network reachability, and application service state. Source systems were decommissioned only after the district confirmed production acceptance. Full inventory reconciliation confirmed every workload was accounted for, powered on, and reachable.

Recovery designed and proven. Azure Site Recovery was configured for the district’s business-critical VMs with recovery plans defining boot sequencing and pre- and post-scripts. Every recovery plan was test-failed-over and validated, and a runbook was delivered covering planned failover, unplanned failover, and failback.

The outcome

The district completed its VMware exit on the schedule its academic calendar allowed, with no workload lost and no unplanned instructional downtime. It received an as-built architecture diagram, an operations runbook, a migration inventory log, a disaster recovery runbook, and an Azure Arc management guide — plus training for district IT staff on day-two operations, storage management, and node maintenance.

A ten-business-day hypercare period followed final cutover. The reseller partner kept the client relationship throughout; the district’s dealings were entirely with them.

Recognize the situation?

If this looks like the problem in front of you, describe it and we will tell you honestly what it would take.