Virtual Machines / VMSS
IaaS compute. Resiliency is entirely a function of how many instances you run and where you place them — a single VM has no failover story at all.
Single VM / Availability Set
One VM, or 2+ VMs in an Availability Set (spreads across fault/update domains within a single datacenter). Protects against rack and host failure only.
- Replication
- None
- RPO
- N/A — no automatic recovery point beyond disk durability; requires a separate backup policy
- RTO
- Hours — manual restore from backup or redeploy
- Failover trigger
- N/A
A single VM's 99.9% SLA (with Premium/Ultra disks) is an uptime commitment from Microsoft, not a data-loss guarantee — it says nothing about RPO/RTO for your data.
Availability Zone deployment (2+ VMs / zone-spread VMSS)
VMs or VMSS instances spread across 3 Availability Zones behind a load balancer. Azure automatically reroutes traffic to healthy zones.
- Replication
- None
- RPO
- 0 for stateless compute — depends entirely on whether the backing data tier is also zone-redundant
- RTO
- Seconds to a few minutes — load balancer health probes reroute automatically
- Failover trigger
- Automatic
This only works if you actually run 2+ instances spread across zones. A single VM pinned to one zone gets zero benefit from Availability Zones existing.
Azure Site Recovery (VM to VM, cross-region)
Continuous asynchronous, block-level replication of VM disks to a secondary region, with orchestrated Recovery Plans to fail over multiple VMs together.
- Replication
- Asynchronous
- RPO
- As low as ~30 sec–5 min under normal conditions — not an SLA-backed number
- RTO
- Minutes to roughly an hour depending on VM count and recovery plan complexity — execution time only, after someone triggers it
- Failover trigger
- Manual (customer-triggered)
ASR's own service SLA (99.9%) covers replication service availability, not a committed RPO/RTO for your failover.
Gotchas
Zone resiliency and region resiliency are different problems
Availability Zones protect against a datacenter going dark, not an Azure region going dark. Teams frequently cite '99.99% zone-redundant SLA' as evidence of DR readiness when it only covers the zonal failure domain — region-wide DR still requires ASR or an application-level active-active design.
ASR failover is never automatic
Someone — a human or a runbook you build and test — has to declare the disaster and trigger the recovery plan. The RTO Microsoft quotes for ASR is execution time only; detection and decision time is entirely additive and usually the larger component for Tier 0/1 targets.
No backup policy means no RPO, full stop
A VM without Azure Backup or ASR configured has no recovery point at all beyond redeploying from an image/template — 'redundancy' options above only apply once you've actually turned one on.