VMware {code} Community
dbackup
Contributor
Contributor

How to backup VM with two delta file through VDDK

Hello, I have a Virtual Machine on ESXi 7.0:

Guest OS: Microsoft Windows Server 2016 (64-bit)
Compatibility: VmHardware.HWVersion.long.vmx-19
VMware Tools: Running, version:11333 (Current)

 

 

It has only one disk on SCSI controller 0:

Type: Thick Provision Lazy Zeroed
Disk File: [d2] 2016/2016.vmdk
Disk Mode: Dependent

 

 

 

quiesced snapshot part

After creating a quiesced snapshot, I found that it had two delta files(aka child disks) which is strange because only one delta file should be generated:pic1.png

 

vCenter shows that the virtual machine is now using [d2] 2016/2016-000001.vmdk:

pic2.png

And Managed Object Browser shows that the disk recorded in the snapshot is [d2] 2016/2016-000002.vmdk

pic3.png

Obviously I can't open them READ ONLY through VDDK 7.0.3, NBD transport mode:

KLog: NBD_ClientOpen: attempting to create connection to vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902
KLog: Setting NFC log level to 1
KLog: Setting NFC log level to 1
KLog: NFC Async IO session is established for '[d2] 2016/2016-000001.vmdk' with log level 1.
KLog: Opening file [d2] 2016/2016-000001.vmdk (vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902)
KWarning: [NFC ERROR]NfcAioRcvErrorMsg: Error from server: NfcAioProcessOpenFileMsg: Failed to open '[d2] 2016/2016-000001.vmdk': DiskLib error 49: Thin/TBZ/Sparse disks cannot be opened in multiwriter mode
KLog: Fail to open file [d2] 2016/2016-000001.vmdk
KLog: DISKLIB-DSCPTR: : "vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902" : Failed to open NBD extent.
KLog: DISKLIB-LINK : "vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902" : failed to open (Thin/TBZ/Sparse disks cannot be opened in multiwriter mode).
KLog: DISKLIB-CHAIN : "vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902" : failed to open (Thin/TBZ/Sparse disks cannot be opened in multiwriter mode).
KLog: DISKLIB-LIB : Failed to open 'vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902' with flags 0xe Thin/TBZ/Sparse disks cannot be opened in multiwriter mode (49).
KLog: VixDiskLib: Detected DiskLib error 49 (Thin/TBZ/Sparse disks cannot be opened in multiwriter mode).
KLog: VixDiskLib: Failed to open disk vpxa-nfc://[d2] 2016/2016-000001.vmdk@192.168.88.230:902!52 26 a2 59 d8 1d 32 3e-af 4e c9 d9 18 f1 5e b5. Error 1 (Unknown error) (DiskLib error 49: Thin/TBZ/Sparse disks cannot be opened in multiwriter mode) at 6469.
KLog: VixDiskLib: VixDiskLib_OpenEx: Cannot open disk [d2] 2016/2016-000001.vmdk. Error 1 (Unknown error) (DiskLib error 49: Thin/TBZ/Sparse disks cannot be opened in multiwriter mode) at 7133.
KLog: VixDiskLib: VixDiskLib_Open: Cannot open disk [d2] 2016/2016-000001.vmdk. Error 1 (Unknown error) at 7211.
Failed to open

 

KLog: VixDiskLib: VixDiskLib_OpenEx: Open a disk.
KLog: 2021-11-19T16:19:01.733+08:00 error -[05958] [Originator@6876 sub=vimaccess] GetFileName: Cannot create disk spec for disk [d2] 2016/2016-000002.vmdk.
KLog: -->
KLog: VixDiskLib: Error occurred when obtaining the file name for [d2] 2016/2016-000002.vmdk. Error 1 (Unknown error) (Cannot create disk spec for disk.) at 3344.
KLog: VixDiskLib: VixDiskLib_OpenEx: Cannot open disk [d2] 2016/2016-000002.vmdk. Error 1 (Unknown error) at 7133.
KLog: VixDiskLib: VixDiskLib_Open: Cannot open disk [d2] 2016/2016-000002.vmdk. Error 1 (Unknown error) at 7211.
Failed to open

 

But I CAN open [d2] 2016/2016.vmdk to read, so I backup the whole [d2] 2016/2016.vmdk disk(not just allocated blocks) through VDDK.

Finally, I restored the disk to the virtual machine. And try to use it to start the virtual machine, but the blue screen is directly displayed when starting:

 

pc4.png

 

none quiesced snapshot part

So I created a none quiesced snapshot instead. And it has only ONE delta file as expected.

pc5.png

I backup [d2] 2016/2016.vmdk through VDDK 7.0.3 and restore to the virtual machine again. And the operating system can be turned on normally this time.

 

question

How do I back up this virtual machine with a quiesced snapshot?

0 Kudos
4 Replies
dbackup
Contributor
Contributor

It turns out that i forgot to set up snapshotRef in VixDiskLib_ConnectEx, problem solved.

0 Kudos
ocdata
Contributor
Contributor

Did you just have to pass in the snapshot ref name, like "snapshot-1234" into connectEX? I seem to be getting the same errors trying to open snapshot files from quiesced snapshots even when I supply the snapshot ref.

0 Kudos
dbackup
Contributor
Contributor

Yes, snapshot MoRef is needed to open quiesced snapshot file in some circumstances, like double snapshot files.

0 Kudos
ocdata
Contributor
Contributor

In my case, the issue was resolved by using VDDK 6.7 to backup a quiesced snapshot image on a vSphere server running 6.7. The moref snapshot field passed to *ConnectEx appears to have no effect in either 6.7 or 7.0.

0 Kudos