N-central Help

KBA11002: Guest OS Session on a Hyper-V Host Enters a Saved State During Backup

Knowledge Base Article #:

11002

Applicable Versions:

CA ARCserve D2D R16

Date Created/Updated:

June 21, 2012

Background

Hyper-V uses one of two mechanisms to back up each VM. The default backup mechanism is called the Saved State method where the VM is put into a saved state during the processing of the PrepareForSnapshot event, snapshots are taken of the appropriate volumes, and the VM is returned to the previous state during the processing of the PostSnapshot event.

The other backup mechanism is called the Child VM Snapshot method which uses VSS inside the child VM to participate in the backup. For the Child VM Snapshot method to be supported, all of the following conditions must be met:

  • Backup (volume snapshot) Integration Service is installed and running in the child VM. The service name is "Hyper-V Volume Shadow Copy Requestor". (Note that for Windows 2000, the Backup Integration Service is not supported).
  • The child VM must be in the running state.
  • The Snapshot File Location for the VM is set to be the same volume in the host operating system as the VHD files for the VM.
  • All volumes in the child VM are basic disks and there are no dynamic disks.
  • All disks in the child VM must use a file system that supports snapshots (for example, NTFS).

In general, the process for backing up VMs is the same as described in the MSDN Library article: Overview of Processing a Backup Under VSS. The unique behavior happens when the Hyper-V VSS writer (part of the "Hyper-V Virtual Machine Management" service) processes the PrepareForSnapshot event. If the backup was done using the "Child VM Snapshot" method, there is additional processing done but it is not visible to the child VM.

The following procedure describes how to back up VMs.

Solution

To determine the proper way to troubleshoot this problem we first need to know the following question: Does the session restart on completion of the backup?

If yes, then the system may be using the "Saved State" Snapshot method. To troubleshoot this, ensure that your system meets all the requirements of the Child VM Snapshot method described in the Overview of Processing a Backup Under VSS article.

If the session does not start after the completion of the snapshot, this issue can occur for the following reasons:

  • The Guest OS disk is on a "Differencing Disk"
  • The Guest OS is on a "Dynamic Disk" and the system is encountering issues creating the VSS snapshot.

The best practice is to use fixed VHDs for production VMs as dynamic VHDs increase overhead and cause large fragmentation on the parent disk. This, in turn, decreases VSS performance.

If using differencing disks, refer to the Merging Differencing Disks section below to resolve this issue.

Merging Differencing Disks

A differencing disk is a child disk that you create for an already existing parent. Once you create a differencing disk for a parent and attach this to your VM, you will actually be writing to this disk and the parent will be maintained as a read-only disk. Differencing disks need to be created at the time of creation of the VM. This differs from snapshots which are taken as and when required within the Hyper-V Manager. Snapshots also make use of AVHD files but are easier to manage compared to differencing disks

These instructions are provided as a convenience based on available MS documentation and specific recommendation from Senior MS support engineers. We recommend that you consult MS and any stakeholders before executing this procedure in order to ensure that all risks are properly understood and mitigated.

Procedure

Below Is the procedure to Merge a differencing disk to its parent.

The merge process will need additional free space on the volume. Free space must be = (size of VHD) + (size of the AVHD you are merging). If a merge is performed without the necessary space you may lose some or all data on the session. It is always advised to take a backup of the VHD and the AVHD files before proceeding.

  1. Shut down the VM.

    Go to the folder containing the hard disk files, verify the number of AVHDs you have for this machine. Ideally you would only find one VHD and one AVHD file. If you find multiple AVHDs we would need to be more careful about the hierarchy.

  2. From the hyper V, you can use the inspect disk wizard to then choose the AVHD file.

    This will give you its parent file (which may either be a VHD file or an AVHD file depending on number of snapshots taken).

  3. Go back to Hyper-V Manager, choose the Edit disk and locate the child AVHD file that needs to be merged.

  4. Under Choose action, choose Merge.

  5. In the next screen, choose To the parent virtual disk.

  6. Verify the summary to make sure that you are merging to the correct parent. You would have to repeat the steps if you have multiple AVHDs.

  7. After you merge the differencing disk, the virtual machine must be reconfigured to use the parent disk instead of the differencing disk. To do this, Go to settings on the parent machine and choose the hard drive, and point to the parent VHD.

Further Details

Sources