Product Documentation

Delivery Controller 环境

Nov 17, 2015

在部署中,Delivery Controller 是负责管理用户访问的服务器端组件,它还负责代理和优化连接。Controller 还提供用于创建桌面和服务器映像的 Machine Creation Services。

站点必须至少有一个 Delivery Controller。在安装首个 Controller 并创建站点后,可添加更多 Controller。在一个站点中安装多个 Controller 有两大主要优势。
  • 冗余性 — 生产站点应始终确保至少拥有两个位于不同物理服务器上的 Controller,这是最佳做法。如果一个 Controller 出现故障,其他的 Controller 可以管理连接和站点。
  • 可扩展性 — 随着站点活动的增长,Controller 的 CPU 使用率将提高,SQL Server 数据库活动也会增加。更多的 Controller 可以处理更多用户以及更多的应用程序和桌面请求,并且可以提升整体响应能力。

Virtual Delivery Agent (VDA) 发现 Controller 的方式

VDA 必须首先向站点的 Controller 进行注册(建立连接),然后该 VDA 才可以使用。VDA 通过检查称为 ListofDDCs 的 Controller 列表来查找 Controller。ListOfDDCs 包括一个或多个用于将 VDA 指向站点 Controller 的 DNS 项或 IP 地址。为实现负载平衡,VDA 会自动在列表中的所有 Controller 之间分发连接。

除 ListOfDDCs 以外,ListOfSIDs 用于指明 VDA 允许哪些计算机安全 ID (SID) 作为 Controller 与其进行联系。ListOfSIDs 可用于降低 Active Directory 上的负载或避免来自受感染 DNS 服务器的潜在安全威胁。

随着在站点中添加和删除 Controller,确保所有 VDA 上的 ListOfDDCs 和 ListOfSIDs 始终包含最新的信息十分重要。如果未更新这些列表,VDA 可能会拒绝由未在列表中的 Controller 所代理的会话启动。无效的项会使虚拟桌面系统软件的启动发生延迟。要确保列表包含最新内容,您可以:
  • 使用自动更新功能,以便随着 Controller 的添加或删除自动更新 ListOfDDCs 和 ListOfSIDs。默认情况下,自动更新功能处于启用状态。
  • 自我管理 - 也就是说,手动更新用于标识 Controller 的策略或注册表设置。
在 ListOfDDCs 和 ListOfSIDs 中的信息可以来源于部署中的多个位置。VDA 按顺序检查以下位置,并在发现列表的第一个位置停止:
  1. 为自动更新功能所维护的静态存储位置。在启用自动更新并且 VDA 在安装后首次成功完成注册后,此位置包含 Controller 信息。(此存储还包括计算机策略信息,这样可以确保在重新启动后保留策略设置。)

    在安装后首次注册时,或者禁用自动更新后,VDA 将检查以下位置:

  2. 策略设置(Controller、Controller SID)。
  3. 注册表中 Virtual Desktop Agent 注册表项下的 Controller 信息。VDA 安装程序首次将根据在安装 VDA 时指定的信息填充这些值。
  4. 基于 OU 的 Controller 发现。这是一种为实现向后兼容性而维护的传统方法。
  5. 由 Machine Creation Services 创建的 Personality.ini 文件。

如果 ListOfDDCs 指定多个 Controller,VDA 将尝试以随机顺序连接这些 Controller。ListOfDDCs 还可以包含 Controller 组,在这些组的名称中,用括号将两个或多个 Controller 项括起。VDA 将尝试连接组中的每个 Controller,然后转向 ListOfDDCs 中的其他项。

自动更新功能替代了早期版本中的 CNAME 功能。如有需要,可以手动重新启用 CNAME 功能;但是,要使 DNS 失真继续工作,您将无法同时使用自动更新功能和 CNAME 功能。有关重新启用 CNAME 功能的信息,请参阅 CTX137960

选择自动更新或自我管理的注意事项

默认情况下,用于启用/禁用自动更新的策略设置处于启用状态。

以下类型的部署无法使用自动更新,而必须使用自我管理。
  • 使用 Controller 组的部署。
  • 出于安全原因使用 ListOfSIDs 的部署。(对于使用 ListOfSIDs 来降低 Active Directory 负载的部署,可以使用自动更新。)
  • 使用 Provisioning Services 但不使用写入缓存磁盘的部署。
  • 使用 Controller 或 Controller SID 策略设置的部署。