Under Monitor > vSAN > Virtual Objects, one or more objects are reported as Inaccessible.
The Object Type is identified as a VM Hard Disk belonging to a VM Template.
Despite this report, Skyline Health for the cluster and vSAN Object Health are both Healthy.
All other components in the vSAN cluster are functioning as expected.
VMware VSAN 8.x
The inaccessible object status is a false positive caused by stale metadata in the vCenter Server inventory. This occurs when a VM Template remains registered in vCenter, but its underlying .vmdk backing file has already been deleted from the vSAN datastore. Because the .vmtx file still references the missing disk, vCenter flags the object as inaccessible even though the physical data is intentionally absent.
Browse the datastore folder containing the template. Confirm that the .vmdk file referenced by the template is missing from the file system.
Log in to the ESXi host via SSH and run the following commands. If the object does not exist on the physical storage layer, the below commands will return no output:
esxcli vsan debug object list --all --health=inaccessible esxcli vsan debug object list -u <Object UUID> /usr/lib/vmware/osfs/bin/objtool getAttr -u <Object UUID>Log in to the vCenter server RVC and run the check state command to see if the management plane can locate the object. If the output shows no inaccessible or out of sync objects, the issue is isolated to the vCenter inventory.
Log into RVC with rvc localhost"if still using [email protected], otherwise log in as rvc administrator@<domain>.local@localhost
"Welcome to RVC. Try the 'help' command.0 /1 localhost/"
Change directory to localhost using command cd 1 and list the folder using ls command
/localhost> 1s0 Test Datacenter (datacenter)Change directory to Datacenter using command cd 0 and List the folders using ls command
/localhost> cd 0
/localhost/Test Datacenter> 1s
0 storage/
1 computers [host]/
2 networks [network]/
3 datastores [datastore]/
4 vms [vm] /Change directory to computers [host] using command cd 1 and list the folders using ls command
/localhost/Test Datacenter> cd 1/localhost/Test Datacenter/computers> 1s0 Test Cluster (cluster) : cpu 19 GHz, memory 1 GB
Change directory to vsan cluster using command cd 0
/localhost/Test Datacenter/computers> cd 0/localhost/Test Datacenter/computers/Test Cluster>Run the command "vsan.check_state ." to refresh the state of the inaccessible vSAN objects.
/localhost/Test Datacenter/computers/Test Cluster> vsan. check_state . -r
2025-12-18 03:34:56 +0000: Step 1: Check for inaccessible vSAN objects2025-12-18 03:35:01 +0000: Step 1b: Check for inaccessible vSAN objects, again2025-12-18 03:35:01 +0000: Step 2: Check for invalid/inaccessible VMs2025-12-18 03:35:01 +0000: Step 2b: Check for invalid/inaccessible VMs again2025-12-18 03:35:01 +0000: Step 3: Check for VMs for which VC/hostd/vmx are out of syncDid not find VMs for which VC/hostd/vmx are out of sync
To clear the stale entry and synchronize the vCenter Server Virtual Objects list with the actual physical state of the datastore, follow these steps:
Locate the affected VM Template in the vCenter Server inventory.
Right-click the template and select Remove from Inventory.
(Optional) If the template is still required, re-register the template using the valid files on the datastore.
Navigate back to Monitor > vSAN > Virtual Objects. The inaccessible object entry will be removed.