Application-aware…why you should care!

Application-aware Backups in the virtual world!

Many of today’s backup vendors are advertising that they can do application-aware backups. That’s great – but what does that exactly mean? Why would this be of any value to me and how will it help my organization? The answers to these questions are pretty straightforward and the added value to having application-aware backups can become invaluable!

Let’s start with, “What exactly are application-aware backups“?

Application aware backups provide added intelligence to interact with applications that reside on a server. This server can either be virtual or physical but for the purpose of this blog post we will focus on virtual. These applications could range from your enterprise software solutions all the way down to your small homegrown applications. The key here is the ability to interact with Microsoft’s Volume Shadow Service (VSS) so that it can be treated properly. In other words, application-aware basically is saying that we will be doing a transactionally consistant backup of applications such as SQL, Exchange, Active Directory, Sharepoint, and I’m sure many more could be added to the list here. The key for application-aware is really tied to the ability to tap into the vss writers.

If you run this command, you will have a sense for which applications are covered by being vss-aware.

vssadmin list writers

So what happens when we trigger these VSS Writers?

The triggering of VSS writers will start a VSS freeze, the backup solution will find out if there is a VSS-aware application running inside a VM. It then requests Microsoft VSS to create a consistent and reliable view of application data prior to taking a VM snapshot. Windows VSS interfaces with VSS-aware applications and Windows OS to quiesce all I/O at a specific point in time. This way, it ensures that there are no unfinished database transactions or incomplete application files during data copying operations.

What happens if I don’t backup in an application aware manner?

This method would be called crash-consistent and for most servers that don’t rely upon a database, it would suffice. Any server that has a vss-aware application residing on it will almost always prefer to be application consistent. One example, when you restore a domain controller that has been backed up in a crash consistent manner, the server feels as if it has experienced a hard shut down and then continues on to do an active directory repair. And for Microsoft SQL, you may need to know how to replay logs into a database file.

As you can see, not quiescing these applications/databases can leave room for data corruption and/or lost data. Protecting your systems in an application aware manner will ensure that all data residing on the virtual machine is protected and will be accessible upon a restore. Another great reason for application aware backups is the amount of time and frustration that it could save you by enabling this capability!


Enabling this feature within Veeam!


When creating a new backup job within Veeam, all that you need to do is hit the check box for Application Aware Image Processing followed by credentials and you’re off and running!

*Update* One extra benefit that I forgot to mention was Veeam’s ability to do log pruning for Exchange & SQL. The fact that Veeam is the only vendor that can do this at a image-level backup is extraordinary! See below on where to enable!  <– Thanks Doug Hazelman, @VMDoug!




Veeam & Rotating Media

Many organizations rely upon tape devices to off-site their backups which upon proper configuration can be very reliable. Well, what about the organizations that aren’t big enough to need a tape library? As always, Veeam has your BACK! Veeam added full support to leverage external hard drives (typically attached by USB) so customers can off-site their backups via USB HDD. Pretty cool!

In order to configure this capability, you will want to upgrade to Veeam v7 as well as install patch #3 (the patch is cumulative). This will enable full support for you to do rotating hard drives and can even choose to do this with both backup or backup copy jobs. If you’re not familiar with backup copy jobs then you should dig in and check this feature out! Here is a link with more details on backup copy jobs!

Some of you may be thinking, “This ability has been around for awhile with Veeam“. While yes, this is true, Veeam has added another piece to the process that will make life easier! So let’s jump into a few of the changes that need to be made to get this up and going.

(Assuming you have Veeam v7 already installed in your environment)

First, you will want to head over to Veeam’s website to grab patch #3 (

If you have version then you’re up to patch #3.


After getting patch #3 installed into your environment, there are just a couple registry keys that you will want to edit in order for this process to work as advertised. There is a bit of customization available by tweaking these keys which is what I like about it. The following 2 registry keys will need to be created in the location below in order for this to work.

Word of advice, “Always backup your registry before making changes!”

[HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication]

ForceCreateMissingVBK (DWORD)
Enables support for rotated drives. With this functionality enabled, if any backup file from the latest full backup chain is missing (such as when the existing hard drive is replaced by another one), jobs will start the new backup chain and create the new full backup (instead of failing out).
Set to 1 to enable support for rotated drives.

ForceDeleteBackupFiles (DWORD)   NEW!!!  <– This removes the need for scripting to clean up!
Enables automatic cleanup of the backup repository from ALL existing files if any backup file from the latest full backup chain is missing (such as when the existing hard drive is replaced by the hard drive brought back from offsite location, and containing some older backup files).
Set to 3 to make the job delete the entire contents of the backup job’s folder only.
Set to 5 to make the job delete the entire contents of the root backup repository folder, thus potentially deleting any files belonging to other jobs along. Note that if backup repository points at the volume’s root folder, the entire volume’s contents is erased.


After configuring those registry values, support for rotated hard drives will be enabled.

There isn’t any special process that you need to follow for creating either backup or backup copy jobs in conjunction with this feature. Simply add the rotating media as a repository within Veeam and have your backup or backup copy job write to this device and voila! Remove and replace for the next round. Upon the next interval of the job, the files will not be found and then a new full backup (VBK) will be created. -AB



Veeam & CentOS Linux NFS Repository

The other day I had a project come up where I was helping a customer deploy a Linux virtual machine as a front-end for their EMC Isilon. We decided to use CentOS as the Linux front-end but after that decision we were left with putting together a plan to create this machine and then what would the steps be to complete the Linux NFS front-end. Detailed below are the steps that we took in order to create this Linux Repository.

First, we started with creating a virtual machine for CentOS to be installed on. As a general rule Veeam recommends  1 vCPU & 2 GB RAM per concurrent task. We decided to build this machine with 4 vCPU & 8 GB RAM which will yield the ability to do 4 tasks. We chose to leverage the VMXNET3 NIC as the preferred NIC due to the customer having 10GbE within their environment. We also installed the VMware Tools within the guest which I will not be covering on this blog post. The hard drive for the CentOS operating system is not needed to be more than 10 GB unless you have other plans for it. The system is merely being leveraged as a mounting point for the back-end NFS storage.

After the installation of CentOS, there was a minimal amount of configuration left to be done.

1. Configure STATIC host IP address
2. Install NFS requirements
2a.  yum install nfs-utils nfs-utils-libs
3. Upon completion we also ran some startup scripts to ensure everything was working properly.
3a.  chkconfig nfs on
3b.  service rpcbind start
3c.  service nfs start
4.  Next, we created the directory for our mount point
4a.  mkdir /Veeam

After we finished the pre-requisites then we needed to move onto creating the mount within the operating system. The location within CentOS to create this mount is “/etc/fstab”. I leveraged VI in order to make the configuration changes to the configuration file.

5.  vi /etc/fstab
6.  At the end of the file add this line (modify according to your properties)
6a.   IPADDRESS:/MOUNT_POINT /Veeam nfs hard,intr,nfsvers=3,tcp,bg,_netdev,auto,nolock 0 0
6b.   Hit ESC and then enter :wq! to save the configuration file.
7.  Run the command “mount -a” to mount the volume

After completing the mounted NFS volume within CentOS there was one more configuration change that needed to be finalized. The last step was to add a few openings into the firewall of the machine. In order for Veeam’s repository to work properly we need port 22 tcp (SSH) and ports 2500-5000 tcp allowed so that Veeam can communicate with the server.

8.  We need to add entries to the IPTABLES configuration file
8a.  vi /etc/sysconfig/iptables
8b.  -A INPUT -m state –state NEW -m tcp -p tcp –dport 2500:5000 -j ACCEPT

After saving the iptables. We should restart the services to make sure the firewall accepted the new rules.

service iptables restart

Upon no errors, I typically reboot the system just to make sure the mount persists upon the reboot.


After the machine comes back up, it is time to check connectivity with Veeam. Here is where we can pull the CentOS into Veeam as a Linux Repository.

Choose “Linux server” as the type.


Click “Add New” for the server to enter in the information about your Linux VM. After entering in the information for the DNS/IP Address you will need to enter in information for the SSH Connection. I chose to do the addition as root. This was easiest for us. You can chose to restrict the user’s abilities as well as add that user to the sudoers list so that they can elevate to root when necessary.


Repository is the location for you to define the path to the folder you will be storing your data on. In my example, I used “/Veeam” as my mount point and will leverage that here in this window.


Last, I chose the vPower NFS server. My choice was to leverage the Veeam Management Server as my vPower NFS server but you could name any proxy within your environment as well.



After completing this portion, I moved onto configuring my Veeam Backup job to leverage the newly created Linux NFS repository. Thank you for checking out this post and if you have any questions or corrections please feel free to let me know. -AB



Veeam v7 support for VMware vSphere 5.5

Veeam Backup & Replication v7 was released August 15, 2013. This release introduced some new powerful features to the market namely Backup from SAN Snapshots, WAN Accelerator, Backup Copy Job and many other minor enhancements that make the product very attractive. The release schedule for Veeam is always slated to be right before VMware’s VMworld San Francisco 2013 which helps to hype the product and deliver the new information to the user’s in the industry. Another reason for the launch prior to VMworld is to get recognized by VMware for the innovations that Veeam has become well known for delivering to the market.

One thing that VMware uses VMworld for is to promote their own products that will be launching into the market upon the upcoming months. VMware began building buzz around their upcoming release of vSphere 5.5 which would end up being released September 22, 2013. Veeam has always had a tight partnership with VMware and with that partnership has access to the code prior to the release of the product.

VMware introduced a change to 64-bit modules in their vSphere API for Data Protection (VADP). Veeam and other data protection vendors have had to re-write their code to accommodate this change. This prompts for more development and testing hold-ups.

Veeam has released a document on their website stating the progression plans for the patch releases that will incorporate support for vSphere 5.5 within Veeam v7.


Link to the full article: here

*UPDATE* : The “patch #2” that will include support for VMWare vSphere 5.5 will now be known as Veeam Backup & Replication R2.

One note worth mentioning, Veeam has suggested that in preparations for upgrading to VMware vSphere 5.5 and the change with the 64-bit API, you can begin upgrading your Veeam proxy servers to a 64-bit Windows version. This will make you compatible with Veeam v7 and you’ll be ready to backup through the 64-bit API after upgrading.

Veeam Parallel Processing

Q: What are some of the benefits of parallel processing being enabled in Veeam v7?

Prior to version 7, Veeam would backup in a serial manner. This means, in order to process VMDK 2 you need to finish processing VMDK 1 also in order to process VM 2 you had to finish VM 1. Waiting for VMDK 1 or VM 1 to complete the backup process can delay the ability to finish the job quickly. So Veeam introduced parallel processing in version 7 which allows for multiple VMDK’s and VM’s to be processed and backed up at the same time (resources willing). No longer will Veeam have to wait for a task to finish on one VMDK\VM in order to begin processing the next. So, by now, I can only assume that you see where this can help Veeam’s backup process become more efficient!

Q: How do I enable parallel processing?

The answer to enabling parallel processing is quite simple. One thing to keep in mind is that this change is a global setting. Parallel processing will be used across the board and on every job which isn’t necessarily a bad thing but you will want to keep this in mind. If you happen to be a new Veeam v7 customer, then this feature is enabled by default. The need to enable this capability is strictly limited to users who has upgraded from previous versions.

To use this capability, on the Advanced tab of Veeam Backup & Replication Options, select the Enable parallel VM and virtual disk processing check box:

Options       options_parallel_processing