Highlighted
Enthusiast
Enthusiast

Enabling fast-provisioning on OVDC breaks VAAI based fast-provisioning

I have an array that supports VAAI file based cloning.  The vCloud settings do not seem to match up with the expected behavior.

Here is what I am experiencing:

Setup 1:

          VAAI for fast-provisioning enabled on datastore (only using a single datastore in the storage profile).

          Fast-provisioning disabled on the OVDC.

Test 1:

          Clone a vApp from the catalog that has a chain length of 1.

Result 1:

          VAAI is used to clone VM <-- This shouldn't be happening according to my settings on the OVDC

          I have the ability to resize the disk and the chain length is 1 for the VM and that item in the catalog.

Setup 2:

          VAAI for fast-provisioning enabled on datastore

          Fast-provisioning enabled on the OVDC

Test 2:

          Clone a vApp from the catalog that has a chain length of 1.

Result 2:

        The VM's inside the vApp now has chain length of 2 and so does the VM in the catalog, showing that VAAI was not used and old COW method was used"

       I also now cannot resize the hard disk of the VM. Error: "The hard drives of the virtual machine "Server1" may not be modified, once created. This is a result of COW based fast-provisioning.

     This also causes Test 1 to now result differently because when cloning a fast-provisioned VAAI is not used. This requires that the catalog item be reset back to chain length of 1 by      consolidation, which I ran into another issue with.  The only way to really consolidate seems to be do a consolidation in the catalog, then find the VM in vCenter and perform the           consolidation.  Then Test 1 will function again.

This is causing me to not be able to enable fast-provisioning for some OVDC's while not for others when using VAAI based fast-provisioning.

Anyone else notice this?  

Running vCloud 5.1.2

Tags (1)
0 Kudos
8 Replies
Highlighted
Expert
Expert

I think your expected results might be off a little.

With VAAI on, and Fastprovision on... you should see the chain length grow as it is using the VAAI fastclone operations; and VCD is keeping track of the chain.  If your storage fully supports VAAI it should still be making "full" vaai clones on your storage solution.

To use VAAI my understanding is you are to turn VAAI on at the datastore - and ALSO turn on FastProvision.  Chain length is not a good way to see if something is using linked clones (it should be, but VMware broke with with this VAAI integration)  -- A better way is go look on disk, see if you have a -delta file.

Hope that gets going in the right direction - if not working please post back, include the storage vendor in case someone knows of VAAI issues with it.

ChrisF (VCP4, VCP5, VCP-Cloud) - If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful
0 Kudos
Highlighted
Enthusiast
Enthusiast

cfor,

If I look at the disk there are delta files when VAAI is turned on, also the datastore and fast provisioning is turned on, so it is not doing what the settings say should be happening.  Also looking at the vmdk files they show isNativeSnapshot="no" and createType="vmfsSparse" when VAAI is turned on and fastprovisioning is turned on.  Once I turn off fast provisioning the clones are still just as fast but are done by VAAI because when I look at the descriptor file it looks no different from the source it was cloning from.

This is happening across two different array manufactures that both support VAAI (Tintri and NetApp)

0 Kudos
Highlighted
Enthusiast
Enthusiast

Hi Jason,

Did you get anywhere with this as I am experiencing the exact same issue?? Our issue is compounded further in that we have one datastore that does not support VAAI offload so disabling fast provisioning would mean we cannot use linked clones on that datastore.

Thanks

Charlie

0 Kudos
Highlighted
Enthusiast
Enthusiast

I have not. The only workaround I have found is to not use VAAI based clones which is not ideal. I suggest you put in a support ticket so they fix this problem.

-Jason

0 Kudos
Highlighted
Enthusiast
Enthusiast

Thanks Jason, I have logged a support call and the Analyst is going to take it to the developers; however, I suspect the answer will be it works as expected and the wording is unclear Smiley Sad

Thanks Charlie

0 Kudos
Highlighted
Immortal
Immortal

The key point is that you should not mix VAAI and non-VAAI based linked clones.  When I say VAAI here I mean the setting in the vCloud Director website.  When you enable it in vCloud that's enabling what is also called Native Linked Clones.  If you have a mix of orgs with Native and non-Native, you'll get weird random errors about mixed types of chains or that they are not compatible.

Suffice to say, you should only use Native or non-Native across the board if possible.

0 Kudos
Highlighted
Enthusiast
Enthusiast

It doesn't work as expected even if all datastores are using native clones. I agree mixing them will not work and it would be best to disable VAAI clones in a mixed environment.

-Jason

0 Kudos
Highlighted
Enthusiast
Enthusiast

It would be great if you could explain why mixing arrays that support/do not support is bad news and also point to the docs that detail it. I fail to see why as long as the arrays are associated with different storage profiles and arrays in the same storage profiles are similar it is a problem. Would love some advice though.

Also I agree with Jason it does not work as expected. In fact even if I disable the VAAI offload entirely against the datastore not just the oVDC it still offloads the cloning??

0 Kudos