In the second of my series of Quick Tip’s with Nutanix I wanted to cover off VMware APIs for Array Integration (VAAI).
The Nutanix platform supports VAAI which allows the hypervisor to offload certain tasks to the array. This vSphere feature has been around a while now and is much more efficient as the hypervisor doesn’t need to be the “man in the middle” slowing down certain storage related tasks.
Nutanix support all the VAAI primitives for NAS
- Full File Clone
- Fast File Clone
- Reserve Space
- Extended Statistics
If you are not aware of what these primitives mean, I’d suggest reading the VMware VAAI Techpaper.
For both the full and fast file clones an NDFS “fast clone” is done meaning a writable snapshot (using re-direct on write) for each clone is created. Each of these clones has its own block map meaning that chain depth isn’t anything to worry about.
I’ve taken the following from Steven Poitras’s Nutanix Bible
The following will determine whether or not VAAI will be used for specific scenarios:
- Clone VM with Snapshot > VAAI will NOT be used
- Clone VM without Snapshot which is Powered Off –> VAAI WILL be used
- Clone VM to a different Datastore/Container –> VAAI will NOT be used
- Clone VM which is Powered On –> VAAI will NOT be used
These scenarios apply to VMware View:
- View Full Clone (Template with Snapshot) –> VAAI will NOT be used
- View Full Clone (Template w/o Snapshot) –> VAAI WILL be used
- View Linked Clone (VCAI) –> VAAI WILL be used
What I haven’t seen being made clear in any documentation thus far (and I’m not saying it isnt there, I’m simply saying I havent seen it!), is that VAAI WILL only work when the source and destination resides in the same container. This means consideration needs to be given as to the placement of ‘Master’ VDI images or with automated workloads from vCD or vCAC.
For example, if I have two containers on my Nutanix Cluster (Master Images and Desktops) with my master image residing in the master images container, yet I want to deploy desktops to the Desktops container VAAI will NOT be used.
I don’t see this as an issue, however more of a ‘Gotcha’ which needs to be considered at the design stage.