Can you mix different capacity drives and / or type on vSAN?
Quick answer : YES!
Should you be mixing it up? That is a little more interesting of a discussion. As all of you guys may be aware, drives are often derived by its class of performance (eg; RPM for HDD and Performance Class for Flash) and Capacity / Density.
Lets look at performance first.
With traditional storage, it is always recommended that similar drive types are provisioned to ensure consistent and predictable performance. This is not any different on vSAN. You can totally mix drive types and it is supported, as long as you are aware of the potential implications from a performance perspective. Best to set expectations to the lowest denominator. Example, don’t be mixing 7.2K RPM drives with 15K RPM drives, expecting it to behave like 10K. Expect the worst case, 7.2K. Understanding the IO Data Flow and workload is extremely critical in deciding if mixing is a good idea.
With capacity, mixing on traditional storage becomes a little trickier. The diagram below shows 2 scenarios, one of similar drive capacity and the other with mix capacity. Traditional RAID requires that all drive types be of similar capacity to ensure the maximum usable capacity. When larger drives are used (perhaps 2TB drives are no longer produced and you only had 4TB drives), you could still create RAID groups but there will be some wastage of capacity. May not be ideal, but it works.
On vSAN, this works a little differently. It is well known that vSAN is an object storage, and we do not stripe data across all drives. Our implementation of “RAID” is done via intelligent placement of data on specific nodes to simulate a RAID setup. For those who are familiar with VMFS, we store everything in a file on a filesystem (VMFS). Given that vSAN, similarly is also a file system, every single drive capacity, regardless of its size is presented completed as usable capacity on a filesystem. There is no wastage!
Having said that, this is also dependent on the Storage Policy that is used by the VM’s. If there are a mix of Storage Policies, the likelihood of consuming all the capacity is higher. This may not be possible if the cluster only runs off a single policy like FTT=1, RAID 1, when everything is mirrored. There will come a point where the policy doesn’t comply because there may not be sufficient capacity to create a copy on the cluster on other nodes.
There are limited use cases and scenarios where you will ever want or need to mix drive types, but be rest assured, that if you ever require it, it is supported.
Another interesting feature (I’m not too sure if this is a feature specifically, because I haven’t yet found a good usecase as to why anyone would be doing it) on vSAN is the ability to pull any drive out of a slot and plug it onto another slot in the same chassis. A little like a drive musical chair kind of arrangement. What do I mean by plugging it into another slot? Example; Take drive 0 on Slot 0, reinsert it into Slot 10; drive 10 on Slot 10, reinsert it into Slot 7. I have no idea why anyone will want to do this, but I was asked this recently by a customer and I tested it in the lab and it works! No reconfiguration, no repairs, nothing!
Having said that, I would like to leave you guys with this comment which applies to everything that we do.
Just because it works and it is supported, doesn’t always make it a good idea.