Thoughts from the EPS Windows Server Performance Team
Welcome back – Happy Friday! Day Sixteen of our Windows 7 / Windows Server 2008 R2 Launch Series is upon us. There are only six more days to go and excitement is growing! Following on from yesterday’s post, today we’re going to take a look at the specifics of Connection Broker for Windows Server 2008 R2 in this post and look at exactly how you configure and use the new features of this enhanced technology for Remote Desktop Services.
As with other server roles and role services, installing Connection Broker is very straightforward. The easiest way to do this is by using Server Manager and selecting the Connection Broker role service under the Remote Desktop Services role service:
You should not be asked any other questions at this point and the Connection Broker service should install with no further prompts. You will likely not even to reboot the server after the installation. One quick note here - you will want to choose a server that is not also a RD Session Host or has other roles like RDS Gateway on which to install the RD Connection Broker if possible. A Domain Controller makes a good candidate for a RD Connection Broker as it will usually not also have one of the other RDS roles except Remote Desktop Licensing. Prior to Windows Server 2008 R2, the Session Broker service itself didn’t require any configuration. There really wasn't anything you could configure anyway, since all of the settings were displayed and controlled on the Terminal Servers themselves. You should notice right away that Windows Server 2008 R2 and Connection Broker now has a management interface:
The Remote Desktop Connection manager is used to configure the new Connection Broker features, and you will soon see that Connection Broker is now complex enough that it was obvious a management user interface was needed. I am going to use a simple Remote Desktop Server farm with 2 Remote Desktop servers hosting RemoteApps to show how to configure Connection Broker to manage a simple farm. Some of this was covered yesterday in Dane’s post on RemoteApp and Desktop Connection. Previously in Windows Server 2008, if you wanted to deploy RemoteApps in a farm you had to build identical servers with the same RemoteApps on each server and then deploy the farm to users. With Connection Broker in Windows Server 2008 R2 you now have the choice to combine RemoteApps from Remote Desktop servers that have different RemoteApps installed and present them to users on the same web page. To do this, we start by adding RemoteApp sources in Connection Manager. Click on Add RemoteApp Source:
Pay close attention to the warning icon. The icon is there to remind you that you must add the computer account for the Connection Broker sever to the TS Web Access Computers group on the RD Session Host server. This is a common misconfiguration so to keep this straight think of it this way: You need to explicitly grant permission to any server that will load RemoteApps from your RD Session Host server. Remember that you get RemoteApps when you install RD Session Host on a server, and once you have installed your RemoteApp applications and configured them as RemoteApps you must allow your Connection Broker to query your RD Session Host and retrieve a list of RemoteApps. The same thing needed to be done with TS Web Access in Windows Server 2008 and it still applies in Windows Server 2008 R2.
To view your RemoteApp sources and make sure they were successfully added, go to RemoteApp Sources under Remote Desktop Connection Manager in the left pane of Server Manager:
I have two RemoteApp servers and they both have different RemoteApps installed, so I added them both as RemoteApp sources to Connection Broker. Now when a user visits the RemoteApp and Desktop Connection page they will see all of the RemoteApps from both servers configured as RemoteApp sources in Connection Broker, provided that I configure the page to load RemoteApps from the Connection Broker:
To complete the configuration though make sure you give the RD Web Access server the explicit permission to query the Connection Broker and retrieve a list of RemoteApps. This is done automatically when you click Click Add under the RD Web Access servers configuration in the Remote Desktop Connection Manager:
In this example, the Connection Broker and the RD Web Access server are the same server as it has both role services installed, but this should give you the general idea. Basically, the RemoteApps flow like this: RD Session Host Server <--> Connection Broker <--> Web Access <—> Client
If you select one or more RemoteApp sources in the RD Web Access configuration above then you are not using Connection Broker to manage your RemoteApps and instead you would enter either a DNS farm name that resolves to one server in a farm with multiple servers that all have the same RemoteApp installed, or you must enter one or more RemoteApp sources separated by a semicolon. This is essentially the same as how things worked in Windows Server 2008 with one exception: You could only add one RemoteApp server or a RemoteApp farm to TS Web Access.
I don’t want to get too deep into the way Connection Broker helps you deploy virtual desktops as there is going to be a separate blog post about that topic, but I do want to look at the UI of Connection Manager and how you configure the Connection Broker.
The first thing that must be done is to add an RDV server. This is done by clicking on Add next RD Virtualization Host servers:
The RDV Host is the server where RD Virtualization Host was installed, or your Hyper-V server. If Hyper-V is not installed when you install the RDV then it will be added as a required role service.
Once you have added your RDV Host server you would then add a RD Session Host redirector (which is basically a RDS Host in drain mode:
Finally, you would then assign Personal virtual desktops if you are going to use them by clicking on Assign next to Assign Personal virtual desktops to run the wizard:
That’s it for today! CC will be back tomorrow with a look at Remote Desktop Virtualization (RDS-V). Enjoy the rest of your Friday!