For vSAN stretched clusters don't use a storage policy with locality=none
search cancel

For vSAN stretched clusters don't use a storage policy with locality=none

book

Article ID: 326641

calendar_today

Updated On:

Products

VMware vSAN

Issue/Introduction

Symptoms:
Storage policy with Site Disaster Tolerance set to either of the below with Failures to tolerate as RAID1/5/6
None - standard cluster
None - stretch cluster

Environment

VMware vSAN 7.0.x

Cause

When using a storage policy with locality=none, the components of the same replica can be spread across both the data sites in the cluster. This can result in underline storage layer issues during reconfiguring tasks of an object such as storage policy changes, placing a host into maintenance mode with ensure accessibility, and even the possibility of objects going inaccessible during planned maintenance.

This can also result in read locality not being guaranteed as reads may go across data sites via the Inter-Site Link (ISL) which can result in latency. Writes also go across sites through the ISL.

While in the case of a storage policy with Site disaster tolerance set to one of the below options with  Failures to tolerate set to RAID1/5/6, the writes would be limited to the site to which the locality is set.
  • Dual site mirroring (stretch cluster)
  • None - keep data on Preferred (stretch cluster)
  • None - keep data on Secondary (stretch cluster)

The issue is specific to stretch cluster storage policies set as Site disaster tolerance with either "None - standard cluster" or "None - stretched cluster" with a Failures to tolerate set to RAID1/5/6.

For more details see the below KBs:
Behavior of forceProvisioning of objects in stretch clusters (88704)
Objects show as "Non-Compliant" in a stretch cluster when changing the storage policy (88705)
vSAN Host fails to enter maintenance mode with ensure accessibility mode in a Stretched Cluster setup (88611)

Resolution

When creating a storage policy for a stretch cluster do not use the below options for Site Disaster Tolerance when using Failures to tolerate with RAID1/5/6
  • None - standard cluster
  • None - stretch cluster

Doing so results in the locality being set to none and results in the issue as outlined in this KB

For stretch clusters, the Site Disaster Tolerance should be set to one of the following when using RAID1/5/6 for Failures to tolerate
  • Dual site mirroring (stretch cluster)
  • None - keep data on Preferred (stretch cluster)
  • None - keep data on Secondary (stretch cluster)

When using these policies keep in mind you need a minimum of 3 hosts on either side of the cluster for RAID1, 4 hosts for RAID5, and 6 hosts for RAID6