Azure Update Manager maintenance configurations are the difference between “we patched on purpose” and “why did the payroll server reboot during month-end close?” They schedule recurring guest OS patching for Windows and Linux, on Azure VMs and Azure Arc-enabled servers, while keeping blast radius, timing and reboots under control.
This guide covers what to design before you start, which settings matter, how to use dynamic scopes safely, and what to check when the schedule looks fine but nothing gets patched.
What Azure Update Manager maintenance configurations do
Azure Update Manager assesses and deploys OS updates across supported servers. Maintenance configurations are the saved recurring schedules behind it: when patching can happen, which classifications install, and how machines are selected, through fixed assignments or dynamic scopes.
Azure Update Manager patching workflow
Assess first, scope carefully, patch inside a window, then verify with Resource Graph.
When to use a schedule instead of patching now
| Scenario | Recommended approach | Why it matters |
|---|---|---|
| Monthly server patching | Maintenance configuration | A repeatable window and consistent policy. |
| Emergency zero-day update | On-demand deployment, then verify | Speed matters more than the next window. |
| Large mixed estate | Maintenance configuration plus dynamic scopes | Tag-based selection scales better than hand-picking. |
| Sensitive workloads | Separate rings and longer windows | Fewer overlaps, restart surprises and dependency collisions. |
Design patch rings before the schedule
Decide which machines patch together, which must never patch together, and how long installation plus restart takes. If your first configuration is called “All-Servers,” stop and reconsider.
- Ring 0, test and development: patch early and learn what breaks before production does.
- Ring 1, staging and non-critical production: validate dependencies, agent health and restarts.
- Ring 2, critical production: patch after earlier rings are clean, with app owners informed and post-checks ready.
- Ring 3, exceptions: vendor windows, cluster sequencing or manual validation, each with a named owner and review date.
Microsoft notes that VMs in a common availability set aren’t updated concurrently across update domains, but don’t rely on that alone. Split schedules where app tiers, clusters or windows demand it.
Prerequisites to check
Update Manager pushes required extensions on first use, but unmet prerequisites still become failed patch nights.
- Patch orchestration: Azure VMs on scheduled patching need Customer Managed Schedules; Arc-enabled machines don’t.
- Azure Arc: non-Azure servers must be connected as Arc-enabled servers first.
- Linux: Python 2.7 or later, plus high-level permissions, since OS and kernel components can change.
- Update source: Update Manager honors each machine’s configured update source; it doesn’t publish updates itself.
- Other Microsoft products: for SQL Server and similar updates on Windows, check the “updates for other Microsoft products” setting.
Patching data is useful, but plan the telemetry; Log Analytics cost guardrails keep it from becoming an expensive junk drawer.
Use dynamic scopes carefully
Dynamic scopes pull machines in by resource group, resource type, location, tags and OS type. That scales well, and it exposes weak tagging discipline just as quickly.
- Use explicit tags, such as
PatchRing=Ring1,Environment=Prod,Owner=FinanceAppsandMaintenanceWindow=Sun-0200-UTC. - Test the scope against your CMDB or asset inventory before trusting it.
- Don’t start with “all production.” Go narrow, validate, then expand.
- Know the scope level: dynamic scopes are created at subscription or resource group level, and that can’t be edited afterwards.
- Own exceptions with a reason, compensating control and review date.
Create a safe maintenance configuration
- Open Azure Update Manager and review assessment status.
- Choose the ring and target estate.
- Create the configuration with a cadence, a window and a readable name such as
aum-prod-windows-sun-0200-utc. - Select classifications, starting with security and critical unless policy says otherwise.
- Set reboot behavior deliberately for each workload’s tolerance.
- Assign machines or add a dynamic scope, and review the selection before saving.
- Run Ring 0 first as a genuine rehearsal.
- Verify results in Update Manager and with Azure Resource Graph queries.
Troubleshooting: the schedule runs but nothing patches
Work through the boring checks first: window length, orchestration mode, agent health, update source reachability, scope membership and Resource Graph results.
| Symptom | Likely cause | Fix |
|---|---|---|
| Azure VM not in the schedule | Orchestration isn’t Customer Managed Schedules | Update the setting, then reassess. |
| Arc server missing | Not connected to Arc, or poor agent health | Check Arc connectivity, agent status and eligibility. |
| Machine in the wrong ring | Tags or scope criteria too broad | Tighten tags and review the selection. |
| Assessed but not installed | Short window, blocked update source or classification mismatch | Extend the window, check network and source, review classifications. |
| Results hard to audit | Nobody queries operation history | Use Resource Graph to review assessment and installation data. |
Governance checklist for production patching
- Name schedules consistently: platform, ring, OS, day and UTC time.
- Require ownership tags on every patched machine.
- Keep exception lists short, with expiry unless renewed.
- Report success by ring, not just by subscription.
- Review failed patches every cycle; they’re security debt.
- Coordinate with change management; automation doesn’t replace communication.
Azure Policy pairs naturally with this: it enforces tagging and configuration hygiene while Update Manager handles patching. See Azure Policy remediation tasks for fixing tag drift at scale.
Last reviewed: October 2026
Sources
- Azure Update Manager overview (Microsoft Learn)
- Schedule recurring updates (Microsoft Learn)
- Manage a dynamic scope (Microsoft Learn)
- Prerequisites for Azure Update Manager (Microsoft Learn)
- Query resources with Azure Resource Graph (Microsoft Learn)
- Maintenance configurations for Azure VMs (Microsoft Learn)
Discover more from Cloud Osprey
Subscribe to get the latest posts sent to your email.