CBT in a VMware and Veeam Environment

If a situation occurs such as where you have to delete the CBT (ctk-vmdk) files from a VM and you get the following warning from Veeam on the next backup run:



CBT data is invalid, failing over to legacy incremental backup. No action is required, next job run should start using CBT again. If CBT data remains invalid, follow KB1113 to perform CBT reset. Usual cause is power loss. 


This might occur due to an issue like this.


How does CBT (Change Block Tracking) work in a Veeam environment ?

Veeam uses a VMware feature called CBT (Change Block Tracking) which  lists  changed blocks since the last job. This is an efficient way of transferring the data in an incremental backup job. If CBT is disabled/not supported then Veeam will utilise its own method of filtering out unchanged data blocks. The latter method takes a lot longer due to reading the entire VMDK and calculates a checksum for each block. This is then cross-referenced with the source. If the block already exists the data is not transferred. CBT is the recommended option.

For CBT to work the following needs to be adhered:

- Virtual Machine version 7+
- VM must have no existing snapshots
- CBT enabled at host level