This post will walk through the setup of VMware VVOLs with EMC Unity. If you are unfamiliar with the concept of Virtual Volumes then the post VMware Virtual Volumes is a vanilla look at how VVOLs work and their advantages, without any reference to EMC. You can read more about the EMC Unity physical array by reviewing the EMC Unity Setup Guide, or the Unity Virtual Appliance by reviewing the Deploying EMC Unity VSA post.
EMC Unity VVOL Components
The vStorage APIs for Storage Awareness (VASA) provider is built into the controller, so there is no additional installation or configuration required. This design also offers high availability of VVOLs which is native to the controller configuration of the Unity product line. Virtual machines are provisioned based on the VMware Storage Policy Based Management (SPBM) framework which uses the VASA client, both features are key to VVOLs and were introduced with vSphere 6.
The Unisphere interface was rebuilt when EMC introduced Unity; the first midrange EMC product to officially support VVOLs. Unity provides both NAS and SAN connectivity for VVOLs, meaning virtual volumes can be provsioined via Fibre Channel, iSCSI, or NFS. The Protocol Endpoints are the NAS Server interfaces, iSCSI initiators, and Fibre Channel ports zoned to the ESXi hosts. VVOLs reside in VVOL datastores, known as storage containers, which are made up of storage allocations from one or more capability profiles. A capability profile is built on top of one or more underlying storage pools – a storage pool can contain different disk types.
- Before you can implement VVOLs you need to be running vSphere 6.
- If you have already licensed vSphere for standard or above there is no additional cost.
- At the time of writing all products in the EMC Unity range support VVOLs. If you are using an alternative storage provider cross check your hardware with VVOLs in the VMware compatibility checker, and check with your storage provider that they support VASA.
- Check the license pack for your Unity array covers VVOLs, this will be listed in the feature table on the licensing email from EMC. If you are unsure check with your account manager.
- The Unity 300 and 400 arrays support up to 9000 VVOLs. The Unity 500 supports 13500 VVOLs and the Unity 600 supports 30,000 VVOLs.
EMC Unity Configuration
First let’s add the vCenter Server to Unity so that ESXi hosts can be discovered. Log into the Unisphere web client and select VMware from the Access menu on the left hand side. Select vCenters and click the add symbol to add the vCenter Server. Enter the vCenter details to discover ESXi hosts that are connected via the Protocol Endpoints.
To deliver virtual volumes we need a storage pool. A storage pool was most likely configured during the setup of the Unity array. However if not, then select Pools from the Storage menu, create a storage pool using the create pool wizard.
If you already have a storage pool select VMware from the Storage menu and open the Capability Profiles tab. A capability profile is used to advertise the available characteristics of a storage pool, in this case virtual volumes. Click the add symbol to create a new capability profile. Give the profile a name and click Next.
Select the storage pool the capability profile should use and click Next.
Review the summary page and click Finish.
The capability profile will now be created.
Once complete we can go ahead and create a storage container fo virtual volumes, in EMC this is called a VVOL datastore. Select the Datastores tab and click the add symbol to create a new VMware datastore. Select VVOL and click Next.
Enter a name for the virtual volume datastore and click Next.
Select the capability profile we created earlier and click Next, multiple capability profiles can be assigned.
Configure the hosts that should have access to the virtual volume datastore and click Next.
Review the summary page and click Finish. Storage containers are now presented to the vCenter hosts specified during access configuration, these are thin provisioned by default. For further details see the official EMC Unity VVOLs White Paper.
Since VVOLs are a new feature of vSphere 6 all configuration is done in the vSphere web client. The first task is to register the Unity VASA provider; from the home page in the vSphere web client click vCenter Inventory Lists, vCenter Servers, select the vCenter Server, click Manage and open the Storage Providers tab. Click the green add symbol to add a new VASA provider. Enter the URL of the Unity system and admin credentials, click Ok. The URL should be in the following format https:// :8443/vasa/version.xml where is the management IP address or FQDN of the Unity system.
Next we can provision VVOLs from the storage container (or VVOL datastore in EMC Unity) that we just created. From the home page in the vSphere web client click Storage, and Add Datastore. Pick the datacentre location and click Next, select VVOL as the type of datastore and click Next.
The available storage container should now be highlighted, verify the name and size, enter a name for your new datastore and click Next.
Select the hosts that require access and click Next, review the details in the final screen and click Finish. You may need to do a rescan on the hosts but at this stage we are ready to provision a new virtual machine to the virtual volume datastore with the default storage policy. This represents VVOLs in its simplest form, the virtual machine files are now thin provisioned and stored natively in the storage container we created on the Unity array. You can create additional storage based policies using the vSphere 6.0 Documentation Centre.
The release of vSphere 6.5 included VVOLs 2 built on VASA 3.0 which features support for array based replication. You can read more about what’s new here.