Using RDSH with Horizon
Tom Fenton enables a Windows server to stream applications, configures VMware Horizon to broker these applications to specific users and shows how to monitor streaming applications.
Computing has always been about applications -- all computer hardware and software is dedicated to running and delivering applications. Remote Desktop Session Host (RDSH) plays a huge role in this regard by allowing users to stream full desktops, as well as applications, to a device of their choosing: a tablet, VDI client, cell phone or even a Windows or Linux PC.
The point is that it doesn't matter where an application is streamed, just that end-users have access to it.
One other major advantage of streaming applications is that you can deploy applications to users quicker as they are installed, updated and patched in a central location rather than on individual desktops. Furthermore, data-intensive applications can be located closer to the data source.
In this article, I will show you how I enabled a Windows server to stream applications, then configured VMware Horizon to broker these applications to specific users. Finally, I will go over how to monitor streaming applications.
I focus on using RDSH, which entails using a Microsoft Windows Server to stream applications; however, Linux and Windows 10 can also stream applications. Linux is an attractive alternative for streaming applications, such as web browsers, as they do not require Windows Server and RDSH licensing. Streaming Windows 10 applications (which VMware refers to as VM hosted applications) allows for access to applications that fall into a number of unique circumstances, including those that don't run well in RDSH, need to use a different version of .NET, run Windows 10 Universal Windows Platforms (UWP) applications, or run applications that need drivers that aren't supported on either RDSH or Windows Server. Horizon supports the brokering of both VM hosted applications and streaming Linux applications, but as mentioned above, the focus here will be RDSH.
Configuring an RDSH Server
RDSH is a role within the Remote Desktop Services (RDS) feature for Windows Server. For RDSH to function, the RDS role must be enabled. I will be using Windows 2016 Standard Server. Both the Standard and Datacenter editions support RDS, but Essentials does not.
To enable the RDS role, I logged in to my Windows Server machine as Administrator. Then, I brought up the Administrative Tools, double-clicked Server Manager, selected Role-based or feature-based installation, and clicked Next.
I then clicked Next to accept my local server for the destination of the role, selected Remote Desktop Services, and clicked Next.
I clicked Next twice. When the Select role services page opened, I selected Remote Desktop Session Host, clicked Add Features, Next and Install, and then restarted the server.
I logged back in to the server and then brought up the Services (Local) page to verify that RDS was running.
RDS requires a separate license, but with my version I got a popup indicating that I had 119 days before it would stop working. RDS licensing, however, is beyond the scope of this article.
Configuring Horizon for RDSH
To configure Windows Server to work with Horizon, I added the Horizon agent to the RDSH sever by entering the IP address of my Horizon Connection Server, accepting the defaults, and then allowing the system to reboot.
From the Horizon Console, I selected Farms from the Inventory drop-down menu, and then clicked Add.
I selected Manual Farm, clicked Next, and filled out the Identifications and Settings pane by accepting the defaults.
I also accepted the defaults in the Load Balancing Settings pane, selected my RDS Hosts, verified my settings, and clicked Submit.
By navigating to the Farms screen again, I saw the new Farm listed.
I selected Applications from the Inventory drop-down menu, and then selected Add from Installed Applications from the Add drop-down menu.
I selected the applications that I needed from the Select Applications pane and clicked Next. I then verified the applications that I selected, prefixed them with Hrz8SA-, and clicked Submit. Note: any application installed on the system can be selected, not just Microsoft applications.
I entitled the applications to my View Users group.
I logged on to my laptop and launched the Horizon client, and it showed the four streaming applications.
When I tried to launch an instance of Calculator, however, I got a message that the user had requested a type of logon that had not been granted.
To correct this issue, I logged in to the RDSH server, and brought up System Properties by entering sysdm.cpl on Windows Start. I selected the Remote tab, selected Allow remote connections to this computer and Select Users, and added the View Users group.
Monitoring RDSH Connections
I was then able to launch my streaming applications. Even though these three applications were running on my laptop, the local Task Manager only showed Horizon Client running as the application was running on the RDSH server.
The Horizon Console showed a single RDSH session.
Under Applications, it showed a user count of one for the three streaming applications.
I added the Horizon 8 environment to my ControlUp by opening the Add EUC Environment wizard.
The environment was found, and the streaming Farm was added under the new folder.
I opened the firewall on the RDSH server to allow ControlUp through, and then clicked Install Agent on the RDSH server row. Once the ControlUp agent was installed, I clicked Sessions and saw my applications listed in the Apps in Use column.
When I clicked the Applications tab, I saw all four applications that were being brokered by Horizon.
Many companies choose to deliver full desktops for the flexibility that it gives their users, but I am finding more and more companies are choosing to stream the applications that their users use. This is a win-win situation for both the users and IT department -- users can access these Windows applications on the device and in the location of their choosing, and IT departments do not need to support the applications on individual desktops, conserving scarce IT resources.