Application-Aware Processing
By default, Veeam Backup & Replication does not process application logs and creates a crash-consistent backup of VMs with applications that use transaction logs for operations. You can create a transactionally consistent backup — in this case, Veeam Backup & Replication will process application logs. In case a disaster strikes, Veeam Backup & Replication will use backups of logs to perform recovery operations.
To create transactionally consistent backups or replicas of VMs that run the following applications, you must enable application-aware processing in job settings:
- Microsoft Active Directory
- Microsoft SQL Server
- Microsoft SharePoint
- Microsoft Exchange
- Oracle
- PostgreSQL
Application-aware processing is the Veeam technology that allows Veeam Backup & Replication to prepare applications running on the VM and create a consistent view of application data on the VM guest OS. Once the application is ready, Veeam Backup & Replication triggers the VM checkpoint and starts to copy VM data to the target. Depending on the VM OS, Veeam Backup & Replication utilizes the following technologies to create transactionally consistent backups:
- For Windows-based VMs, Veeam Backup & Replication uses Microsoft Volume Shadow Copy Service (Microsoft VSS). Microsoft VSS ensures that there are no unfinished database transactions or incomplete application files. For more information, see Microsoft Docs.
- For Linux-based VMs, Veeam Backup & Replication uses the agent that connects to the VM guest OS and prepares databases and instances for a consistent backup.
Requirements and Limitations
Application-aware processing for Linux-based VMs and Microsoft Windows Server versions is supported by the following versions of Microsoft Hyper-V (see Microsoft Docs). To use application-aware processing, you must have Hyper-V Integration Services and the latest updates installed on the VM guest OS. For more information on supported guest OS versions, see Supported Applications.
Important |
If a VM runs an application that does not support Microsoft VSS (there is no VSS writer for this particular type of application, for example, MySQL), Veeam Backup & Replication will not be able to utilize Microsoft VSS and application-aware processing for this VM. To process such VMs, you can use Microsoft Hyper-V guest quiescence with pre-freeze and post-thaw scripts. For more information, see Microsoft Hyper-V Guest Quiescence and Pre-Freeze and Post-Thaw Scripts. |
How Application-Aware Processing Works for Windows-Based Machines
If you enable application-aware processing in job settings, Veeam Backup & Replication performs the following operations as a part of the backup or replication process:
- Veeam Backup & Replication deploys the non-persistent runtime components or, if necessary, persistent agent components on the VM and detects if the VM runs any of the supported applications.
- Veeam Backup & Replication collects information about applications installed on VMs — this information is required for VSS-aware restore.
VSS-aware restore is performed when the VM is started after you restore it from the backup or fail over to a VM replica.
- Veeam Backup & Replication prepares applications for VSS-aware restore.
- Microsoft VSS communicates with applications and quiesces I/O activities at a specific point in time.
- Microsoft Hyper-V VSS requestor triggers a VM VSS snapshot.
- Microsoft VSS resumes quiesced I/O activities on the VM guest OS.
- Veeam Backup & Replication triggers a snapshot for the volume on which the VM is located.
- The job session proceeds as usual.
- If you have instructed Veeam Backup & Replication to truncate transaction logs, Veeam Backup & Replication truncates transaction logs on the VM guest OS after the backup or replica is successfully created.
How Application-Aware Processing Works for PostgreSQL
If you enable application-aware processing in job settings, Veeam Backup & Replication performs the following operations as a part of the backup or replication process
- Veeam Backup & Replication installs either non-persistent components or persistent agent components to the VM guest OS and detects if the VM runs any of the supported applications.
Note |
By default, Veeam Backup & Replication installs non-persistent components to the VM guest OS and uninstalls them after the job completes. You can also install a Linux management agent to the VM guest OS — in this case, the agent will remain installed on the VM and Veeam Backup & Replication will use it to access the VM guest OS instead of SSH. For more information, see Persistent Agent Components. |
- The pgsqlagent agent looks for PostgreSQL instance configuration files. It uses these files to get information on the PostgreSQL instance settings.
Note |
By default, configuration files are located in the following directories:
If you keep the configuration file in the custom directories or if you want to exclude some directories from the scan, you can manually create the /etc/veeam/VeeamPostgreSQLAgent.xml file. In this case, the pgsqlagent agent will use commands from this file. To explicitly include or exclude specific configuration files from rescan, add the following commands to the /etc/veeam/VeeamPostgreSQLAgent.xml file:
Note that you must embed the commands into the <config /> tag. To specify several directories, separate them by a comma. For example: <config ExcludeConfigDirs="/etc/postgresql/13/cl4/,/etc/postgresql/13/cl6/" AddConfigDirs="/home/user/pgconfdir/"/>. This command skips 2 directories and includes 1 custom directory. |
- The pgsqlagent agent returns a list of PostgreSQL configuration files to Veeam Backup & Replication.
- Veeam Backup & Replication accesses the PostgreSQL VM guest OS over SSH or over management agent.
- Veeam Backup & Replication connects to the PostgreSQL instance, gets a list of databases added to the instance and information that is necessary for data recovery operations.
- The pgsqlagent agent sets the PostgreSQL instance to the ready for a backup state.
- Agent freezes the VM guest OS and creates a snapshot of the PostgreSQL instance.
- Veeam Backup & Replication completes a backup of the PostgreSQL instance and resumes stopped activities on the VM guest OS.
- Veeam Backup & Replication saves a backup of a machine with a PostgreSQL instance to a backup repository.
Related Topics