Unable to power on the virtual machine.
Snapshot consolidation fails with the following error:
Error Message:
Generic error: Cannot open the disk '/vmfs/volumes/XXXXXXXX-XXXX-XXXX-XXXXXXXXXXXX/VMNAME-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/VMNAME-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX-000001.vmdk' or one of the snapshot disks it depends on.
VMware vSphere ESXi 6.x
VMware vSphere ESXi 7.x
VMware vSphere ESXi 8.x
This issue is due to a third-party I/O filter enabled on the virtual machine—which functions like a flash driver—issues may occur when customers attempt to migrate their VM to the cloud or to another data center.
An example of such an I/O filter is JetStream/IBM
- Hash out the following parameters: ddb.sidecars and ddb.iofilter from the descriptor and the snapshot descriptor files for the affected vmdk.Sample VMDK:
# Disk DescriptorFile
version=5
encoding="UTF-8"
CID=3018dd88
parentCID=ffffffff
isNativeSnapshot="no"
createType="vmfs"
# Extent description
RW 209715200 VMFS "VMNAME-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX-flat.vmdk"
# Change Tracking File
changeTrackPath="VMNAME-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX-ctk.vmdk"
# The Disk Data Base
#DDB
ddb.adapterType = "lsilogic"
ddb.deletable = "true"
ddb.encoding = "UTF-8"
ddb.geometry.biosCylinders = "13054"
ddb.geometry.biosHeads = "255"
ddb.geometry.biosSectors = "63"
ddb.geometry.cylinders = "13054"
ddb.geometry.heads = "255"
ddb.geometry.sectors = "63"
#ddb.iofilters = "jetaccel"
ddb.longContentID = "96799446337cbb3c59a5c7ab3018dd88"
#ddb.sidecars = "jetaccel_1,VMNAME-########-####-####-####-############-################.vmfd"
ddb.toolsInstallType = "2"
ddb.toolsVersion = "10282"
ddb.uuid = "## ## ## ##"
ddb.virtualHWVersion = "11"
Created a temporary folder and moved all the .vmfd
files to it.
Reloaded the .vmx
file, successfully powered on the virtual machine, and performed snapshot consolidation.
Workaround:
The workaround involves manually editing the storage policy of the virtual machine at the ESXi host level.
As recommended by JetStream, unregister and then re-register the VM in vCenter.
This action allows vCenter to properly recognize and update the storage policy associated with the VM.