What you need to know about RDSH on VMWare Horizon

Powerful new features in ControlUp v8.2 change the game when it comes to monitoring VMWare Horizon published applications.


One of the coolest features in ControlUp v8.2 (our latest release!) is its ability to monitor and manage published applications. The reason I am so excited about this is that computing always has been—and always will be—about applications, not desktops; desktops are just vehicles for accessing applications. 

VMware realized the benefits of application streaming early on, and they’ve enabled Horizon to stream desktops and applications from Microsoft Remote Desktop Session Host (RDSH) servers since Horizon 6. When accessing published applications, Horizon allows you to stream them to the device of your choice, whether it’s Windows, Mac, or Linux-based, a VDI client, or even a tablet or smartphone.

Let’s take a look at how RDSH servers are configured, and then how Horizon delivers applications emanating from them.

Configuring an RDS Host

RDSH is a role within the Remote Desktop Services (RDS) feature for Windows Server. For RDSH to function, the RDS role must be enabled, which you can do from the Server Manager.

Configuring an RDS Host
In order to publish applications from Windows Server, you need to install the Remote Desktop Session Host role.

Remote Desktop Session Host
Once RDSH is installed and you have rebooted your server, Remote Desktop Service service will be configured to start automatically.

rdsh Remote Desktop Service
Most large organizations run multiple RDS hosts. This configuration is known as a “farm” and Horizon supports this with cloned RDS hosts, making it easy to deploy hundreds—or even thousands—of streamed applications quickly.

Configuring Horizon for RDSH

Once an RDS host has been created, you publish applications by creating an application pool with Horizon Console.

In order for an RDS host to be used with Horizon, you need to install the Horizon Agent on it. When I added the Horizon Agent to the RDS host, I gave it the IP address of my Horizon Connection Server, accepted all the defaults, and then allowed the server to reboot. After these steps were complete, I saw the VMware Horizon View Agent, as well as other VMware services that were running.

VMware Horizon View Agent
To add an RDS host to Horizon, I logged in to Horizon Console, selected Farms from the Inventory drop-down menu, and then clicked Add.

RDS host to Horizon,
The wizard asked me what I wanted to name it, and which RDS hosts I wanted in the farm.

RDS hosts
Once the farm was created, I navigated to Applications from the Inventory drop-down menu, and then clicked Add from Installed Applications from the Add drop-down menu. At this point, I selected the applications that I wanted to stream (any application installed on the RDSH server can be used).

NOTE: As of Horizon 2012, Universal Windows Platform (UWP) applications are not supported as published applications.

vmware horizon rds
I entitled the applications to the active directory (AD) users that I wanted to have access.

I logged on to my Horizon client and saw the applications that I had selected to stream, as well as my instant clone desktop pools.

RDS host

When you stream an application using a Horizon client, you will see the client process, not the streamed application, in the local Task Manager, as the application will be running on the RDS host.

The Horizon Console will show a single RDSH session.

single RDSH session
Under Applications, it will show a user count of one for each of the three streaming applications.

streaming applications

Using ControlUp with Streaming Applications

When you add a Horizon environment to your ControlUp Console, Horizon application farms will be added automatically. I had farms in both my Horizon 7 and my Horizon 8 environments.

Using ControlUp with Streaming Applications
Once added, ControlUp will only gather information from the Horizon Connection Server and the hypervisor (this is ControlUp’s “agentless” monitoring). Machine, session, and process level performance information is not available in this mode. To get the full performance metrics from the RDSH server, you will need to install the ControlUp Agent on it. To do this, I opened the firewall on the server to allow ControlUp through, and then clicked Install Agent for my RDS host in the ControlUp dashboard.

Install Agent RDS host
Once the ControlUp Agent was installed, I clicked Sessions and saw the number two listed under the Apps in Use Count column, and the two apps (Notepad and Calculator) listed under the Apps in Use column.

Apps in Use Count
When I clicked the Applications tab, I saw all four applications that were being brokered by Horizon, as well as their names, status (i.e., Enabled or Disabled), and the farm that was streaming them.

rdsh vmware
When I right-clicked one of the applications, I had the option to disable the application under the Horizon Management drop-down menu. Once an application is disabled, it will show as “Disabled” in the dashboard.

Horizon Management
When I tried to launch the disabled application, I got a “Loading Failed” message. However, my streamed applications currently running were not terminated.

Loading Failed
In Horizon Administrator, it showed the application as not being enabled. The ability to disable individual applications was introduced in Horizon 2012. You can now enable/disable applications in Horizon Administrator from the More drop-down menu.

vmware Horizon Administrator
Applications can also be enabled from the ControlUp dashboard even though the ability to enable and disable a single action was only introduced in Horizon 2012 you can do it for applications in Horizon 7 using ControlUp.

applications in Horizon 7
You can Disconnect and Log off sessions from the Horizon Management drop-down menu.

Horizon Management
Disconnecting a session will only terminate the connection and stop it from streaming; it will not stop the application from running on the RDS hosts. The application’s state is shown on the dashboard.

RDS hosts
You can also see an application’s state in Task Manager on the RDS host.

application’s state
When you start streaming an application again, they will be in the same state as they were before you disconnected from them.


Application streaming is an important technology, and one that is widely used in health care and other verticals where the need exists to deploy applications regardless of the user’s platform or location. ControlUp now brings a tool to the IT staff which helps in their management and deployment of applications from Horizon. Although ControlUp presently only has a limited number of script actions for use with Horizon streaming  applications, it does provide a platform for implementing self-healing and anonymous management of streaming applications; in the near future, I foresee this becoming a bigger trend. 

If you want to see how ControlUp 8.2 works in your environment, all you have to do is install a single executable file on a Windows machine. You can download a free-trial version of ControlUp from www.controlup.com. It can be set up in less than five minutes, and if you encounter any issues along the way, ControlUp’s award-winning support staff will be more than happy to assist you.

digital experience monitoring

About the author

Tom Fenton

Tom Fenton is a Technical Marketing manager here at ControlUp (in addition to an all-around great guy). He’s THE subject matter expert for Edge DX, our physical endpoint monitoring solution, as well as an expert in all things VMware (FACT: he used to work at VMware, teaching their employees about their technology). He creates valuable, educational content for the ControlUp blog, leads deep-dive webinars, and educates our sales teams and other IT professionals with tips and tricks about how to use ControlUp solutions. In his spare time, he writes for StorageReview.com and Virtualization Review magazine, and enjoys outdoor sports in the Pacific Northwest. Connect with him on Twitter @vDoppler.