First Class Disks/Improved Virtual Disks revisited

I have been receiving a number of queries lately with regards to First Class Disks (FCD) on vSphere, also referred to as Improved Virtual Disks (IVD). Some time back, I wrote a primer on FCDs and more recently I wrote about Safekeeper, a tool for interacting with FCDs which is available on GitHub as OpenSource. This may be why there has been an increase in awareness and I am seeing more questions about FCDs.

In this post, I want to address some of the most common FCD/IVD questions that I have received to date. Feel free to leave comments if there are other queries that are not answered in this post.

FCD Create/Modify

The whole point of FCDs is so that users can create/modify/delete FCDs independent of the virtual machine lifecycle. When creating an FCD, users also have the  option of converting a legacy disk to an FCD. This operations works with a VMDK attached to either a powered off or a powered on virtual machine, enabling the live translation of legacy virtual machine disks.

The following is a list of modifications that we currently support on FCDs:

  • Extend the size of an FCD.
  • Rename an FCD.
  • Updating the SPBM policy associated with an FCD.
  • Convert an FCD from thin provisioned to thick provisioned.
  • Attaching a tag to an FCD.

FCD Attach

FCDs can be attached to both powered on and powered off virtual machines.

FCD Delete

Deletion of an FCD that is not attached to a VM is supported.

Deleting an FCD attached to a VM when that VM is deleted is supported. This behaviour is based on flags set on the FCD. These flags can be set to delete the FCD when the VM is deleted, or the flags can be set to retain the FCD after the VM has been deleted.

Note that, historically, the default behavior was that the FCD would be deleted when the VM is deleted (unless the control flag is explicitly set not to delete it).  We are changing the default behavior going forward so that the default setting will be to not delete the FCD when VM is deleted, unless the control flag is explicitly set to delete it.

FCD Snapshot

FCDs can be snapshotted. The snapshots can be taken either using FCD snapshot APIs directly, or through VM snapshot APIs. The latter is for cases where the FCD is attached to a VM (but users can also create a FCD snapshot using FCD snapshot API even when it is attached to the running VM). Note however that using VM snapshot API’s while FCD is attached will not create an FCD snapshot.  If you use VM snapshot APIS and then invoke the FCD API to get a list of snapshots, it will only return the snapshots created through FCD snapshot API.

There is also an option create a new FCD from an existing FCD snapshot as well.

The safekeeper tool mentioned earlier is very useful for examining snapshot behaviour of FCDs.

FCD Encryption

[Update] Encryption of FCDs is available via VMcrypt, with the release of CSI 2.0 and vSphere 7.0.

FCD Max Volume Size

The FCD API does not dictate the maximum. The maximum volume size is defined by the underlying storage.

FCD Cloning

The FCD API support cloning of FCDs.

FCD Migration

The FCD API supports the relocating (using Storage vMotion) of an FCD to another datastore, if they are attached to a VM. This is done using migrateVM API. Migration of standalone/unattached FCDs is not available at the time of writing (vSphere 7.0U1). Storage DRS is not supported with FCDs at this time either.

As I mentioned at the beginning of this post, feel free to leave questions about FCDs in the comments, and I will endeavor to find an answer for you.

5 Replies to “First Class Disks/Improved Virtual Disks revisited”

  1. Great post ! Thanks for summarizing all the supported FCD functions. I was glad that i found your first blog post and that was the trigger for me to start exploring the FCD.

    I have couple questions,

    – Does FCD snapshot API supports with Virtual machine memory?
    – Would the maximum number of FCD disks 10000 limit combined with FCD disk and it’s snapshot at a vCenter Server level?

    https://configmax.vmware.com/guest?vmwareproduct=vSphere&release=vSphere%206.7&categories=1-0,11-0,3-0

    – How does the FCD/IVD maximum limits with the vCenter Server in a linked mode configuration?
    – Does FCD have any limitation with VM disk multi-writer flag enabled?

    Thanks,
    Kannan

    1. Thanks for the questions. Answers inline.

      – Does FCD snapshot API supports with Virtual machine memory?
      > No. Since FCD snapshots are on a per disk basis, it does not capture vmem. You would need to use the VM snapshot APIs for this.

      – Would the maximum number of FCD disks 10000 limit combined with FCD disk and it’s snapshot at a vCenter Server level?
      > The limit holds good irrespective of snapshots.

      – How does the FCD/IVD maximum limits with the vCenter Server in a linked mode configuration?
      > There is no special consideration for linked mode from FCDs perspective, the limit still holds.

      – Does FCD have any limitation with VM disk multi-writer flag enabled?
      > No. FCDs are very much the same as standard vmdks, apart from the fact that FCDs are stamped with a uuid.

  2. Need a help. We are testing the revert snapshot operation for an attached virtual disk using the RevertVStorageObject_Task and it’s failing.

    I have noticed a statement in the document “Reverts to a given snapshot of a VStorageObject. This operation is supported on detached VirtualDisks During revert all the snapshots which were taken after the specified snapshot would get deleted.” .

    Reference: https://vdc-download.vmware.com/vmwb-repository/dcr-public/b525fb12-61bb-4ede-b9e3-c4a1f8171510/99ba073a-60e9-4933-8690-149860ce8754/doc/vim.vslm.vcenter.VStorageObjectManager.html

    Does the revert snapshot operation supports only for detached virtual disks? Please confirm.

    Thanks,
    Kannan

Comments are closed.