Virtual Server Agent (VSA) hypervisors use a common framework to distribute backup jobs, as described in Backup Workload Distribution.
This topic describes considerations that are specific to Hyper-V.
To adjust the default behavior, see Performance Tuning for Backups.
Dispatch Logic
The basic process for matching virtual machines to proxies includes the following stages:
-
The coordinator prioritizes the virtual machines for each backup job.
-
The coordinator identifies specific proxies that can be used to back up each virtual machine. For each proxy, the list of VMs that can be assigned to the proxy includes all virtual machines that are on subclients where the proxy is available.
-
Each VSA proxy for the instance provides the coordinator information about the total memory and number of CPU cores for the proxy. The coordinator uses this information to calculate the amount of work that each proxy can handle, and the number of backup streams that can be assigned for the proxy.
-
The coordinator assigns each virtual machine to an appropriate VSA proxy and continues to assign virtual machines to proxies until all VMs are processed.
-
Depending on the flow of work, volume activity, how quickly backups are completed, and the availability of proxies, VM-to-proxy assignments can change over the course of a job:
-
When a proxy finishes backing up a VM and has no more VMs waiting to be backed up in the local queue (including statically assigned VMs), it sends the coordinator a request for another VM to back up. The coordinator selects the next VM from the dynamic assignment list for the proxy.
-
The process controller for each proxy keeps track of the number of VMs, number of disks, and size of VMs that are being processed, as well as the number of streams in use. The proxy communicates any change in workload to other proxies immediately, and sends changes for the number of disks and VMs being processed to the coordinator when requesting another VM to back up. When the number of streams in use changes, the proxy sends that information to the coordinator immediately.
-
The coordinator updates the proxy queue with current information about VM priorities.
-
The coordinator updates the queue as long as there are additional VMs to back up.
-
If only one proxy is available to back up a VM, the VM is statically assigned to that proxy.
Note
IntelliSnap backups always use static assignment because a single hardware snapshot that includes all VMs is taken at the beginning of the backup.
Proxy Selection
For Microsoft Hyper-V, virtual machine dispatch takes ownership of cluster shared volumes (CSV) into account when assigning virtual machines to Hyper-V nodes for backup. This dispatch logic applies to streaming backups and IntelliSnap backups. Virtual machines are dispatched to one of the following proxies for backup (shown in priority order):
-
CSV owner: Backups are assigned to the VSA proxy that owns the CSV when the following conditions are met:
-
The CSV owner is in the proxy list.
-
The virtual machine is on CSV and is marked for a failover cluster.
Notes
- CSV-based dispatch for Microsoft Hyper-V is not available for backups using a Windows Server 2016 proxy.
-
-
Cluster: Backups are dispatched to any node in the cluster when the following conditions are met:
-
The virtual machine is marked for a failover cluster.
-
The CSV owner is not in the VSA proxy list.
-
-
Host: Backups are assigned to the virtual machine host when the following conditions are met:
-
The VM host is a VSA proxy.
-
The VM is not marked for a failover cluster.
-
-
Any proxy: Backups are distributed to any available proxy by the coordinator node when the following conditions are met:
- The virtual machine is not marked for a failover cluster and the VM host is not a VSA proxy.