Azure Virtual Desktop Host Pool
Does ZopNight manage Azure Virtual Desktop Host Pool?
Azure Virtual Desktop bills through its session-host VMs rather than the host-pool object, since each host is a VM paying for allocated compute plus disks. ZopNight links every pool to its hosts, reads 60 days of session activity from Azure Monitor, and schedules the underlying machines individually as vm resources.
Rules that fire on Azure Virtual Desktop Host Pool
No active rule family targets Azure Virtual Desktop Host Pool today. Rules that used to are retired, and retired rules publish no pages and fire no findings. Scheduling and permissions coverage are unaffected.
At a glance
| Field | Value |
|---|---|
| Scheduling notes | discovery and cost visibility only; the underlying session-host VMs are scheduled individually as vm resources. |
Azure Virtual Desktop host pools are collections of session-host VMs that deliver virtual desktops and remote apps to users. Session hosts left running outside business hours are a classic weekend-and-nights cost leak.
Session hosts carry the cost, the pool carries the config
The host pool itself is configuration: assignment type, load balancing, app groups. What bills is the fleet of session-host VMs registered to it: each one an ordinary Azure VM with compute charges for every allocated hour and managed disks billing by provisioned size beside it. Desktop workloads make this shape especially lopsided, because the entire purpose of the fleet is human sessions, and humans keep office hours. A pool serving a 40-hour work week from hosts allocated all 168 hours spends most of its budget on empty desktops.
Host-pool discovery and idle-host signals
ZopNight finds each host pool through Azure Resource Graph and links it to its underlying session-host VMs. Session activity over a 60-day Azure Monitor lookback reveals which hosts actually carry users and when, Cost Management attributes the spend, and idle-host recommendations flag machines whose session history does not justify their allocation. The pool object is discovery and cost visibility only. The scheduling lever lives one level down, where each session host is deallocated and started individually as a vm resource. That keeps AVD’s own drain-mode and autoscale features free to manage what remains running.
Nights-and-weekends leakage in AVD
Patterns to hunt: personal-assignment pools where each user permanently owns a host that runs whether or not they log in; pools sized for peak headcount after the team shrank; and GPU-enabled hosts provisioned for one visualization project, still allocated long after it shipped.
Host pools in the Azure portal
Azure portal → Azure Virtual Desktop → Host pools → select the pool → Session hosts. The list shows each host’s power state and active session count side by side. Allocated hosts with zero sessions, hour after hour, are the leak made visible.