Application-Consistent Backups
Application-consistent backups are used for backing up applications with high or extremely high transaction loads. Good examples of such applications can be Microsoft SharePoint, Active Directory, MS SQL Server, Oracle database solutions, or any other.
As such applications are subject to back up, it is quite important that memory state, contents and currently pending transactions are frozen and included in the backup dataset. This ensures the backup will be valid and can be used for restore.
Therefore, an application-consistent backup is a backup that is able to notify applications that backup occurs soon and allows applications to achieve a quiescent and consistent state by flushing all operations to disk.
Frameworks for Application-Consistent Backups
Volume Shadow Copy Service (VSS) is a framework that provides backup applications with the feature of creating application-consistent backups.
When a backup procedure is initiated, VSS works as follows:
- Every running application that needs to flush its data kept in RAM to disk is notified by VSS.
- Then a Copy-On-Write operation is performed on volume.
- A volume snapshot is done and can be processed by a backup application.
In case an application runs on a virtual machine on Hyper-V Server, a VSS-aware backup of the Hyper-V host, leveraging Hyper-V Integration Services, communicates with the VSS writers in the guest virtual machine to perform an application-consistent backup of the virtual machine and the applications on it
Application-Consistent VMware Backups
Application-consistent backup of virtual machines on VMware environment is based on quiescence. For details on how to configure application-consistent backup read here.
Quiescence
Quiescing is a process of bringing virtual machine file systems and application data to a consistent state. This is an important tool for correct application-consistent virtual machine backups.
To back up a currently running VM, quiescence is the perfect method. Especially, this concerns a virtual environment with highly-transactional applications (e.g. MS SQL Server or alike), since the safety of the application data is guaranteed by quiescence.
To back up consistently VMs with no VSS support (Linux VMs), quiescence should be set in backup plan settings. In this case, quiescence is used to bring a VM to a consistent state before the backup plan starts.
Also, quiescence suits for backups of Microsoft Windows-based VMs with the built-in Microsoft VSS support. For this, the VMware VSS component of VMware Tools is used.
To learn more, refer to Working with VSS chapter of the VMware documentation
Application-Consistent Hyper-V Backups
Application-consistent virtual machine backups of Hyper-V are based on initial settings in Hyper-V environment with automatic selection of checkpoint types in case of some issues. For details on how to configure application-consistent backup read here.
Available Hyper-V Checkpoint Types
Windows 10 Hyper-V includes two types of checkpoints:
- Standard Checkpoints. Standard checkpoint takes a snapshot of the virtual machine and virtual machine memory state at the time the checkpoint is initiated. A snapshot is not a full backup and can cause data consistency issues with systems that replicate data between different nodes such as Active Directory. Hyper-V only offered standard checkpoints (formerly called snapshots) prior to Windows 10
- Production Checkpoints. Production checkpoint uses Volume Shadow Copy Service or File System Freeze on a Linux virtual machine to create a data-consistent backup of the virtual machine. No snapshot of the virtual machine memory state is taken
Checkpoint Creation
Checkpoint creation depends on Hyper-V configuration. The following cases are possible:
- Production checkpoint creation is enabled
- Standard checkpoint creation is enabled
- Checkpoints are disabled (no checkpoint type)
As a backup plan runs, an attempt to create a checkpoint of a specified type first is made. If a checkpoint is not created, a recovery inconsistent checkpoint is created instead. This checkpoint type does not contain a VSS snapshot of a virtual machine.
If no checkpoints are available (the Enable Checkpoints check box is unselected in the virtual machine properties), an attempt to create a recovery consistent checkpoint with a VSS snapshot of a virtual machine is made. If a recovery consistent checkpoint failed to create, a recovery inconsistent checkpoint is created instead: it does not contain a VSS snapshot of a virtual machine.
For recovery consistent checkpoints, input/output activities that are quiesced in the moment of VSS snapshot creation will be resumed.
It is not recommended to use recovery inconsistent checkpoints for restore purposes: restore may fail
How to Change Checkpoint Type with Hyper-V Manager
- Open Hyper-V Manager.
- Right click on a virtual machine and select settings.
- Under Management select Checkpoints
- Select the desired checkpoint type.