Since Machine Creation Services (MCS) was first released in XenDesktop 5.0, every VM created has used a delta structure for the VM`s created on a hypervisor. This means that all VM writes go to the delta disk, but the base disk is shared across all VM disk reads go the shared base disk
Below is the structure of the VM`s that are created by MCS, each machine has a delta disk parented to the base disk and an Identity disk that contain the AD identity of the VM so that each machine is unique.
The delta structure was first chosen for a number of reasons, however the main reasons were
- Small storage footprint
- Fast VM create and reset times as the delta disks takes very little time to create.
However, storage has moved on since XenDesktop 5.0. With storage offload and smarter storage that can do inline dupe and perform copy on write operations, the use of deltas may not the best way to create your VMs. This is because of the use of delta disks do come with a downside
- Some backup solutions don’t backup VMs that contain a delta structure.
- Storage migration while not impossible is more complicated
- VM migration does not work on all hypervisors
- Block alignment issues on some hypervisors when using delta disks.
- As the storage is unaware of the VM structure, it is unable to apply any optimisations to the way that it stores the data.
- As the deltas grow over time, this can lead to disk fragmentation on the storage, leading to increased load on the storage.
For these reasons, we have introduced a new capability into the MCS which in addition to creating the existing delta structure when using persistent VMs, allow you to select that the VMs created are full clones of the master.
To switch to using Full Clone rather than deltas, via studio there is an extra option now available when creating a MCS catalog.
This means when the catalog is created the VM structure will look like so
The copy operation is done in a way that will Storage offload to be used by the hypervisor if the storage supports it. (VAAI/ODX)
This disk structure will allow you to better support
- Storage Migration
- VM Migration
- Backup solutions that don’t support delta structure
While this is only supported on persistent machines at the moment, the hope is that this feature will also be available to reset on boot machine in the near future.