As is the case with other server virtualization platforms, such as VMware, Hyper-V virtual machines can be backed up in a variety of different ways. Microsoft’s preferred method of backing up Hyper-V involves creating a host level backup.
A host level backup is a backup that is made against a Hyper-V host server, and includes all of the virtual machines that exist on the host. As an alternative, Hyper-V virtual machines can be backed up at the guest level, which typically involves installing a backup agent onto a virtual server’s operating system, and backing up the virtual server as if it were running on physical hardware.
Creating host level backups
There are a variety of reasons why Microsoft recommends creating host level backups. For instance, host level backups tend to be easier to manage than guest level backups because organizations tend to deploy large numbers of virtual machines, but relatively few Hyper-V servers. An arguably more important reason for backing up Hyper-V virtual machines at the host level is that guest level backups capture the contents of a virtual machine’s virtual hard disks, but do not include external virtual machine components such as the virtual machine’s checkpoints or hardware allocation. As such, guest level backups can only be restored to an existing virtual machine (although an empty VM can be created just prior to restoration).
When a host level backup is created, virtual machines are backed up using one of two methods. One such method is known as the Saved State method. When the Saved State method is used, the Volume Shadow Copy Service communicates to Hyper-V that it is about to make a backup. Hyper-V responds by momentarily placing virtual machines into a saved state and then creating a checkpoint. As soon as the checkpoint has been created (which typically only takes a few seconds), the virtual machine is returned to its previous state. This checkpoint process allows the backup software to create a backup of a virtual machine without concern that the virtual hard drive’s contents will be modified while the backup is in progress.
The other method that can be used to back up a Hyper-V virtual machine is the Child VM Snapshot method. Like the Saved State method, the Child VM Snapshot method depends on the use of checkpoints. However, the Child VM Snapshot method has a greater level of virtual machine awareness than the Saved State method does, and the backup process does not typically incur a service interruption because the virtual machine is never placed into a saved state.
The snapshot method
The Child VM Snapshot method is the preferred method for backing up virtual machines. However, this method can only be used if the virtual machine that is being backed up meets certain criteria. Otherwise, the Saved State method will be used instead.
The first requirement for creating a Child VM Snapshot backup is that the Hyper-V Integration Services must be running on the virtual machine that is being backed up. The Integration Services are a collection of drivers that allow the virtual machine to communicate with the Hypervisor, and work similarly to the VMware Tools. The Hyper-V Integration Services are a collection of services which can be enabled or disabled individually. In order to create a Child VM Snapshot backup of a virtual machine, the virtual machine’s Backup (Volume Checkpoint) integration service must be enabled.
A second requirement is that the virtual machine must be configured to store checkpoints on the same physical volume as the virtual machine’s virtual hard disk. For example, if a virtual machine’s virtual hard disks are stored on the host’s F: drive, then the host must be configured to store checkpoints on F: as well.
Another requirement is that the virtual machine must be configured to treat storage as basic disks rather than dynamic disks. This requirement has nothing to do with dynamically expanding virtual hard disks or thin provisioning, but rather the way that storage is configured within the virtual machine. The VM’s operating system must be configured to treat all hard disks as basic disks. These disks must also be formatted with a file system that supports the use of checkpoints (such as NTFS).
One final requirement is that the virtual machine must be in a running state if the Child VM Snapshot backup method is to be used. If a VM is powered off or is already in a saved state, then Hyper-V resorts to using the Saved State method, which is non-disruptive for virtual machines that are not running.
Incidentally, the selection of backup methods is internal to the backup software. A backup application won’t ask the backup operator which method to use. Instead, it will check to see if the virtual machine meets the criteria for performing a Child VM Snapshot backup. If VM does not meet the criteria, then the Saved State method will be used instead.