Integration of SAP HANA and Veeam Plug-in requires additional environment planning. When you deploy the plug-in, keep in mind the following requirements and limitations.
Veeam Plug-in uses built-in compression functionality of Veeam Backup & Replication. If you want to disable the compression, do the following:
- Open the /opt/veeam/VeeamPluginforSAPHANA/veeam_config.xml file with a text editor.
- In the veeam_config.xml file, find the <AgentParams /> line and add the following parameter:
<AgentParams compression="NoCompression" />
Veeam Plug-in forwards the backups created by SAP HANA integrated backup application to a Veeam backup repository. You can schedule backup operations with all SAP HANA relevant scheduling options like SAP HANA Cockpit (HANA Cockpit 2.0 SPS 06 or later version), SAP DB13 (NW 7.02 SP17 or later version) or external schedulers like cron, UC4, TWS and others.
For instructions on how to configure external schedulers, see the Veeam Plug-in for SAP HANA Best Practices.
For SAP Management Software, make sure SAP HANA 2.0 systems are configured in the Multiple-Container mode. Otherwise, backups will fail with the following error:  Invalid path selection for data backup using backint. For details, see the SAP HANA Multitenant Database Containers section of the SAP HANA Master Guide.
Veeam Plug-in for SAP HANA uses the Windows authentication methods of the Veeam Backup & Replication server to establish a connection to this server and to the target backup repository. It is recommended to create one specific user for each Veeam Plug-in server or for each scale-out cluster.
If this user will be later changed manually, the new user must have at least the Veeam Backup Operator and Veeam Restore Operator rights within the Veeam Backup & Replication user management. For instructions on how to assign Veeam Backup & Replication roles, see the Roles and Users section of the Veeam Backup & Replication Guide.
By default, SAP HANA uses one channel per data backup operation. You can configure SAP HANA to use additional channels. When multiple channels are used, SAP HANA distributes the data equally across available channels.
To control the number of parallel channels used for each SAP HANA Backint instance, you can edit the parallel_data_backup_backint_channels parameter in the SAP HANA global.ini file. For instructions, see the Multistreaming Data Backups with Third-Party Backup Tools section of the SAP HANA Administration Guide
The number of multistreaming channels applies to all data backup services larger than 128GB. Data backup services smaller than 128GB use only one channel.
Basically, the more channels used in parallel, the faster is the data flow between SAP HANA and the source Veeam Transport Agent. However, the more channels used in parallel, the more resources are used on the SAP HANA server, network, Veeam backup repository, backup source and target disk systems. You should find the right mix between performance and resource allocation for your specific business need.
The following hardware resources are recommended based on tests on Skylake processors:
- SAP HANA server: 1 CPU core and 200 MB of RAM per currently used channel.
- Backup repository server: 1 CPU core and 1 GB of RAM per 5 currently used channels.
These resources are recommended only if you use a dedicated backup repository for Veeam Plug-in backups. If you use the same backup repository for Veeam Plug-in backups and VM backups created by Veeam Backup & Replication or Veeam Agents, consider adding the mentioned above hardware resources based on usual load on your backup repository. For details on hardware requirements for a backup repository, see the System Requirements section of the Veeam Backup & Replication User Guide.
We recommend to contact your Veeam system engineer to optimize the channel settings and resource allocation. Also, mind the following:
- It is not recommended to use more than 64 channels in parallel as the overhead will reduce individual channel performance. Set the max_recovery_backint_channels setting in global.ini to 64 or below depending on available hardware resources.
- It is recommended to use a separate backup repository for Veeam Plug-in backups.
- If you want to improve backup performance, the SAP HANA buffer must be increased for additional used channels. For details, consult with your SAP HANA database administrator.
- SAP HANA can back up individual databases and tenants in parallel. To optimize resources, you can back up databases sequentially.
- If there are not enough available repository task slots, SAP HANA waits till repository task slots become available.
- During restore, the order of repository task slots is ignored, and channels are used as requested by SAP HANA.
- Veeam Backup & Replication server: during manual metadata operations such as import of backup files, the Veeam Backup & Replication server needs additional 15 GB of RAM per 1 million files located in the same backup job folder.
You can use the following examples as a reference:
- Example 1: Backing up all databases in parallel
In this example, there is a system with 2 tenant databases, each database has 4 services. The databases are backed up in parallel. The SAP HANA channel setting is 6. The following maximum repository task slots and SAP channels are used:
- Up to 4 task slots/channels are used by SYSTEMDB and its 4 services (all below 128 GB)
- Up to 6 task slots/channels are used for the index service of the tenant database 1 (the database is bigger than 128 GB)
- Up to 3 task slots/channels are used for the rest of the 3 remaining services of the tenant database 1 (all below 128 GB)
- Up to 6 task slots/channels are used for the index service of the tenant database 2 (the database is bigger than 128 GB)
- Up to 3 task slots/channels are used for the rest of the 3 remaining services of the tenant database 2 (all below 128 GB)
- If the log backups are below 128GB, you must reserve at least 3 channels for the log backup of SYSTEMDB, tenant database 1, and tenant database 2. These log backups are started automatically on their own schedule or when the maximum file size of the log file is reached.
In total, for backup processes of all databases started in parallel you need up to 27 available task slots.
- Example 2: Backup of all databases sequentially
In this example, there is system with 2 tenant databases, each database has 4 services. The databases are backed up sequentially. The SAP HANA channel setting is 6. The following maximum repository task slots and SAP channels are used:
- Up to 6 task slots/channels are used for the index service of a tenant database (the database is bigger than 128 GB).
- Up to 3 task slots/channels are used for the rest of the 3 remaining services of the same tenant database (all below 128 GB).
- If the log backups are below 128GB, you must reserve at least 3 channels for the log backup of SYSTEMDB, tenant database 1, and tenant database 2. These log backups are started automatically on their own schedule or when the maximum file size of the log file is reached. Assuming that the log file backups are below 128 GB and do not use additional channels.
In total, for backup processes of sequential started database backups, 12 task slots must be available.
Veeam Plug-in supports SAP HANA integrated encryption. The encryption processes are performed on the SAP HANA side. Veeam Plug-in is not involved in encryption processing.
Plan the protection of the encryption environment carefully. In case the encryption keys are lost, Veeam Plug-in can only provide an access to the encrypted backup file. You will have to decrypt data in SAP HANA. For details, see the Managing Data Encryption section of the SAP HANA Administration Guide.
To back up the SAP HANA catalog using Backint, change the settings of the catalog_backup_using_backint parameter in the backup section of the global.ini.
Veeam Plug-in does not use the Backint parameter file. Leave these fields empty when asked for.
Veeam Plug-in supports SAP HANA scale-out clusters with the following limitations:
- Due to design of SAP HANA databases, the same Veeam Plug-in configuration must be set on all scale-out cluster members, including stand-by nodes.
- On all cluster nodes, Veeam Plug-in must be configured to transfer backups to the same repository.
- Each cluster node must use the same credentials to connect to Veeam servers.
- All backup tasks across the SAP HANA scale-out cluster are performed in parallel.
SAP HANA does not allow you to back up from replicas. You can back up these databases only after a failover. To prepare the replication target system for backups after the failover, you can configure Veeam Plug-in as usual for a new scale-up or scale-out system. The Veeam backup job object will be created at first backup run and reflect the hostname of each system.
You must perform full database backup at least once after each failover or failback, so that SAP HANA starts to create automatic log backups.
After the failover, if you want to restore backups created before the failover, you must configure the plug-in to be able to access the backup files from the original source system:
- Go to /opt/veeam/VeeamPluginforSAPHANA and run the Veeam Plug-in configuration tool with the following parameter.
VM2ADM:/opt/veeam/VeeamPluginforSAPHANA> SapBackintConfigTool --set-restore-server
- Select the original source server.
Select source SAP HANA plug-in server to be used for system copy restore:
Enter server number: 1
- Specify the backup repository where the required source server backup is stored.
Available backup repositories:
Enter repository number: 1
- Perform system copy restore. For instructions, see Recovering Databases to Other Servers.
- Later, if you want to restore from the new backup chain created from the system replication server, you must run the command again and select the system replication server as a source for restore.
By default, Veeam Plug-in uses a hostname to create the Veeam Backup & Replication job object and a folder where the backups will be stored. If server names match, you can set the following entry in the Veeam configuration XML file (/opt/veeam/VeeamPluginforSAPHANA/veeam_config.xml) to be able to distinguish servers:
<PluginParameters customServerName="hostname.domain.tld" />
If your servers in multiple environments have the name sap1 and the domains for the 2 environments are customer1.local and customer2.local you have to set the following entries:
<PluginParameters customServerName="sap1.customer1.local" />
<PluginParameters customServerName="sap1.customer2.local" />
SAP HANA INI Files
SAP HANA does not back up the SAP configuration stored in INI files. Contact your SAP HANA database administrator to discuss the backup of the following files:
Also, to backup SAP HANA configuration files, you can use file or image-level backup options of Veeam Backup & Replication or Veeam Agent for Linux.
SAP HANA Server for Disaster Recovery
You can use Veeam Backup & Replication or Veeam Agent to create an image-level backup of the SAP HANA server. Note that to create transaction-consistent backups, you must use pre-freeze and post-thaw scripts.
Veeam Plug-in Configuration File
To back up the configuration file of Veeam Plug-in, back up the following file: /opt/veeam/VeeamPluginforSAPHANA/veeam_config.xml
Veeam Plug-in stores backup files in the following formats:
- A .VAB file stores compressed and deduplicated copy of a SAP HANA database. Veeam Plug-in creates .VAB files for all types of backups.
- A .VASM file stores metadata that contain information about the backup. A .VASM file is created for each .VAB file. .VASM files are used by Veeam Backup & Replication to get data about Veeam Plug-in backups.
- A .VACM file stores metadata of a backup job object.
Veeam Plug-in backup file names match the backup file ID's (EBID) created by SAP HANA.