VMware Cloud Community
RanjnaAggarwal
VMware Employee
VMware Employee

FTT=2, Disk Stripes Per Object = 3

if this is the policy as mentioned in the question then How many witnesses will be created in this for a VM?

Regards, Ranjna Aggarwal
0 Kudos
9 Replies
ramakrishnak
VMware Employee
VMware Employee

For VMs there are two sections you need to look for

a. VM Namespace object

b. VMDK object

In your case:

for (a), it would be 2 (since stripe-width is fixed=1 for VM namespace objects

for (b), it would be 0. (for Stripe-width > 1 )

In summary it all depends on components creation and placements. 

for FTT=2 and SW=1 we create RAID1 group

for FTT=2 and SW>1 we create RAID1+0 ( RAID1{RAID0 comps, RAID0 comps, RAID0 comps) 

       ie FTT2=2 and SW=2   (RAID1 {RAID0 {2 component}, RAID0 {2 component}, RAID0 {2 component}

           FTT2=2 and SW=3   (RAID1 {RAID0 {3 component}, RAID0 {3 component}, RAID0 {3 component}

           FTT2=2 and SW=4   (RAID1 {RAID0 {4 component}, RAID0 {4 component}, RAID0 {4 component}

           FTT2=2 and SW=5   (RAID1 {RAID0 {5 component}, RAID0 {5 component}, RAID0 {5 component}

           ...

you can check the placements via

RVC cmd:  vsan.vm_object_info  or from vsphere UI

0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

can you tell me the answer of my question in number?

Regards, Ranjna Aggarwal
0 Kudos
ramakrishnak
VMware Employee
VMware Employee

2 nos for VM

0 for virtual disk

0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

i am asking about for single virtual disk vm how many witnesses it will create?

Regards, Ranjna Aggarwal
0 Kudos
ramakrishnak
VMware Employee
VMware Employee

2

0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

Actually in One policy if i will select these two capabilities then how many witness it will create that's my question?

Regards, Ranjna Aggarwal
0 Kudos
ramakrishnak
VMware Employee
VMware Employee

Concept:

VSAN is distributed system, we use Quorum to enforce consistency in cases of object failures/availability

For object availability, the Quorum requires presence of more than half the total no. of components to be available at any time.

Fault domain is defined set with same failure semantics and FD includes one or more nodes in the cluster. if its not set then each node is its own fault domain

VM Dir namespace which hold config files/swap files etc are composite object

VM Disk is data object

StripeWidth VM policy:  Individual stripes (components) placed on separate disks based on the stripewidth setting

Calculation:

An object expected to tolerate (N) Failures Requires (N+1) replicas distributed in (2N+1) fault domains, will have total of (2N+1) components each placed in a separate fault-domain

In your example:

VM with 1 virtualdisk - Policy : FTT=2 and SW=3

a.

Composite object (VM Namespace) will always have SW=1 (internal implementation user cannot change), FTT=2

So 2 failures to tolerate requires 3 replicas(data components) to be distributed in 5 fault domains(hosts), and no. of  components  required is 5 as per our Quorum mandates but we have only 3.

so we add (5-3) = 2 Witness components for VM composite object

b.

virtual disk object(VMDK) SW=3, FTT=2

same calculation as above. In addition here you see StripeWidth=3, meaning we have 3 stripes(components) per replica. so the available data components is more than quorum mandated 5 components.

**no** witness component required for VMDK object

So for your VM you would typically have 2 witness components, which are for VM namespace object and not for vmdk object

PS: This is based on  how object configuration RAID tree is constructed and object placements in VSAN cluster. These things can change in future.

you can use RVC vsan.vm_object_info / vsphere webclient to know in details on how your VM objects/components are placed in the  vsancluster.

hope this clarifies your question

Thanks,

0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

i am getting 6 witness for this VM. Not able to understand how 6 witnesses are selected?

Regards, Ranjna Aggarwal
0 Kudos
ramakrishnak
VMware Employee
VMware Employee

can you upload the RVC object info, we can check if its expected or not

# vsan.object_info ~cluster~ ~obj_uuid~


this can differ with various other factors like object size requested, cluster state, placement algo.


Thanks,

0 Kudos