Inaccessible objects occur after placing vSAN host into maintenance Mode.
search cancel

Inaccessible objects occur after placing vSAN host into maintenance Mode.

book

Article ID: 413535

calendar_today

Updated On:

Products

VMware vSAN

Issue/Introduction

When placing hosts into maintenance mode on a vSAN cluster, certain VMs might become inaccessible due to mismatch of the setting /VSAN/DeltaComponent on ESX hosts.

Environment

vSAN 9.x

vSAN 8.X

Cause

A delta component is temporary component created during a host failure or maintenance to capture new writes while the original data are components are being repaired or rebuilt. These essentially are used to log changes, allowed for resync to be quicker when the original host is recovered, merging the durability component's changes with the old component to restore the complete object

This feature was introduced in vSAN 7.0, and the /VSAN/DeltaComponent advanced feature is usually enabled by default, where the parameter is set to 1.  

If the hosts on a vSAN cluster is running between a value of 1 (enabled) or 0 (disabled) on /VSAN/DeltaComponent on a vSAN cluster, this potentially can lead to VMs becoming inaccessible.

This is caused due to some vSAN hosts running on delta components and other hosts being unaware of delta (legacy) components, leading to inconsistent data integrity. 

Resolution

Make sure every host on the vSAN cluster parameter /VSAN/DeltaComponent is set to either 1 or 0. If the vSAN cluster is running on a later version than 7.0 U1 P02, it's recommended to set the value to 1 (enabled) across all nodes.

To check the value on /VSAN/DeltaComponent, run the command below. 

esxcfg-advcfg -g /VSAN/DeltaComponent

To set the parameter to 1, run this.

esxcfg-advcfg -s 1 /VSAN/DeltaComponent

After this is achieved, run abdicateall command on each host (Not the witness appliance) to refresh ownership of all the objects.

vsish -e set /vmkModules/vsan/dom/ownerAbdicateAll

Make sure to give it 30 seconds between nodes, when running this command. 

This will make all hosts aware of the delta components across the cluster.