The RD Connection Broker role service is responsible for directing clients to an available RD Session Host server. If the RD Connection Broker role service is unavailable, then users are not able to access session-based virtual desktops. Having a single RD Connection Broker server creates a single point of failure.
To make the RD Connection Broker role service highly available, you need to have multiple RD Connection Broker servers. The RD Connection Broker role service uses a SQL Server data-base to track sessions that have been allocated to RD Session Host servers. For multiple RD Connection Brokers servers to work together, they need to share a single SQL Server database.
NOTE
High availability for the RD Connection Broker role service in Windows Server 2012 and newer is active/active. This means that multiple RD Connection Broker servers can respond to client requests at the same time. Older implementations of the
RD Connection Broker and Terminal Services (TS) Connection Broker high availability
CHAPTER 8
were active/passive. A second server was used only when the first server failed. This provided high availability but not scalability.
To prepare the RD Connection Broker role service for high availability, you need to do the following:
● Configure a server running Microsoft SQL Server 2008 R2 or newer. The
RD Connection Broker servers must have permission to create a database on the server.
● Install the SQL Server Native Client on all RD Connection Broker servers. The RD Connection Broker servers use this to connect to the SQL database.
● Configure a static IP address on all RD Connection Broker servers. This is required to implement DNS round robin for load balancing.
● Configure a DNS round robin record for the RD Connection Broker servers. Select a name that is meaningful, such as rds.adatum.com.
Inside OUT
Configuring SQL permissions for RD Session Broker high availability
To assign the necessary permissions for RD Session Broker servers on the SQL server, perform the following steps:
1. Create a security group in Active Directory Domain Services (AD DS) and add the computer accounts for the RD Connection Broker servers.
2. Restart the RD Connection Broker server so that the new group membership takes effect.
3. On the SQL server, open SQL Server Management Studio.
4. In the Connect To Server window, verify that the correct instance of SQL server is listed and click Connect.
5. In SQL Server Management Studio, in Object Explorer, expand Security, and expand Logins.
6. Right-click Logins and click New Login.
7. In the Login – New window, on the General page, in the Login Name box, type Domain/GroupName.
8. Click the Server Roles page, select the Dbcreator check box, and click OK.
9. Close SQL Server Management Studio.
CHAPTER 8
When you configure the RD Connection Broker role service for high availability, its database moves from a local WID to a computer that is running SQL Server. Even when an RDS deploy-ment has multiple RD Connection Broker servers, SQL Server still can be a single point of fail-ure. You should make sure that SQL Server is highly available by running it in a failover cluster.
When you configure high availability for the RD Connection Broker role service, you need to provide a Database Connection String that the RD Connection Broker servers use to connect to the SQL server. The Database Connection String has the following format:
DRIVER=SQL Server Native Client 11.0;SERVER=LON-SQL.Adatum.com;Trusted_
Connection=Yes;APP=Remote Desktop Services Connection Broker;Database=RDS-DB
There are several things to note about the Database Connection String:
● A SQL native client version is specified In this example, the SQL native client version is 11.0. This is used when your SQL server is SQL Server 2012. If your SQL server is SQL Server 2008 R2, then the SQL native client version is 10.0.
● A server name is specified In this example, the server name is LON-SQL.Adatum.com.
In your deployment, you should specify the name of the SQL server that will be hosting the database for the RD Connection Broker servers.
● A database name is specified In this example, the database name is RDS-DB. This is the name of the database that will be created for the RD Connection Broker servers to use. You can select an alternate name, but it should be a meaningful name to make it easy to identify.
To configure the RD Connection Broker role service for high availability, perform the following steps:
1. In Server Manager, in the navigation pane, click Remote Desktop Services.
2. On the Overview page, in the Deployment Overview area, right-click RD Connection Broker and click Configure High Availability.
3. In the Configure RD Connection Broker For High Availability Wizard, on the Before You Begin page, click Next.
4. On the Configure RD Connection Broker For High Availability page, shown in Figure 8-24, in the Database Connection String box, type the appropriate Database Connection String for your environment.
CHAPTER 8
Figure 8-24 Configure RD Connection Broker For High Availability Wizard, Configure RD Connection Broker For High Availability page
5. In the Folder To Store Database Files box, type the path for the database on the SQL server. The database will be created in this location. This folder must already exist.
6. In the DNS Round Robin Name box, type the name of the DNS round robin record that you created for the RD Connection Broker servers and then click Next.
7. On the Confirmation page, click Configure.
8. On the Progress page, click Close.
After you have configured high availability for the RD Connection Broker role service, the RD Connection Broker icon in the Deployment Overview area is updated with the text (High Availability Mode). Now you can add another RD Connection Broker server by right-clicking the RD Connection Broker icon and right-clicking Add RD Connection Broker server. The new RD Connection Broker server will use the central SQL database that you have configured.
CHAPTER 8