When VMware first introduced VCB as part of the ESX package, it never did seem more than a temporary / complimentary solution for customers who had a small environment of 100 VMs or less. With the launch of VSphere4 and the subsequent introduction of APIs which allowed external applications and scripts to communicate directly to the ESX, it was apparent that VMware was beginning the gradual move to offload the backup solution to the Backup experts. Now having run with VSphere4 for more than six months, it seems a good time to assess and evaluate who has taken advantage and the lead with incorporating all the latest features of ESX4.
To recap; with VMs being encapsulated in a single disk file the principal was that image-level backups instead of traditional file-level allowed backups to be much faster. With VSphere4, VMware introduced improved support for thin provisioning which not only had the potential to reduce the amount of actual storage allocated but also shorten backup windows. The idea was straightforward; by using thin provisioning the system admin is given the ability to over-commit disk space, especially handy as the majority of VMs don’t use all of their allocated disk space. Thus this eradicates the problem with the majority of disk-to-disk backup applications using image-level backups i.e. no more backing up of a complete virtual disk file of a VM when most of it wasn’t actually used.
Another new addition to VSphere4 and it’s vStorage APIs was the feature of CBT (Changed Block Tracking). With CBT the VMkernel could now track the changed blocks of a VM’s virtual disk. Just by querying the information using an API call to the VMkernel, CBT alleviates the burden from the backup applications having to scan or keep track of changed blocks. This results in much quicker incremental backups as the overhead of scanning the whole VM image for changes since the last backup could now be eradicated.
So in looking around for solutions which best incorporated these new features I eventually came across Veeam. Utilising the thin provisioning feature to remove the overhead of no longer seeking out empty disk blocks and the unnecessary backing up of those empty blocks, Veeam also incorporates compression algorithms on the target backup device. Hence Veeam have a solution that not only reduces the amount of space used on the source host datastores but also the target backup storage device.
Furthermore Veeam are currently the only third party API that offer support for CBT, although ESXpress are promising something similar with their upcoming version 4. Veeam have come up with several different modes to utilise the CBT feature namely, SAN mode, Virtual Appliance mode and Network mode. Each mode brings less I/O to each device depending on your setup and thus less resource consumption when performing backups consequently leading to reduced backup windows.
So while Veeam are currently leading the way, the time is certainly ripe for more third party APIs to be developed and incorporated making VM backup nightmares a thing of the past.