ghettoVCBg2 does not run on ESX(i), I believe you're referring to ghettoVCB. ghettoVCBg2 runs on vMA and leverages the vSphere API versus running directly on the Service Console for classic ESX or Busybox Console for ESXi. The actual transfer is still happening within the VMkernel on the host but operations are requested within vMA.
To answer your other question about mounting a VMDK on vMA, it's possible and you should be able to use the VDDK (http://www.vmware.com/support/developer/vddk/) and a licensed version of ESX(i) to remotely mount. You may or may not get better speeds, it's use fuse to mount the remote VMDK. I've not really looked into this but it's possible.
Yep, I'm aware that it runs inside the vMA, and it's quite handy not having to setup scripts inside each host(We're using ESX 4.0 on the hosts) I'm liking it so far!
I'll go and have a look at VDDK, and see if it'll even work. The code I have starts at byte 0 of the snapshotted file, and breaking it into N byte pieces, compares the SHA1's against the last known block in the backup location(querying the database at that end).
There's plenty of other operations it does as well, but that's not really in the scope of this discussion.
Anything to save copying the whole snapshot file off the SAN before I start comparing blocks will be a great benefit.
Thanks for your input!
What you're discussing here is exactly what the vStorage API (vSphere API + VDDK) which uses a new feature called Change Block Tracking, it allows you track the blocks that since changed from the last backup and allows you to only backup the deltas. VDDK is definitely what you'll want and there's also a document on creating your own backup solution leveraging this technology - http://www.vmware.com/support/developer/vddk/vadp_vsphere_backup12.pdf
Imagine...GhettoVCBg3 utilizing CBT. YES! . One can hope.
As an interim step it looks like I can leverage the vmware-cmd's setconfig and connectdevice features to add the VMDK from the VM I wish to backup, and connect it to the vMA as a non-persistent disk, so that the vMA can have block-level access to it.
This is a start, until I re-learn enough PERL to look at the VDDK SDK - it's been 12 years since I last wrote any PERL.
But yes, CBT might be handy. Have to wait for a rainy day.
Well if you're looking to remotely mount VMDKs to vMA, VMware already built a suite of tools called VDDK (VMware Disk Development Kit) which in-conjunction with vSphere API = vStorage API for Data Protection which is how they're leveraging CBT functionality. The issue is how do you guarantee that your block level copy is in fact consistent/etc. there's quite a bit if you're going to re-implement what VMware already provides in their native API. It's not an easy scripting task and it's more of a programmatic approach that you'll have to take with implementing something complex such as this.