What Roles Do Storage Profiles Play in VMware Virtual SAN Storage?

VMware Virtual SAN (vSAN) will soon be released to the world, and companies will be exploring how they might be able to use this type of technology. As storage becomes more defined and controlled by software, how will processes adapt? When admins look to implement VMware vSAN they will need to understand storage profiles, a little-used feature that has existed since vSphere 5.0 was first released. In my travels with customers I have not seen many environments using storage profiles. VM storage profiles allows for the capabilities of the underlying storage to be presented to administrators for easier assignment to virtual machines.

Why Use Storage Profiles with vSAN?

Within clusters that are using vSAN for storage the use of storage profiles will play an important role. To properly control the performance or protection of individual virtual machines a storage profile will need to be assigned.

An example would be a number of virtual desktops that are using vSAN for storage. These desktops might be using the default vSAN values. While a database server running on a vSAN datastore might require additional performance, so a storage profile might be assigned that stripes the data across additional disks.

Assigning vSANs

This might be one of the more important questions. If a single vSAN datastore has multiple storage profiles configured for it, how will they be assigned to virtual machines?

The following are a few options that are possible for applying storage profiles to VMs.

  • Select when an admin creates the VMs during a manual provisioning process.
  • A VM deployed from a template configured with a storage profile does not inherit the same policy, but it can be configured in the wizard.
  • When deploying a VM from a cloud management tool such as vCAC, the profile will need to be applied through a custom workflow or future integration.
  • A script could be created to apply a profile to all VMs selected by a predetermined criteria.

The real question here is how easy or difficult will it be to apply profiles to virtual machines in this new software defined world. If VMs are created but only get the default values, this could lead to confusion or performance issues.

A scenario that I am going to test on a later day would be a pool of virtual desktops being deployed with Horizon View. The parent template would be configured with a vSAN storage profile, but will that persist with the desktops automatically created or will additional automation be required to apply the profile?

VSAN Storage Capabilities

Once I’ve built a VSAN cluster, a number of capabilities are presented and can be configured into separate or combined storage profiles. VMware has published a VSAN whitepaper that outlines some key new features of VSAN, but I’ll discuss some of the highlights here.

  • Number of failures to tolerate  This option allows admins to configure the number of failures to tolerate. A failure can be network, disk failure or host failure within the VSAN cluster. This value is important when design for the resiliency of your cluster.
  • Number of disk stripes per object When designing for the performance of a specific VM or group of VMs you can determine if you need to allow for additional capacity by striping the data across additional disk spindles. By default the value is a single spindle. If a read or write cannot be handled from cache it will resort to the spindle, by using more than one it can increase performance as needed.
  • Flash read cache reservation There is the option to explicitly reserve an amount of flash capacity on the SSD for read cache on a per object basis. This is configured as a percentage of the virtual machine disk.
  • Object space reservation  You can also reserve a percentage of the VM disk space on the hard drives during provisioning. This would be similar to thick provisioning on a standard datastore.
  • Force provisioning  If a policy is created with any of previous options and it VSAN cannot provide the service, this option will forcefully provision the VM. If the resources become available at a later time, VSAN will attempt to bring the VM back into compliance.

If you would like to know more about the design of a VSAN cluster refer to the official VMware VSAN Design and Sizing Guide.