要确保远程桌面服务基础结构的可靠性和可伸缩性,你可以配置远程桌面连接代理以实现高可用性。 本文介绍如何设置高度可用的连接代理群集,包括先决条件、数据库配置、负载均衡和最终部署步骤。 按照这些说明操作,你可以最大程度地减少停机时间并优化远程桌面环境的性能。
Prerequisites
在开始之前,需要满足以下先决条件:
设置服务器以充当第二个 RD 连接代理。 此服务器可以是物理服务器或 VM。
设置连接代理的数据库。 可以在本地环境中使用 Azure SQL 数据库实例 或 SQL Server。 我们提供了使用 Azure SQL 的示例,但这些步骤仍适用于 SQL Server。 需要找到该数据库的连接字符串,并确保已安装适当的 ODBC 驱动程序。
配置连接代理的数据库
找到所创建的数据库的连接字符串 - 稍后在配置连接代理本身时(步骤 3),需要使用该连接字符串来识别所需 ODBC 驱动程序的版本,因此,请将该字符串保存到可方便参考的位置。 下面说明了如何查找 Azure SQL 的连接字符串:
在 Azure 门户中,选择浏览 > 资源组,然后选择部署的资源组。
选择创建的 SQL 数据库(例如 CB-DB1)。
选择 “设置>属性>显示数据库连接字符串”。
复制 ODBC(包括 Node.js)的连接字符串,如下所示。 将
<values>替换为你的值。 连接到数据库时,将使用此整个字符串以及包含的密码。Driver={ODBC Driver 13 for SQL Server};Server=tcp:<YourHost>,<HostPort>;Database=<DatabaseName>;Uid=<UserID>;Pwd=<Password>;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;
在新的连接代理上安装 ODBC 驱动程序:
如果将 VM 用于连接代理,请为第一个 RD 连接代理创建公共 IP 地址。 (仅当 RDMS 虚拟机尚不包含用于建立 RDP 连接的公共 IP 地址时,才需要执行此步骤。)
- 在 Azure 门户中,选择浏览 > 资源组,选择部署的资源组,然后选择第一个 RD 连接代理虚拟机(例如 Contoso-Cb1)。
- 选择设置 > 网络接口,然后选择相应的网络接口。
- 选择设置 > IP 地址。
- 对于公共 IP 地址,请选择已启用,然后选择 IP 地址。
- 若要使用现有的公共 IP 地址,请从列表中选择它。 否则,请选择“ 新建”,输入名称,然后选择“ 确定 ”,然后选择“ 保存”。
连接到第一个 RD 连接代理:
- 在 Azure 门户中,选择浏览 > 资源组,选择部署的资源组,然后选择第一个 RD 连接代理虚拟机(例如 Contoso-Cb1)。
- 选择连接 > 打开,以打开远程桌面连接客户端。
- 在客户端中,选择 “连接”,然后选择“ 使用另一个用户帐户”。 输入域管理员帐户的用户名和密码。
- 在收到有关证书的警告时选择 “是 ”。
下载与 ODBC 连接字符串中的版本匹配的 SQL Server 的 ODBC 驱动程序。 对于示例字符串,我们需要安装 ODBC 驱动程序版本 13。
将
sqlincli.msi文件复制到第一个 RD 连接代理服务器。打开
sqlincli.msi文件并安装本机客户端。针对每个 RD 连接代理(例如,Contoso-Cb2)重复步骤 1-5。
在运行连接代理的每个服务器上安装 ODBC 驱动程序。
在 RD 连接代理上配置负载均衡
你可以使用负载均衡器,例如 Azure 负载均衡器;否则,可以设置 DNS 轮循机制。
创建负载均衡器
创建 Azure 负载均衡器
- 在 Azure 门户中,选择>浏览 > 负载均衡器 添加。
- 输入新负载均衡器的名称(例如
hacb)。 - 为部署选择方案内部、虚拟网络(例如,Contoso-VNet),以及包含所有资源的子网(例如,默认值)。
- 选择 “静态 ”作为 IP 地址分配 ,并输入当前未使用的 专用 IP 地址 (例如 10.0.0.32)。
- 选择相应的 订阅、包含所有资源的 资源组 和相应的 位置。
- 选择 创建。
创建 探测 来监视哪些服务器处于活动状态:
- 在 Azure 门户中,选择浏览 > 负载均衡器,然后选择创建的负载均衡器,例如
CBLB。 选择 “设置”。 - 选择“探测”>“添加”。
- 输入探测的名称(例如 RDP),选择 TCP 作为协议,输入端口的 3389,然后选择“确定”。
- 在 Azure 门户中,选择浏览 > 负载均衡器,然后选择创建的负载均衡器,例如
创建连接代理的后端池:
- 在 “设置”中,选择 “后端地址池 > 添加”。
- 输入名称(例如 CBBackendPool),然后选择添加虚拟机。
- 选择可用性集(例如 CbAvSet),然后选择“ 确定”。
- 选择“选择虚拟机”,选择各个虚拟机,然后选择“选择”“确定”>“确定”>。
创建 RDP 负载均衡规则:
- 在 “设置”中,选择 “负载均衡规则”,然后选择“ 添加”。
- 输入名称(例如 RDP),为协议选择 TCP,为端口和后端端口输入 3389,然后选择“确定”。
添加负载均衡器的 DNS 记录:
- 连接到 RDMS 服务器虚拟机(例如 Contoso-CB1)。 请查看 “准备 RD 连接代理 VM ”一文,了解如何连接到 VM 的步骤。
- 在“服务器管理器”中,选择工具 > DNS。
- 在左侧窗格中,展开 DNS,选择 DNS 计算机,选择 “转发查找区域”,然后选择域名(例如,Contoso.com)。 (可能需要花费几秒钟时间来处理对 DNS 服务器发出的信息查询。)
- 选择“操作”>“新建主机(A 或 AAAA)”。
- 输入前面指定的名称(例如
hacb)和 IP 地址(例如 10.0.0.32)。
配置 DNS 轮循机制
下面是创建 Azure 内部负载均衡器的替代步骤。
在 Azure 门户中连接到 RDMS 服务器。 使用远程桌面连接客户端
创建 DNS 记录:
- 在“服务器管理器”中,选择工具 > DNS。
- 在左侧窗格中,展开 DNS,选择 DNS 计算机,选择 “转发查找区域”,然后选择域名(例如,Contoso.com)。 (可能需要花费几秒钟时间来处理对 DNS 服务器发出的信息查询。)
- 选择“作”和“新建主机”(A 或 AAAA)。
- 输入 RD 连接代理群集的 DNS 名称 (例如
hacb),然后输入第一个 RD 连接代理的 IP 地址 。 - 针对每个 RD 连接代理重复步骤 3-4,并提供每条记录的唯一 IP 地址。
例如,如果两个 RD 连接代理虚拟机的 IP 地址分别是 10.0.0.8 和 10.0.0.9,请创建以下两条 DNS 主机记录:
- 主机名:
hacb.contoso.com,IP 地址:10.0.0.8 - 主机名:
hacb.contoso.com,IP 地址:10.0.0.9
对连接代理进行高可用性配置
将新的 RD 连接代理服务器添加到服务器管理器:
- 在服务器管理器中,选择>管理 添加服务器。
- 选择“ 立即查找”。
- 选择新创建的 RD 连接代理服务器(例如,Contoso-Cb2),然后选择“ 确定”。
对 RD 连接代理进行高可用性配置:
- 在服务器管理器中,选择>远程桌面服务 概述。
- 右键单击 RD 连接代理,然后选择配置高可用性。
- 完成向导的每个页面,直到进入“配置类型”部分。 选择共享数据库服务器,然后选择下一步。
- 输入 RD 连接代理群集的 DNS 名称。
- 输入 SQL 数据库的连接字符串,然后完成向导的每个页面以建立高可用性。
将新的 RD 连接代理添加到部署
- 在服务器管理器中,选择>远程桌面服务 概述。
- 右键单击“RD 连接代理”,然后选择添加 RD 连接代理服务器。
- 完成向导的每个页面,直到进入“服务器选择”,然后选择新建的 RD 连接代理服务器(例如 Contoso-CB2)。
- 完成向导并接受默认值。
在 RD 连接代理服务器和客户端上配置受信任的证书。