Enable Change Block Tracking (CBT) for VMware Virtual Machine

Change Block Tracking (CBT) is a feature of VMware that helps to perform incremental backups for the virtual machines. There are many backup software’s including VMware Data Recovery and HP data protector etc uses this technology to take incremental backups of the virtual machine.Change Block Tracking helps the virtual machines can track disk sectors that have changed.

Virtual disk blocks are tracked in the virtualization layer and virtual machines are not aware about this disk block tracking. When backup software perform the backup of the virtual machine, it will request the transfer of only the blocks that changed since the last incremental backup.
The CBT feature can be accessed by third-party backup applications as part of vStorage APIs. Backup applications can use the API to query the VMkernel to return the data block information that have changed since the last backup. Virtual Machine disk can be of any type thick or thin provisioned disk.

Prerequisites to Enable CBT on the virtual Machine

1. ESX/ESX host must be version 4.0 or later
2. VM hardware version should be 7 or later
3. All type of Virtual disk(Thick,thin and RDM virtual compatibility Mode) but RDM in Physical Compatibility mode is not supported.
4.No existing snapshot available for the virtual Machine
5.Virtual Machine should be in Power off state.

How to Enable Change Block Tracking for Virtual Machine

1. Connect to your ESX/ESXi host or vCenter server using vSphere Client
2.Select a virtual Machine which is in powered off state to enable CBT
3. Right-Click the virtual Machine and select Edit Settings
4. Click on Options  tab and Select General
5. Click on Configuration Parameters

6.Click Add row and Enter the Below value
      ctkEnabled = “TRUE” 

7. For each virtual disk in your virtual Machine, add the below entry

     scsix:x.ctkEnabled = “TRUE”

 SCSi#:#.ctkEnabled where # signs should be replaced with the controller and disk number of the disk. For example My Virtual Machine “win2k3-prod” has 2 virtual disk (VMDK) in the same controller. So i have to add the 2 entries which is matching to my controller number and disk number

scsi0:0.ctkEnabled = “TRUE”
scsi0:1.ctkEnabled = “TRUE”


8. Click Ok to enable the CBT for the virtual Machine.