After deploying the vSAN Data Protection appliance, the plugin in the vCenter UI displays a static "502 Bad Gateway (nginx/1.25.2)" error.
The Data Protection management interface is inaccessible.
Snapshot operations cannot be managed or initiated via the UI.
/var/log/vmware/snapservice/snap-service-panic.log show the panic event as below.
goroutine 602 [running]:gitlab.eng.vmware.com/core-build/vsan_snapshot_service/pkg/server/vsphere/vcenter.GovmomiToVmDisk(...) /build/mts/release/bora-24755667/snapservice/pkg/server/vsphere/vcenter/server_vmomi_converter.go:106panic: interface conversion: types.BaseVirtualDeviceBackingInfo is *types.VirtualDiskSparseVer2BackingInfo, not *types.VirtualDiskFlatVer2BackingInfo
Product: VMware vSAN 8.x.
Component: vSAN Data Protection Appliance / Snapshot Service.
The vSAN Snapshot Service (snapservice) container fails to initialize because the one or more VMDK queries by vCenter are in an unsupported disk format (monolithicSparse or 2gbsparse). Specifically, if the VM was deployed or cloned from a source where the disk format became monolithicSparse (a format typically used by VMware Workstation or hosted products), the snapservice cannot mount the volume as a native vSAN object.
Upon running a query to read all the VMDKs in the vCenter server, VMDKs may have createType as non VMFS.
[root@localhost] cat example.vmdk# Disk DescriptorFileversion=4encoding="UTF-8"CID=f8292ff7parentCID=ffffffffcreateType="monolithicSparse" ------------> createType show monolithicSparse.
To resolve this issue, identify the VMDK files in the vCenter inventory with non-vmfs createType and must be converted to a native ESXi format 'vmfs'.
Login to ESXi host SSH session.
Navigate to /vmfs/volumes.
Run command 'cat */*/*.vmdk' | grep createType'
This is expected to read all the VMDKs in that respective ESXi hosts on all the datastores. However, if there are more clusters on vCenter, it has to be verified across the clusters.
Prerequisites:
Step-by-Step Instructions:
grep "createType" <appliance_disk>.vmdkcreateType="monolithicSparse", proceed with conversion.vmkfstools command to clone the disk into a thin-provisioned vmfs format:new-disk.vmdk created in step 3.monolithicSparse file.'createType=vmfs'