vmsnap (& ~vmbk) pseudocode
for each $disk
{
vm->add_redo($disk) # add .REDO
vmkfstools -e
vm->add_redo($disk) # add .REDO.REDO
vm->commit($disk,level=1,freeze=0,wait=1) # commit 1st .REDO
vm->commit($disk,level=0,freeze=1,wait=1) # commit 2nd .REDO.REDO
}
I think I see a problem if a database/file/other app is split across multiple disks sda, sdb, sdc etc and if each disk takes an hour or two to back up then your sda, sdb, sdc backups will each be out of sync by an hour or two (and therefore not very useful)
Would it make more sense to change the logic to
for each $disk
{
vm->add_redo($disk) # add .REDO
}
for each $disk
{
vmkfstools -e
vm->add_redo($disk) # add .REDO.REDO
vm->commit($disk,level=1,freeze=0,wait=1) # commit 1st .REDO
vm->commit($disk,level=0,freeze=1,wait=1) # commit 2nd .REDO.REDO
}
Apart from more disk space required for sda.REDO, sdb.REDO and sdc.REDO what other implications would there be for this technique ?
See also http://www.vmware.com/community/thread.jspa?messageID=292467
for each $disk
{
vm->add_redo($disk) # add .REDO
vmkfstools -e
vm->add_redo($disk) # add .REDO.REDO
vm->commit($disk,level=1,freeze=0,wait=1) # commit 1st .REDO
vm->commit($disk,level=0,freeze=1,wait=1) # commit 2nd .REDO.REDO
}
I think I see a problem if a database/file/other app is split across multiple disks sda, sdb, sdc etc and if each disk takes an hour or two to back up then your sda, sdb, sdc backups will each be out of sync by an hour or two (and therefore not very useful)
Would it make more sense to change the logic to
for each $disk
{
vm->add_redo($disk) # add .REDO
}
for each $disk
{
vmkfstools -e
vm->add_redo($disk) # add .REDO.REDO
vm->commit($disk,level=1,freeze=0,wait=1) # commit 1st .REDO
vm->commit($disk,level=0,freeze=1,wait=1) # commit 2nd .REDO.REDO
}
Apart from more disk space required for sda.REDO, sdb.REDO and sdc.REDO what other implications would there be for this technique ?
See also http://www.vmware.com/community/thread.jspa?messageID=292467