You can now try a preview of Azure Managed Disks in Citrix Cloud’s XenApp & XenDesktop service while we put the finishing touches on the production version. Managed Disks provides scalable and highly available storage without the need to create storage accounts and worry about storage account IOPS constraints.
Overview of Managed Disks
Azure Managed Disks is an elastic disk storage system that is offered as an alternative to the current storage account-based system. Currently, XenDesktop has to create and manage multiple IOPS constrained storage accounts to provide storage for the VHD blobs that holds the operating system and data disks for provisioned virtual machines (VDAs). In addition, copying images between storage accounts is slow so copying each OS disk directly from the master image is not feasible for catalogs that use multiple storage accounts. Instead, the master image is replicated to each storage account when a catalog is created and updated so that each OS disks can be copied from a copy of the master image in the same storage account.
Managed Disks eliminates the complexity of storage accounts and offers a simple scalable and highly available solution for creating and managing disks and does away with the time consuming need to replicate master images to storage accounts. Furthermore, reliability of machines in availability sets is improved as Managed Disks are allocated to storage clusters in a manner that optimizes the distribution across fault domains.
An Azure resource group can hold no more than 800 Managed Disks. By default, XenDesktop provision three disks per machine: OS Disk, Identity Disk and Write Back Cache Disk. XenDesktop will provision no more than 240 machines per resource group leaving a small buffer for future use up to the theoretical 266 machines per resource group. Catalogs with more than 240 machines will therefore span multiple resource groups.
The billing policy for Managed Disks is currently different from unmanaged disks (VHDs in storage accounts) so there is a small difference in cost. The popular XenApp on Azure Cost Calculator has been updated to reflect the cost of Managed Disks. Finally, Azure has some Managed Disks specific limitations which are documented further down in this article.
Once the production version of this feature is released, Managed Disks will be the default option in Citrix Studio, but provisioning unmanaged disks into storage accounts will remain an option.
How to Enable the Managed Disks (Preview) in Studio
A new option to select Managed Disks (preview) is shown on the Storage and License Types page in the catalog creation wizard:
Selecting Managed Disks will bring up a popup window showing the limitations of the preview:
In particular, please note that Managed Disks preview only supports unmanaged disk (virtual hard disk blob in a storage account) master images. This is the same type of image used in previous version and existing images may be used. The production version of Managed Disks will support additional master image options including Managed Disks master images.
To identify Managed Disks (preview) catalogs from production catalogs, the prefix “Azure-Managed-Disks-Preview-” is added to the catalog name and a message is displayed on the Summary page
Catalogs still use Storage Accounts
If you inspect the Azure resources used by a Managed Disks catalog in the Azure Portal, you will find that they include at least one storage account. The storage account(s) are used for Azure Table storage and as temporary storage when creating Identity Disks. All XenApp & XenDesktop machines created by the Citrix Machine Creation Service (MCS) have an attached data disk called an Identity Disk that is unique to each machine.
Because an Identity Disk is specific to a machine, it cannot be created without the use of an intermediary storage account. This is because there is currently no API for writing directly to a managed disk except from a machine it is attached to. Instead we write the Identity Disk content to a blob in a storage account and then copy it to a managed disk. However, because Azure doesn’t know where to allocate the managed disk until it is attached to a machine, the copy can be requested, but Azure will not start copying until the machine is created which, in the case of on-demand provisioning, happens the first time the machine is started. This means that an Identity Disk will remain in a storage account until the first time the corresponding machine is started, at which point the source blob will be deleted from the storage account.
Limitations
- Azure Managed Disks (Preview) is provided “as-is” and is not covered by Citrix Customer Support.
- Azure Managed Disks (Preview) should not be used for production workloads.
- Machine catalogs created using Azure Managed Disks (Preview) may stop working when the preview is terminated. At that time, production support for Managed Disks will be available and catalogs can be recreated using the same image if desired.
- The master image must be a VHD in a traditional storage account (Azure Managed Disks master images are not supported).
- The master image VHD selected on the “Master Image” page must be in the same Azure location where the catalog is provisioned. (for example, “West US”)
- There is an upper limit of 10,000 Managed Disks per Azure subscription. This limits the total number of machines in a subscription to around 3,300 assuming three Managed Disks per machine (the default in Citrix Studio).
- Storage accounts are still needed for some steps in the catalog creation process. XenDesktop currently creates more storage accounts than strictly required and they are not deleted when they are no longer needed. However, once all machines in the catalog have been started, the storage accounts will be empty.