Quorum is achieved by the addition of one or more zero-length witness components for each object. As quorum is defined as >50 percent availability, there must be greater availability than the components strictly required to provision each mirror (for example, a simple mirror with no striping will result in two data components; as ½ is exactly 50 percent, the >50 percent quorum rule cannot be maintained with data components alone). The voting difference in a per-object quorum is made up by witness components. Witnesses are pure metadata, with no production IO being serviced. As such, they consume no space on-disk and are comparatively cheap in terms of overhead. VSAN will create as many witnesses as necessary to ensure the availability per policy in the event of a network partition or host failure affecting less than or exactly the number of nodes defined in the storage policy for the object(s).
In VSAN 6.0, witness behavior can be slightly different from the behavior in VSAN 5.5. In 6.0, each component, including witnesses, may be allocated >1 vote in the quorum. In this way, VSAN 6.0 objects may have a smaller number of witnesses than equivalent VSAN 5.5 objects. In some rare circumstances, typically associated with numerous stripes and a large number of nodes, VSAN 6.0 may not require that any witnesses be allocated.
VSAN object availability to the end consumer of storage resources (the VM) is dictated by quorum management on a per-object level. The logic is superficially simple: if >50 percent of components (data components and witnesses) and at least one complete mirror are available within the network partition, the object is available in that partition. If those constraints cannot be met, then the object will be held offline to prevent possible data corruption.