技术概述

XenApp 和 XenDesktop 是虚拟化解决方案。利用这些方案,IT 可以在提供随时随地访问任何设备的同时,控制虚拟机、应用程序、许可和安全性。

XenApp 和 XenDesktop 允许:

  • 最终用户独立于设备的操作系统和界面运行应用程序和桌面。
  • 管理员管理网络并控制来自选定设备或所有设备的访问。
  • 管理员从单个数据中心管理整个网络。

XenApp 和 XenDesktop 共享统一的体系结构 FlexCast Management Architecture (FMA)。FMA 的主要功能是可以通过单个站点和集成预配运行多个版本的 XenApp 或 XenDesktop。

XenApp 和 XenDesktop 主要组件

如果您不了解 XenApp 或 XenDesktop,本文将非常有用。如果您当前拥有 6.x 或更低版本的 XenApp 场或者 XenDesktop 5.6 或更低版本的站点,也请参阅 7.x 中的变更一文。

此图显示了典型部署(称为“站点”)中的主要组件。

本地化后的图片

Delivery Controller:

Delivery Controller 是 XenApp 或 XenDesktop 站点的中心管理组件。每个站点有一个或多个 Delivery Controller。至少安装在数据中心内的一个服务器上。为实现站点可靠性和可用性,Controller 应安装在多个服务器上。如果您的部署中包含在虚拟机管理程序或云服务上托管的虚拟机,Controller 服务将与其进行通信,以分发应用程序和桌面、对用户进行身份验证并管理用户访问、代理用户与其虚拟桌面和应用程序之间的连接、优化使用连接并对这些连接进行负载平衡。

Controller 的 Broker Service 跟踪登录的用户和登录位置、用户拥有的会话资源以及用户是否需要重新连接到现有应用程序。Broker Service 执行 PowerShell cmdlet 并通过 TCP 端口 80 与 VDA 上的 Broker Agent 通信。它不可以使用 TCP 端口 443。

Monitor Service 收集历史数据并将其放置在监视数据库中。此服务使用 TCP 端口 80 或 443。

来自 Controller 服务的数据存储在站点数据库中。

Controller 管理桌面的状态,根据需要和管理配置启动和停止桌面。在某些版本中,Controller 允许您安装 Profile Management 以在虚拟化或物理 Windows 环境中管理用户个性化设置。

数据库:

每个 XenApp 或 XenDesktop 站点至少需要一个 Microsoft SQL Server 数据库,用于存储配置和会话信息。此数据库存储组成 Controller 的服务所收集并管理的数据。在数据中心内安装此数据库,并确保此数据库与 Controller 建立持续型连接。站点还使用一个配置日志记录数据库和一个监视数据库。默认情况下,这些数据库与站点数据库安装在相同的位置,但您可以对此进行更改。

Virtual Delivery Agent (VDA):

VDA 安装在站点中要供用户使用的各个物理计算机或虚拟机上。这些计算机提供应用程序或桌面。VDA 使计算机能够向 Controller 注册,Controller 允许向用户提供它托管的计算机和资源。VDA 建立并管理计算机与用户设备之间的连接,确认 Citrix 许可证可供用户或会话使用,并应用已为会话配置的任何策略。

VDA 通过 VDA 中的 Broker Agent 将会话信息传递给 Controller 中的 Broker Service。托管多个插件并收集实时数据的 Broker 代理。它通过 TCP 端口 80 与 Controller 通信。

“VDA”一词通常用于指代理以及安装了它的计算机。

VDA 适用于 Windows 服务器和桌面操作系统。适用于 Windows 服务器操作系统的 VDA 允许多个用户同时连接到服务器。适用于 Windows 桌面操作系统的 VDA 每次仅允许一个用户连接到桌面。还可以使用 Linux VDA。

Citrix StoreFront:

StoreFront 可对托管资源的站点的用户进行身份验证,并可管理用户访问的桌面和应用程序的存储。它可以托管企业应用商店,使用户可以自助访问您为其提供的桌面和应用程序。StoreFront 还跟踪用户的应用程序订阅、快捷方式名称以及其他数据。这有助于确保用户在多个设备之间具有一致的体验。

Citrix Receiver:

安装在用户设备和其他端点(如虚拟桌面)上,Citrix Receiver 可使用户能够快速安全地从任何用户设备(包括智能手机、平板电脑和 PC)自助访问文档、应用程序和桌面。通过 Citrix Receiver 可以对 Windows、Web 和软件即服务 (SaaS) 应用程序进行按需访问。对于无法安装 Citrix Receiver 软件的设备,Citrix Receiver for HTML5 通过与 HTML5 兼容的 Web 浏览器提供了一个连接。

Citrix Studio:

Studio 是可通过其配置和管理 XenApp 和 XenDesktop 部署的管理控制台。有了此控制台,无需在单独的管理控制台中管理应用程序和桌面的交付。Studio 提供的向导将指导您完成设置环境、创建托管应用程序和桌面的工作负载以及将应用程序和桌面分配给用户的操作。还可以使用 Studio 为站点分配和跟踪 Citrix 许可证。

Studio 从 Controller 中的 Broker Service 获取所显示的信息,它通过 TCP 端口 80 通信。

有关详细信息,请单击此图:

Citrix Studio 概述

Citrix Director:

Director 是一款基于 Web 的工具,IT 支持团队和技术支持团队可以利用该工具监控环境和对问题进行故障排除,以避免这些问题危及系统,并可以为最终用户执行支持任务。可以使用一个 Director 部署连接和监视多个 XenApp 或 XenDesktop 站点。

Director 显示:

来自 Controller 中的 Broker Service 的实时会话数据。其中包括 Broker Service 从 VDA 中的 Broker 代理获取的数据。

来自 Controller 中的 Monitor Service 的历史站点数据。

HDX Insight 从 NetScaler 捕获的有关 HDX 通信(也称为 ICA 通信)的数据,前提是部署中包含 NetScaler,并且 XenApp 或 XenDesktop 版本包含 HDX Insight。

还可以使用 Windows 远程协助通过 Director 查看用户会话并与之交互。

Citrix 许可证服务器:

许可证服务器管理您的 Citrix 产品许可证。它与 Controller 通信以管理每个用户会话的许可,与 Studio 通信以分配许可证文件。必须至少创建一个许可证服务器来存储和管理许可证文件。

虚拟机管理程序或云服务:

虚拟机管理程序或云服务托管站点中的虚拟机。这些虚拟机可以是用于托管应用程序和桌面的 VM,也可以是用于托管 XenApp 和 XenDesktop 组件的 VM。虚拟机管理程序安装在完全专用于运行虚拟机管理程序和托管虚拟机的主机计算机上。

XenApp 和 XenDesktop 支持多种虚拟机管理程序和云服务。

虽然许多 XenApp 和 XenDesktop 部署都需要虚拟机管理程序,但您不需要虚拟机管理程序即可提供 Remote PC Access。使用 Provisioning Services (PVS) 预配 VM 时,也不需要虚拟机管理程序。

详细信息:

其他组件

以下其他组件(未显示在上面的图中)也可以包含在 XenApp 或 XenDesktop 部署中。有关详细信息,请参阅其文档。

Provisioning Services (PVS):

PVS 是在某些版本中提供的可选组件。它是 MCS 的备选方式,用于预配虚拟机。MCS 创建主映像的副本,PVS 采用流技术将主映像推送到用户设备。PVS 执行此操作时无需使用虚拟机管理程序,因此,您可以使用它来托管物理机。PVS 与 Controller 通信以向用户提供资源。

NetScaler Gateway:

用户从公司防火墙外部连接时,XenApp 和 XenDesktop 可以使用 Citrix NetScaler Gateway(以前称为 Access Gateway)技术保护与 TLS 连接时的安全性。NetScaler Gateway 或 NetScaler VPX 虚拟设备是在隔离区域 (DMZ) 中部署的 SSL VPN 设备,用于通过公司防火墙提供单个安全访问点。

NetScaler SD-WAN:

在向位于远程位置(如分支机构)的用户交付虚拟桌面的部署中,可以采用 Citrix NetScaler SD-WAN 技术来优化性能。(此技术以前称为 Citrix CloudBridge、Branch Repeater 或 WANScaler。)Repeater 可提高整个广域网的性能。通过在网络中使用 Repeater,分支机构的用户将在 WAN 上体验到像 LAN 一般的性能。NetScaler SD-WAN 可以设置用户体验不同部分的优先级。例如,通过网络发送大型文件或打印作业时,在分支机构中用户体验不会降低。HDX WAN 优化提供标记化压缩和重复数据删除功能,从而降低带宽要求并提高性能。

典型部署的工作原理

站点由具有专用角色的计算机组成,用于实现可扩展性、高可用性和故障转移,并提供采用安全设计的解决方案。站点包括安装 VDA 的服务器和桌面计算机,以及用于管理访问权限的 Delivery Controller。

本地化后的图片

VDA 使用户能够连接到桌面和应用程序。它安装在数据中心内的服务器或桌面计算机上以实现大多数交付方法,但是也可以安装在物理 PC 上以用于 Remote PC Access。

Controller 由独立的 Windows 服务组成,用于管理资源、应用程序和桌面,并优化和平衡用户连接。每个站点有一个或多个 Controller。由于会话受延迟、带宽和网络可靠性的影响,因此,在理想状态下,所有 Controller 都应位于相同的 LAN 上。

用户绝对不能直接访问 Controller。VDA 充当用户和 Controller 之间的媒介。当用户使用 StoreFront 登录站点时,其凭据将传递到 Controller 中的 Broker Service。然后,Broker Service 将根据为其设置的策略获取其配置文件和可用的资源。

用户连接的处理方式

要启动会话,用户将通过 Citrix Receiver(安装在用户设备上)或 StoreFront Citrix Receiver for Web 站点进行连接。

用户选择所需的物理桌面、虚拟桌面或虚拟应用程序。

用户的凭据按照此路径进行传递以访问 Controller,Controller 通过与 Broker Service 通信确定所需的资源。Citrix 建议管理员在 StoreFront 上放置一个 SSL 证书以加密来自 Citrix Receiver 的凭据。

本地化后的图片

Broker Service 决定允许用户访问的桌面和应用程序。

验证凭据后,有关可用应用程序或桌面的信息通过 StoreFront-Citrix Receiver 路径发送给用户。用户选择此列表中的应用程序或桌面时,该信息按照相反路径返回到 Controller。Controller 随后决定托管特定应用程序或桌面的 VDA。

Controller 将用户的凭据通过消息发送给 VDA,然后将关于用户和连接的所有数据发送给 VDA。VDA 接受连接,并将该信息按相同路径返回给 Citrix Receiver。在 StoreFront 上收集一组必需参数。这些参数随后被发送到 Citrix Receiver,作为 Receiver-StoreFront 协议对话的一部分,或者转换为 Independent Computing Architecture (ICA) 文件并下载。只要站点经过正确设置,凭据在整个流程均保留加密状态。

ICA 文件被复制到用户设备上,并在设备与 VDA 上运行的 ICA 堆栈之间建立直接连接。此连接绕过管理基础结构(Citrix Receiver、StoreFront 和 Controller)。

Citrix Receiver 和 VDA 之间的连接使用 Citrix Gateway Protocol (CGP)。如果连接丢失,通过会话可靠性功能,用户可以重新连接到 VDA,而无需通过管理基础结构重新启动。可以在 Citrix 策略中启用或禁用会话可靠性。

客户端连接到 VDA 后,VDA 将通知 Controller 用户已登录。Controller 将此信息发送到站点数据库,并开始在监视数据库中记录数据。

数据访问的工作方式

IT 可以通过 Studio 或 Director 访问每个会话生成的数据。通过使用 Studio,管理员可以访问 Broker Agent 中的实时数据,以便管理站点。Director 访问监视数据库中存储的相同实时数据以及历史数据。Director 还从 NetScaler Gateway 访问 HDX 数据以便技术支持人员提供支持以及进行故障排除。

本地化后的图片

在 Controller 内部,Broker Service 报告计算机上的每个会话的会话数据,以提供实时数据。监视服务还跟踪实时数据并将其作为历史数据存储在监视数据库中。

Studio 只与 Broker Service 通信,因此仅访问实时数据。Director 可以与 Broker Service 通信(通过 Broker Agent 中的插件)以访问站点数据库。

Director 还可以访问 NetScaler Gateway 以获取 HDX 数据信息。

交付桌面和应用程序:计算机目录、交付组和应用程序组

为计算机目录设置将交付应用程序和桌面的计算机。然后,创建交付组,交付组指定将提供的应用程序和桌面(使用目录中一些或所有计算机)以及哪些用户可以访问它们。

计算机目录:

计算机目录是作为单个实体进行管理的虚拟机或物理机集合。这些计算机及其中的应用程序或虚拟桌面是要提供给用户的资源。目录中的所有计算机安装相同的操作系统和相同的 VDA,并且,这些计算机上具有相同的应用程序或虚拟桌面。

通常,您创建一个主映像,然后使用此主映像在目录中创建完全相同的 VM。对于 VM,您可以为该目录中的计算机指定预配方法:Citrix 工具(PVS 或 MCS)或其他工具。也可以使用您自己的现有映像。在这种情况下,必须单独或统一使用第三方电子软件分发 (ESD) 工具管理目标设备。

有效的计算机类型包括:

  • 服务器操作系统计算机: 基于服务器操作系统的虚拟机或物理机。用于交付 XenApp 发布的应用程序(称为基于服务器的托管应用程序)和 XenApp 发布的桌面(称为服务器托管的桌面)。这些计算机允许多个用户同时与其建立连接。
  • 桌面操作系统计算机: 基于桌面操作系统的虚拟机或物理机。用于交付 VDI 桌面 (可以选择进行个性化)、VM 托管应用程序(来自桌面操作系统的应用程序)以及托管的物理桌面。同一时间仅允许一个用户与其中的一台计算机建立连接。
  • Remote PC Access: 支持远程用户从任何运行 Citrix Receiver 的设备访问他们的办公室物理 PC。办公 PC 通过 XenDesktop 部署进行管理,同时要求在白名单中明确指定用户设备。

有关详细信息,请参阅创建计算机目录

交付组:

交付组指定哪些用户可以访问哪些计算机上的哪些应用程序和/或桌面。交付组包含计算机目录中的计算机和具有站点访问权限的 Active Directory 用户。可以按照用户所属的 Active Directory 组将其分配到您的交付组,因为 Active Directory 组和交付组是对要求相似的用户进行分组的方式。

每个交付组都可以包含多个目录中的计算机,每个目录可以向多个交付组提供计算机。但是,一台计算机一次只能属于一个交付组。

可以定义交付组中的用户可以访问的资源。例如,要向不同的用户提供不同的应用程序,可以在一个目录的主映像上安装所有应用程序,并在该目录中创建足够多的计算机以在多个交付组之间分发。然后,可以配置每个交付组,以交付计算机上安装的不同应用程序子集。

有关详细信息,请参阅创建交付组

应用程序组:

与使用多个交付组相比,应用程序组提供应用程序管理和资源控制优势:通过使用标记限制功能,可以使用现有计算机来完成多个发布任务,从而节省与部署和管理其他计算机有关的成本。标记限制可以视为对交付组中的计算机进行划分(或分区)。对交付组中的一部分计算机进行隔离和故障排除时,应用程序组也很有用。

有关详细信息,请参阅创建应用程序组