Before you can start delivering desktops or RDS-based remote applications to your end users from your deployed pod, you must create at least one assignable desktop image. Creating this assignable image is a multi-step process: a base virtual machine (VM) must be created and paired with Horizon Cloud, then customized according to your organization's needs, and then converted into an assignable desktop image.

This page describes the sequence for creating single-pod-based golden images.

Important: To be supported for use in first-gen Horizon Cloud on Microsoft Azure deployments, all imported base images must be built from Windows-based VMs that are sourced from the Azure Marketplace. Even if you try an image obtained from other origins and the console does not prevent you from using it within the console's workflows, use of such images is unsupported.

If the image is running a Windows 11 operating system, in addition to the requirement to be directly sourced from the Azure Marketplace, the image cannot have been subsequently processed for it to be validly supported in first-gen Horizon Cloud on Microsoft Azure deployments. Importing Windows 11 VM from any other sources such as Shared Image Gallery (SIG), Azure Managed Images, Azure VM snapshot, and the like is currently unsupported.

For additional considerations about supported combinations of Gen-1 and Gen-2 machines for the image-related workflows with first-gen Horizon Cloud on Microsoft Azure deployments, which OSes are supported for which machine generation, refer to Support for Images Sourced from Pods on Microsoft Azure.

In addition to the sequence described here, when your tenant is configured to use Universal Broker, the features of the Horizon Image Management Service and multi-pod images are available to you. For details on multi-pod images, see the guide Managing Horizon Images from the Cloud and its subtopics.

Note: As of July 2022, content related to pods of unsupported manifests has been removed from this page. Such deployments have reached end of general support, per VMware KB 86476.

Brief Introduction

For Horizon Cloud on Microsoft Azure deployments, you first import a base VM from the Azure Marketplace. Customizing that base VM creates the golden image. Sealing that golden image results in the assignable image that can be used in your tenant's farms and single-session VDI desktop assignments.

That assignable image is an image that has successfully completed the Horizon Cloud sealing process and it can be used to provision farms (in the case of RDS-based images or multi-session images built on Windows Enterprise multi-session) or single-session VDI desktops (in the case of client-based images). In the Horizon Universal Console, the label Publish is used for the console's workflow to seal the image.

Creating a golden image which can be sealed and then used to provision RDS farms or VDI desktops involves the following high-level sequence.

First, Create a Base Virtual Machine (VM)

You create a base VM either using the automated workflow or manually.

Second, Pair the Image VM with Horizon Cloud

The following table describes what the Imported VMs page's Agent Status column will display for the listed cases where the resulting VM is not yet paired, even though it has the agent software installed on it.

Creation Method Displayed Status
Automated wizard Not Paired (Import Successful)
Manual Not Paired

The following screenshot illustrates a VM that is successfully created using the automated wizard, but which is not yet paired with Horizon Cloud.


Screenshot of the Imported VMs page listing the VM with Not Paired in the Agent Status column

You must explicitly pair the VM with Horizon Cloud.

On the Imported VMs page, you use the Reset Agent Pairing action on the VM to explicitly pair the VM with Horizon Cloud. This process can take several minutes. During the pairing process, the VM is restarted and its agent status changes to Unknown to Active. You have to refresh the page using the circular arrow icon to see the status changes.

The pairing process is completed when the Agent Status column displays Active and an agent version, such as 19.4.0. The following screenshot illustrates a VM after the pairing process is completed.


Screenshot of an imported VM with its Agent Status column displaying Active (19.3.0)

Third, Customize the VM

When the pairing process completes and after refreshing the page, the VM's agent status shows as active, then you customize the image VM's guest Windows operating system (OS) with the third-party applications you want to provide to your end users, as well as configure any OS-level settings such as customized wallpaper, fonts and colors, drivers, and other such items. For steps, see Customize the Imported VM's Windows Operating System and Horizon Cloud on Microsoft Azure - Install the Appropriate GPU Driver in Your Imported GPU-Capable VM.

Important: Starting with the December 2019 service release, the Import Virtual Machine wizard provides the option of either having the wizard-created VM joined to a specified Active Directory domain or not having the VM joined to the domain. Prior to the December 2019 service release, the wizard-created VM was always automatically joined to the domain. Your organization might also choose to join manually created VMs to a domain, to allow for domain admin accounts to log in and customize those VMs prior to sealing them.

If the base VM was joined to the domain in the creation process, then domain admin accounts can log in to the VM to customize it.

Configure the VM for Optimal Remote Experience Performance

After you have customized the VM for your specific organizational needs, follow the steps in Five Key Steps to Take with Your Golden Images to Get Optimal Remote Experience Performance from Horizon Cloud Farms and Desktops to ensure your end users will receive optimal remote experience performance from their assigned desktops and applications.

Finally, Convert that Golden Image to a Published Image

In the default tenant configurations, for both RDSH and VDI images, you use the New Image workflow to convert those VMs to assignable desktop images. For steps, see Convert a Configured Image VM to an Assignable Image in Horizon Cloud on a Per-Pod Basis.

After the VM is converted, the image's Published status on the Images page indicates Horizon Cloud has sealed the image VM for use in the environment. When you see that the image on the Inventory - Images page displays the Published status, you can create:

About the VMware Dynamic Environment Manager Agent Software and Creating Desktop Images in a Horizon Cloud Pod in Microsoft Azure

Starting with the July 2019 Horizon Cloud release, installation of the VMware Dynamic Environment Manager agent is incorporated into both the Horizon Agents Installer and the automated Import Desktop workflow. The VMware Dynamic Environment Manager agent component is also called the FlexEngine client component. The Horizon Agents Installer is the software package that installs the agent-related software in a new image VM, when you run the Import Desktop workflow or manually create an image VM. When you run the Import Desktop workflow, the Horizon Agents Installer runs behind the scenes to install the agents. When you follow the steps to manually create an image VM, you download and run the Horizon Agents Installer as part of those steps.

The July 2019 Horizon Cloud release corresponds with the 19.2 version of Horizon Agents Installer. The VMware Dynamic Environment Manager files are installed into the resulting image VM into file paths as described below.

For a pod with manifest version 1493 and later, when the base image VM is created in that pod using the automated Import Desktop workflow
This pod version is the first one in which the VMware Dynamic Environment Manager components are installed automatically into these base images by default. The resulting install file path is C:\Program Files\VMware\Horizon Agents\User Environment.
For a pod with manifest version 1493 and later, when the base image VM is created using the manual method
This pod version is the first one in which the Horizon Agents Installer has the option to install the VMware Dynamic Environment Manager components. If you choose to install that option when you run the Horizon Agents Installer in that manually created base VM, the resulting install file path is C:\Program Files\VMware\Horizon Agents\User Environment.
For a pod with manifest version earlier than 1493, when the base image VM is created in that pod using the automated Import Desktop workflow or using the manual creation method
In this case, the automated workflow does not install the VMware Dynamic Environment Manager components by default into the resulting VM. For base images in those older pods, you have to manually run the standalone VMware Dynamic Environment Manager installer that you download from the Horizon Cloud Downloads page in https://my.vmware.com. In this case, the resulting install file path is C:\Program Files\Immidio\Flex Profiles.