Last week and this week I received a question and as it was the second time in a short time I figured I would share it. The question was around how VSAN places a VMDK which is larger than the disks. Lets look at a diagram first as that will make it obvious instantly.
If you look at the diagram you see these stripes. You can define the number of stripes in a policy if you want. In the example above, the stripe width is 2. This is not the only time when you can see objects being striped though. If an object (VMDK for instance) is larger than 256GB it will create multiple stripes for this object. Also, if a physical disk is smaller than the size of the VMDK it will create multiple stripes for that VMDK. These stripes can be located on the same host as you can see in the diagram but also can be across hosts. Pretty cool right.
Thanks for the answer Duncan, this clears up a debate we had in our office this week!
Johnny Cortez says
1) When scaling up your disk groups within a host, do you simply plug a new drive into the host while it is running and the additional capacity is added to the VSAN pool? Is this true for entire disk groups as well? And more specifically, does this only work with an IO Controller that supports RAID Passthrough? (the controller my client is using now only supports RAID 0)
2) Do you know what the logic is that is being used for placement of data stripes across disk groups? My client noticed during his testing that the data was not always placed logically across all nodes in the cluster. Do we have any documentation or understanding of how this is handled or what the decision making process is for data placement?