I walked into a meeting to watch three teams present their monitoring status. Each had its own portal, its own dashboards, its own private definition of "healthy." One team said production was green. I pulled up VM Insights and counted while they talked: 22 of 246 machines were actually reporting. The other 224 were invisible. Green dashboard, blind infrastructure. If you want to onboard hybrid VMs and get honest monitoring coverage, that meeting is the whole reason I reach for Azure Arc first.

Three worlds that never talked to each other

Five hundred VMs. Azure native, VMware, on-premises. Three different worlds, and nobody had ever wired them together. Production ran across all three. So did dev. So did the incidents.

The numbers were worse than anyone wanted to say out loud. Production: 22 of 246 machines reporting to VM Insights. Dev was somehow uglier — 30 of 115. Three teams, three consoles, zero shared visibility. Nobody knew the real number because nobody had a single place to look. When an incident hit, triage meant three logins and a lot of guessing. Hours, not minutes.

That is not monitoring. That is a false sense of security with extra dashboards.

The migration I refused to propose

The obvious move was a big one: rip out VMware, move everything into Azure, come back in two years with a slide that says "done." I have watched that plan fail enough times to push back on it in the room.

These workloads live where they live for reasons. Some can't move — licensing, latency, a vendor appliance that only ships as an OVA. Some shouldn't move, because the cost of touching them dwarfs the benefit. The goal was never to replace everything. It was to see everything. Replacement is a two-year bet. Visibility is a two-week one.

What Azure Arc actually did

Azure Arc answers a very specific question: how do I manage machines that aren't Azure VMs as if they were? You install the Arc agent, and an on-prem box or a VMware guest shows up in the Azure control plane as a first-class resource. Same portal, same policy engine, same monitoring stack.

Here is how the three worlds came together:

  • Azure-native resources were already in the control plane. Nothing to do.
  • VMware workloads came in through Azure VMware Services, so the whole vSphere estate landed in the same pane.
  • On-premises servers got Arc agents, which pulled them into the exact same management surface as everything else.

No rip-and-replace. No five-year plan. Connect what exists, then enforce one rule: if a VM exists, it gets monitored.

VM Insights recovery: the first real win

Once the machines were Arc-enabled, I stopped installing monitoring agents by hand. Azure Policy did it. Policy-driven agent deployment means the rule lives in the platform, not in someone's runbook: any VM in scope that lacks the agent gets it automatically, through policy remediation. No tickets. No "did you install it on the new box?" No exceptions.

The recovery was immediate and total. Production went from 22 of 246 reporting to all 246. Dev went from 30 of 115 to the full 115. One hundred percent VM Insights coverage across prod and dev — not because a person chased every machine, but because the platform stopped letting machines exist unmonitored.

Policy and what immutable really means

Coverage was step one. Compliance was step two, and this is where hybrid stops feeling like a burden.

A VM drifts from the baseline — someone opens a port, disables an agent, skips a config. In the old world, that drift lived silently until an audit or an incident found it. Now remediation kicks in automatically. No ticket, no meeting, no blame session. The infrastructure enforces its own rules at the moment they are broken.

That is what "immutable infrastructure" means in a hybrid world. Not that nothing ever changes — machines change constantly. It means the desired state is enforced by the platform, so drift is corrected instead of discovered. The baseline is applied at creation time and defended continuously, whether the box lives in Azure, in vSphere, or in a rack you can walk up to and touch.

The results

Where it landed:

  • 100% VM Insights coverage across production and dev
  • Three environments — Azure, VMware, on-premises — managed from a single control plane
  • Policy remediation on autopilot for both agent deployment and compliance drift
  • 500+ VMs fully visible and compliant, from one portal
  • Incident triage measured in minutes instead of hours, because there is one place to look

Hybrid is an architecture, not a problem

The technology to do this was always there. What was missing was the integration — and the decision to stop pretending the on-prem estate didn't exist.

Hybrid isn't a problem you solve by making it go away. It's an architecture you master by managing it intentionally. Azure Arc is how you onboard hybrid VMs into one control plane and turn "we think it's fine" into a number you can actually stand behind.

So here's the uncomfortable exercise. Open your monitoring right now and count how many of your VMs are actually reporting. Not how many exist. How many are visible. If you don't know the exact number, that is the number that matters.

Mine was 22 out of 246. The dashboard said green.