I have a virtual machine which has a thin provisioned virtual disk (total allocated size is 8GB and consumed size is 2 GB). When
I browse the virtual disk using the vSphere Client's datastore browser it rightly shows the virtual disk size as 2 GB. But when I am
reading the disk using VDDK its reading the full 8GB, its a VMFS datastore and I am using the nbd transport mode. I am not sure how
can I read only the actual used virtual disk i.e. 2 GB using VDDK . Any ideas in this direction will be highly appreciated. Thanks.
Some what on a related note, would it be possible to backup only allocated portion of the disk even if CBT is not enabled? I am asking this primarily to support VMDKs belonging to pre-vSpehere 4.0 VMs. Even though incrementals are not possible in that case, would it still be possible some how to only back up just allocated data and not entire disk?
CBT is a feature of vSphere, if you're trying to do the same pre-vSphere, you'll basically need to keep a bitmap of the blocks that have changed since some point in time, similar to how CBT does it today. You would need to read in the VMDK and keep your own changelist, that is how some of the backup vendors did it prior to CBT where the change blocks were provided from VMware via the APIs.
VMware vExpert 2009
If you find this information useful, please award points for "correct" or "helpful".