Azure 虚拟桌面旨在为组织和用户提供可复原、可靠且安全的服务。 Azure 虚拟桌面的体系结构包含许多组件,构成将用户连接到其桌面和应用的服务。 大多数组件都是由 Microsoft 管理的,但有些组件由客户管理或合作伙伴管理。
Microsoft 为核心功能即服务提供虚拟桌面基础结构 (VDI) 组件。 这些组件包括:
- Web 服务:面向用户的网站和终结点,并将连接信息返回到用户的设备。
- 中转站服务:协调传入连接。
- 网关服务:一种 WebSocket 服务,用于提供远程桌面协议 (RDP) 连接,使用户无论从何处使用其设备进行连接,都能够连接到为其提供桌面和应用的会话主机。
- 资源目录:提供信息来指示 Web 服务,多个地理数据库中哪个托管每个用户所需的连接信息。
-
地理数据库:包含用户预配的每个资源的连接文件 (
.rdp) 和图标。
此外,Azure 虚拟桌面使用其他 Azure 服务(例如 Azure 流量管理器)将用户定向到最近的 Azure 虚拟桌面入口点。
你负责创建和管理会话主机,包括任何操作系统映像自定义和应用程序、虚拟网络连接、复原能力以及这些会话主机的备份和恢复。 还可以提供和管理用户标识,并控制对服务的访问。 可以使用其他 Azure 服务来帮助满足要求,例如:
- 使用 Azure 可用性区域 将会话主机分布在 Azure 区域内物理上彼此分离的数据中心位置中,每个位置都具有独立的电源、冷却和网络。
- Azure 备份,用于备份和还原会话主机。
- 使用 Azure Site Recovery 将会话主机复制到另一个 Azure 区域。
- Azure 顾问,帮助优化 Azure 资源。
此高层级示意图展示了各组件及其职责:
用户连接
当用户希望在 Azure 虚拟桌面中访问其桌面和应用时,为使连接成功,涉及到多个组件。 有两个单独的序列:
- 源发现。 源是可供用户使用的桌面和应用的列表。
- 通过远程桌面协议连接到会话主机。
订阅源发现
在源发现期间,用户可用的桌面和应用将填充在其本地设备上的应用中。 该信息源包含连接所需的全部信息。
源发现过程如下所示:
用户可能位于世界上的任意位置。 Azure 流量管理器根据地理流量路由方法,使用用户设备的源 IP 地址将用户设备路由到最近的 Azure 虚拟桌面 Web 服务实例。
Web 服务连接到同一 Azure 区域中的 Azure 虚拟桌面代理服务,以检索用户源的 RDP 文件和应用程序图标。 代理服务连接到同一区域中的 Azure 虚拟桌面地理数据库和资源目录以检索信息。
中转站服务将 RDP 文件和应用程序图标返回到 Web 服务,后者将信息返回到用户的设备。
下面是一个展示单个 Azure 区域中源发现过程的高层级示意图:
地理数据库仅包含位于该地理区域所涵盖的同一 Azure 区域内的主机池中的桌面和应用所需的信息。 如果将用户分配到其他地理位置涵盖的主机池中的桌面或应用,资源目录会告知 Web 服务连接到正确的 Azure 区域中的中转站服务和地理数据库。
下面是一个简要示意图,其中显示了不同地理位置涵盖的 Azure 区域中主机池的源发现过程:
RDP 连接
当用户从其源列表中连接到桌面或应用时,RDP 连接将按如下方式建立:
网关服务连接到同一 Azure 区域中的代理服务。 网关服务可让会话主机位于任何区域,并且仍可供用户访问。
中转站服务接管并协调用户设备与会话主机之间的连接。 中转站服务指示在会话主机上运行的 Azure 虚拟桌面代理连接到用户设备连接的同一网关服务。
此时,根据配置和可用的网络协议,将创建两种连接类型之一:
反向连接传输:在客户端和会话主机连接到网关服务后,它开始使用客户端和会话主机之间的传输控制协议 (TCP) 中继 RDP 流量。 反向连接传输是默认连接类型。
RDP 短路径:在用户设备与会话主机之间建立基于用户数据报协议 (UDP) 的直接传输,绕过网关服务。
下面是一个展示 RDP 连接过程的概览图:
提示
有关网络连接的更详细的技术信息,请参阅了解Azure虚拟桌面网络连接和用于Azure虚拟桌面的 RDP 短路径。
服务复原能力
Azure 虚拟桌面的设计旨在具备故障恢复能力,并为用户提供可靠的服务。 该服务经过设计,能够容忍单个组件发生故障,并能在发生故障后快速恢复。
Azure 虚拟桌面的 Microsoft 托管组件目前位于大约 40 个 Azure 区域,靠近用户并提供可复原的服务。 复原能力在全球、地区和 Azure 区域中采用以下方式实现:
Azure 流量管理器定向 Web 服务的流量。 如果发生服务中断导致 Web 服务或网关服务从一个 Azure 区域不可用,或者发生完整区域中断,则会将流量重定向到最近区域中下一个最近的可用实例。 流量的重定向让用户仍能建立新连接。
地理数据库在每个地理位置内使用 Azure SQL 数据库故障转移和数据复制功能。 如果发生数据库中断,数据库会故障转移到次要副本,并恢复正常操作。 在故障转移期间,新连接在故障转移完成之前会失败,但此故障转移不会影响现有连接。
资源目录、中转站服务、Web 服务和网关服务在 Azure 虚拟桌面的 Microsoft 托管组件所在的每个 Azure 区域中均可用。 每个组件都有多个实例,因此没有单个故障点。 在每个 Azure 区域中,每个组件至少有六个不同的独立实例或群集独立运行,以应对实例故障。
例如,某个区域部署了足够多的网关服务实例,既能满足需求,也有足够的容量在这些实例发生故障时继续承载负载。 如果网关服务的实例失败,将删除通过该网关服务的特定实例中继的任何基于 TCP 的 RDP 连接。 当这些断开连接的用户重新连接时,其余实例将处理请求并将每个用户重新连接到其现有会话。 网关服务的其他实例处理的其他所有会话都不受影响。
下面是一张高级别示意图,展示了由 Microsoft 管理的各个组件之间如何互连:
Azure 虚拟桌面依赖的其他 Azure 服务本身设计为可复原且可靠。 有关详细信息,请参阅 Azure 流量管理器。
相关内容
若要了解 Azure 虚拟桌面存储服务对象数据的位置,请参阅 Azure 虚拟桌面的数据位置。