When working with Horizon 7.x on vSAN, Horizon will automatically create a set of vSAN storage policies and will automatically apply the policy to the relevant objects. You can edit this policies to match your architecture and needs (All Flash, Stretched Cluster, protection level and more).
Few weeks ago I was working on deploying a new Horizon environment on vSAN, when we changed the vSAN storage policies (SPBM) all went fine up to the REPLICA_DISK and the VM_HOME policies. When trying to change this policies we immediately got the following error –
“The “Reapply VM Storage Policy” operation failed for the entity with the following error message. Failed to serialize response”
Attempts to revert to the previous policy also failed. In the “Edit VM Storage Policy” wizard there is a persistent error – “Failed to serialize response”.
Further analysis found that only the Replica VMs vSAN object was affected. Both for REPLICA_DISK and the VM_HOME policies. When checking for SPBM compliance the status of this objects is “Out of Date”.
Unfortunately I didn’t grab a screenshot of the status but this screenshot from somewhere else represent the case.
So what happened? Well this is actually quite expected. A replica VM is a protected vSphere object. An administrator permission doesn’t get you the permission to change anything in this VM. So changing a vSAN storage policy of an exist replica VM is just not possible.
The solution is to delete the replica and create a new one. You can do it easily with recomposing the Horizon pools that use that replica disk or delete the pool.
I wish this will be possible in future release.
The good news – after opening a ticket with VMware GSS they approve this is “by design” and created a KB – “Reapply VM Storage Policy fails on the REPLICA_DISK storage profile. (2077219)“.