A file with extension CTK can be found by using the VMware datastore browser, in the same folder as other VMDK file, where the VM stores all its files (VMDK, VMX, VMSD, NVRAM….). What is VMware CTK file for? The CTK file is used by Changed Block Tracking (CBT). It lists the block changes made since last backup. The first backup of a VM has to be a full backup, only then onwards the CBT reads the content of the CTK file, and back up changed blocks only instead of full VM backup. Every block has got a time stamp which says where the location of modified block is.
If you don't see the CTK file, then certainly the CBT just isn't activated. The CBT functionality is available for VMs with the virtual hardware version isn't 7 and higher. The CBT in fact appeared first in vSphere 4. The CBT is usually activated by backup products, like Veeam or VDP automatically during the first backup. The CBT can also be activated manually, through the vSphere web client OR editing directly the configuration file of a particular VM (VMX file).
The CBT enabled allows up to 10 times faster backups.
What is VMware CTK, and what's inside the file?
The file can be several Mb in size in total. The size of this file is fixed and does not grow over its initial size. Only if you grow the size of a virtual disk, than the size of CTK file changes. The real size of this CTK file depends on the size of a virtual disk, but it's about .5MB for every 10 GB of virtual disk size. The CTK's file content stores the state of each block, for tracking purposes, and is using sequence numbers. Those sequence numbers are used by backup application, to see if a block has changed its state or not.
The CTK file can grow quite a bit, but if CBT enabled, there should be only one CTK file per Virtual Disk (VMDK). So if you have VM with one single VMDK disk, you should see only one single CTK file. If there is more than one CTK file, than probably your backup software has left some behind while not cleaning properly the temporary snapshots taken during the backup.
To disable Changed Block Tracking (CBT), make sure to delete all snapshots before.
Which kind of disk formats works in CBT?
- Thin and Thick virtual disks
- VMDK and RDM (virtual only)
Usual advantages of CBT are the obvious gain of speed of backups and lower CPU utilization on the host.
Sources:
- IBM Support
- Veeam KB1113
- VMware vSphere 5 – Building Virtual Datacenter (VMware Press)
- VMware's KB1031873 which describes how to activate CBT in VMs (if seeing error “Incorrect CBT configuration”).
- Changed Block Tracking (CBT) on virtual machines KB: 1020128 – General info about CBT
- Consolidating snapshots (1007849)
- Consolidating snapshots in vSphere 5 (2003638).
Mike @vmmikec says
Great article. I once had some issues during a VMware View recompose and support said my issue was caused by ctkenabled being set to true. Have you ever come across this?
Edward says
Hi this not a comment but need assistance. I cant manually vmotion a vm i get an error – unable to generate userworld swap file in direrctory /vmfs/volumes/ xxxxxx/vmname. please can you advise.