I’m going to be presenting a vBrownBag session this Wednesday night (US) / Thursday morning (AUS) on how to set up VSAN in your lab. There’s been a few blog posts around already, Duncan, William and Cormac (to name a few) all have something for those wanting to read up before the session.
But for those that can’t attend in person, I thought I would answer a question I got from a customer today “How is this VSAN software defined storage?”
Not wanting to repeat too much of my vBrownBag session here, my answer revolved around the “defined” part. We “define” how we want to storage to operate on a per VM basis. Now, until we get vVOLs this isn’t going to become as simple on larger arrays, but when we control everything from the hypervisor like we do with VSAN this is a reality today.
So what can we control? Well once VSAN is set up (and boy is it simple!), you need to use the Virtual Machine Storage Policy section of the vSphere Web Client to tell VSAN how to treat your VMDKs.
There’s more detail in Cormac’s whitepaper here, but you’ll find the following are options for defining your storage policies on VSAN:
Number of disk stripes per object
The number of HDDs across which each replica of a storage object is striped. A value higher than 1 may result in better performance (for e.g. when flash read cache misses need to get services from HDD), but also results in higher use of system resources. Default value: 1, Maximum value: 12.
Flash read cache reservation (%)
Flash capacity reserved as read cache for the storage object. Specified as a percentage of the logical size of the object. To be used only for addressing read performance issues. Reserved flash capacity cannot be used by other objects. Unreserved flash is shares fairly among all object. Default value: 0%, Maximum value: 100%.
Number of failures to tolerate
Defines the number of host, disk or network failures a storage object can tolerate. For n failures tolerated, “n+1” copies of the object are created and “2n+1” hosts contributing storage are required. Default value: 1, Maximum value: 3.
If this option is enabled, the object will be provisioned even if the policy specified in the storage policy is not satisfiable with the resources currently available in the cluster. VSAN will try to bring the object into compliance if and when resources become available. Default value: Disabled.
Object space reservation (%)
Percentage of the logical size of the storage object that will be reserved (thick provisioned) upon VM provisioning. The rest of the storage object is thin provisioned. Default value: 0%, Maximum value: 100%