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 the cloud plane, then customized according to your organization's needs, and then converted into an assignable desktop image.
An assignable image is an image that has successfully completed the Horizon Cloud sealing process and Horizon Cloud can use it to provision RDS farms (in the case of RDS-based images) or VDI desktops (in the case of client-based images). Other terms sometimes used to describe such images are sealed images and published images. Sealing an image is sometimes referred to as publishing the image or converting the image to a desktop.
Creating the image involves this high-level sequence.
First, Create a Base Virtual Machine (VM)
You create a base VM either using the automated workflow or manually.
- The recommended and standard way is to use the administrative console's automated workflow to create the base VM using one of the supported VM configurations from the Microsoft Azure Marketplace. Using the automated workflow automates building the virtual machine (VM).
In the default tenant configurations, the automated workflow configures the VM to conform to the Horizon Cloud environment's requirements, including installing and configuring the appropriate agent-related software. In this configuration, the workflow also provides options for optimizing the VM, which can prevent Microsoft Windows Sysprep errors from occurring. From the console's Inventory page, start the workflow by clicking Import. For steps, see Create a Base Virtual Machine Automatically from the Microsoft Azure Marketplace and Pair it with Horizon Cloud. The wizard provides toggles that result in agent-related options getting installed in the VM, such as the App Volumes Agent and the Horizon Agent's remote experience features. Before selecting the remote experience features in the wizard, read Five Key Steps to Take with Your Golden Images to Get Optimal Remote Experience Performance from Horizon Cloud Farms and Desktops.
- An alternative to the standard way is to use the Microsoft Azure portal and manually perform all of the steps that the wizard automates. For information about these manual steps see Manually Build and Import a Virtual Machine from Microsoft Azure into Horizon Cloud. In that manual workflow, you must manually run the Horizon Agents Installer (HAI) to install the required agent software that allows for the VM to be paired with Horizon Cloud.
Important: If you use this alternative method, you are responsible for ensuring the resulting VM conforms to the configuration required by the Horizon Cloud environment. Applying the same configuration that are described for the automated wizard's Optimize Windows Image and Remove Windows Store Apps options is strongly recommended. Use of those configurations helps avoid Microsoft Windows Sysprep issues that might occur when the VM is later published as an image. See Deciding to Optimize the Windows Image When Using the Import Virtual Machine from Marketplace Wizard and Using the Remove Windows Store Apps Option When Using the Import Desktop Wizard.
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.
|Pod Manifest||Creation Method||Displayed Status|
|1600 or higher (created after the September 2019 service release)||Automated wizard||Not Paired (Import Successful)|
|1600 or higher (created after the September 2019 service release)||Manual||Not Paired|
|Prior to 1600||Manual||Not Paired|
The following screenshot illustrates a VM that is successfully created using the automated wizard, but which is not yet paired with the cloud, .
In either of the above cases, you must explicitly pair the VM with Horizon Cloud. The specific steps to explicitly pair the VM depend on the manifest version of the pod in which the VM is located.
- For a pod of manifest version 1600 or higher
- 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.
- For a pod of manifest versions lower than 1600
- When the VM was created manually, you explicitly pair the VM by following the steps in Manually Pair the Configured Virtual Machine with Horizon Cloud For Pods with Manifests Lower Than 1600.
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.
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 Install NVIDIA Graphics Drivers in a GPU-Enabled VM Imported in Horizon Cloud.
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. However, when your pod has not yet updated to manifest version 1230 or later, and if your organization has a policy that prevents use of local administrator accounts on domain-joined VMs, you will not be able to log in to the image VM to customize it until you configure the DaaS Direct Connect Users local group with those domain accounts you want used for customizing the image. Prior to pod manifest 1230, the agent software installed in a domain-joined VM prevented domain accounts from directly connecting to that VM. For details, see When Your Pod is Not Yet Updated to Manifest 1230 or Later, How to Configure the Ability for Domain Accounts to Remote Connect to the Imported Image.
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 Image VM 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.
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:
- From an RDS-based image, RDSH farms created based on that image. You can create both types of farms from the same published RDS-based image: desktop farms to provide end-user access to session-based desktops and application farms to provide access to remote applications. When you have created a farm, you can then use it to make assignments to users. See Farms in Horizon Cloud.
- From a Windows client-based image, VDI desktop assignments based on that image. See Create a Floating VDI Desktop Assignment Provisioned by a Single Pod in Microsoft Azure and Create a Dedicated VDI Desktop Assignment Provisioned by a Single Pod in Microsoft Azure.
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.