精通-VMware-Horizon-7-8-全-

精通 VMware Horizon 7.8(全)

原文:annas-archive.org/md5/b192e3cedd7b35b8b47c035ccbd1cb5e

译者:飞龙

协议:CC BY-NC-SA 4.0

序言

VMware Horizon View,作为 VMware 数字工作空间的一部分,是提供集中式虚拟桌面和应用程序的平台,这些桌面和应用程序托管在数据中心运行的虚拟化管理程序上的服务器上。最终用户通过终端设备(如 Windows 笔记本电脑、Apple Mac 或平板设备)远程连接到他们的虚拟桌面和应用程序。

这项技术最早由 VMware 于 2002 年推出,并发展成熟,成为今天我们所知的主流技术——虚拟桌面基础设施VDI)。VDI 通过解放用户不必待在办公室的限制,使他们能够选择适合自己的设备进行工作,进而提高生产力,最终让你的业务变得更加灵活。

从 IT 管理员的角度来看,它使你能够集中管理桌面环境,从管理桌面镜像到轻松添加和移除用户权限,所有操作都可以通过单一的管理控制台进行管理。

VMware Horizon 7 和 Horizon View 7.7 版本是 VMware 最新的虚拟桌面解决方案,旨在通过 VMware 的软件定义数据中心SDDC)产品组合中的市场领先虚拟化功能和技术,集中化并虚拟化你的桌面环境。

Horizon View 7 基于这一技术平台,今天远远超越了仅仅提供 VDI 的范畴,提供了丰富的用户体验,支持 BYOD(自带设备)、灵活工作、增强的安全性、应用交付和端到端管理。提供最终用户体验需要与其他基础设施型项目不同的方法,做到这一点是项目成功的关键,本书将向你展示如何实现成功。

本书适合的人群

如果你是桌面管理员或参与部署虚拟桌面和/或应用交付解决方案的项目团队成员,或者正在利用一些最新的 Horizon 功能,那么本书将是你完美的伙伴,帮助你部署一个解决方案,集中管理和虚拟化你的桌面环境,使用 Horizon 7。

你需要具备使用 Microsoft Windows 桌面和服务器操作系统进行桌面管理的经验,以及对 Windows 应用程序、Active Directory、SQL 和 VMware vSphere 基础设施(ESXi 和 vCenter Server)技术的了解。

本书内容

第一章,介绍 VDI 和 VMware Horizon 7,涵盖了 VDI 的介绍,解释了它是什么,以及它与其他 VDI 类型技术的比较。然后我们将简要回顾 VMware VDI 的历史,并提供最新解决方案的概述。

第二章,理解 Horizon 7 架构与组件,介绍了构成核心 VMware Horizon 解决方案的架构组件,重点讲解 Horizon View 的虚拟桌面元素及虚拟桌面机器的经纪功能。

第三章,设计与部署考虑事项,向你介绍在进行 VMware Horizon 项目时需要考虑的设计与部署技巧。我们将讨论如何验证技术,了解它如何在企业内部运行,评估用户现有工作负载的方法,以及如何使用

这些信息将帮助你设计你的 VMware Horizon 解决方案。

第四章,安装和配置 Horizon 7 – 第一部分,介绍了 Horizon View 核心组件的安装过程,这部分涉及连接服务器和 View Composer 的安装。

第五章,安装与配置 Horizon 7 – 第二部分,通过安装安全服务器、复制服务器、注册服务器,以及云端架构功能,完成 Horizon 环境的安装。安装完成后,我们将开始配置 Horizon View 安装的基本元素。

第六章,使用 SSL 证书保障 Horizon View 安全,讲述了 VMware Horizon View 的安全通信,特别是如何为终端用户客户端提供安全通信,以及数据中心内不同的基础设施组件。本章的前半部分将概述 SSL 证书是什么,然后介绍如何创建和发布证书,接着配置 Horizon View 使用证书。在本章的后半部分,我们将探讨如何配置 VMware True SSO 功能。

第七章,构建和优化虚拟桌面操作系统,介绍了在构建 Horizon View 基础设施及其组件之后,如何创建和配置虚拟桌面机器,并在其上构建桌面操作系统,配置使其在虚拟环境中以最佳性能运行。

第八章,配置和管理桌面池 – 第一部分,讲述了 Horizon View 如何利用桌面池的概念,为特定的使用场景创建虚拟桌面机器的集合,并将这些集合分配给最终用户。在本章中,我们将讨论配置不同类型桌面池的过程。

第九章,配置和管理桌面池 – 第二部分,完成了桌面池管理的过程,重点介绍了链接克隆、手动桌面池以及一些日常管理任务。

第十章,优化终端用户体验,介绍了在构建最佳用户体验时的关键任务之一,即开始优化终端用户与虚拟桌面机器会话的性能和体验。在本章中,我们将探讨调优技巧以及可以应用的预构建组策略对象,以创造这种体验。

第十一章,使用 Horizon 7 发布应用程序,深入探讨了 Horizon 高级版的关键功能,并讲解了 Horizon View 如何直接在 Horizon View 客户端中发布应用程序,而无需启动完整的虚拟桌面机器。本章将带您走过安装和配置过程,以便将我们第一组 Horizon View 发布的应用程序提供给终端用户。

第十二章,Horizon 客户端选项,讲述了如何使用 Horizon 客户端接收并显示终端用户设备上的虚拟桌面和应用程序。在本章中,我们将探讨 Horizon 客户端的硬件和软件选项,并讨论各种选项以及为什么选择某种方法而不是其他方法。

第十三章,升级到新的 Horizon 版本,介绍了升级前需要考虑的所有事项,并将带领您完成升级过程。本章旨在帮助当前运行早期版本 Horizon View 的用户升级到最新版本。

第十四章,JMP 和 VMware Horizon 7 部署注意事项,介绍了 Horizon 7 中新增加的即时管理平台功能,并讲解了如何将 UEM、App Volumes 和 Instant Clones 结合使用以按需交付桌面。本章讨论了架构,并引导您完成安装和配置过程。

第十五章,故障排除,介绍了在 Horizon View 中采用的一些故障排除技术和方法,而不是列举问题和故障。

第十六章,Horizon 7 中的新特性,讨论了 Horizon 7 最新版本中的最新功能。

第十七章管理 Horizon 中的最终用户环境,介绍了 Horizon View Persona 管理,讲解了它是什么以及为什么你要部署它。接下来,我们将探讨它如何通过标准的活动目录组策略驱动,最后深入了解可用的策略。本章的第二部分将介绍 VMware UEM,以及如何开始使用它。

本章内容请参考:www.packtpub.com/sites/default/files/downloads/Managing_the_End_User_Environment_in_Horizon.pdf

第十八章使用 Horizon 7 交付已发布的桌面,介绍了 View 的发布功能的另一半,探讨了 Horizon View 如何从 Microsoft RDSH 基础设施中交付基于会话的桌面。

本章内容请参考:www.packtpub.com/sites/default/files/downloads/Delivering_Published_Desktops_with_Horizon_7.pdf

为了充分利用本书

为了充分利用本书,你应该具备一定的桌面管理员经验,拥有与构建和设计基于 Microsoft Windows 的桌面环境相关的技能和知识。你还应熟悉 VMware vSphere 平台(ESXi 和 vCenter Server),并且能够自如地构建和配置虚拟机,以及为虚拟基础设施配置存储和网络。

在本书中,你将有机会按照逐步的实用指南,在示例实验室环境中部署 Horizon View。如果你想通过实际示例进行操作,你将需要以下软件:

  • VMware Horizon 7 或版本 7.6、7.7、7.8

  • vSphere for Desktop(ESXi 和 vCenter Server 6.5)

你可以从以下链接下载 Horizon 7 的试用版(你需要一个 VMware 账户):

my.vmware.com/en/web/vmware/evalcenter?p=horizon-7

你还需要以下软件来构建虚拟机并部署应用程序:

  • Microsoft Windows Server 2016 64 位

  • Microsoft Windows 7 Professional 32 位或 64 位

  • Microsoft Windows 10

  • Microsoft SQL Express 2012

  • Microsoft Office 2016

下载彩色图像

我们还提供了一份包含本书中截图/图表彩色图像的 PDF 文件。你可以在这里下载:www.packtpub.com/sites/default/files/downloads/9781789802375_ColorImages.pdf

使用的约定

本书中使用了多种文本约定。

CodeInText:表示文本中的代码词汇、数据库表名、文件夹名称、文件名、文件扩展名、路径名、虚拟网址、用户输入和 Twitter 账号。例如:“此第二实例的连接服务器将安装在虚拟机上,虚拟机的主机名为 hzn7-cs2.pvolab.com,该虚拟机在本章开始时已创建。”

任何命令行输入或输出如下所示:

net stop certsvc
net start certsvc

粗体:表示新术语、重要单词或屏幕上看到的词汇。例如,菜单或对话框中的词汇会像这样出现在文本中。这里是一个例子:“在‘选择数据库所有者’框中,点击‘确定’以接受数据库所有者。”

警告或重要提示会以这种方式显示。

小贴士和技巧会以这种方式显示。

联系我们

我们始终欢迎读者的反馈。

一般反馈:如果您对本书的任何内容有疑问,请在邮件主题中注明书名,并通过电子邮件联系我们 customercare@packtpub.com

勘误表:虽然我们已经尽力确保内容的准确性,但错误仍然可能发生。如果您在本书中发现错误,我们将非常感激您向我们报告。请访问 www.packt.com/submit-errata,选择您的书籍,点击“勘误提交表格”链接,并填写相关细节。

盗版:如果您在互联网上发现我们的作品的非法复制品,无论形式如何,我们将非常感激您提供相关的地址或网站名称。请通过电子邮件将该链接发送至 copyright@packt.com

如果您有兴趣成为作者:如果您在某个领域拥有专长,并且有兴趣撰写或为书籍贡献内容,请访问 authors.packtpub.com

评论

请留下评论。在您阅读并使用本书后,不妨在您购买该书的网站上留下评论。潜在读者可以参考您的公正意见做出购买决策,我们 Packt 也能了解您对我们产品的看法,而我们的作者也可以看到您对其书籍的反馈。谢谢!

如需了解更多 Packt 的信息,请访问 packt.com

第一部分:安装与配置

本节中的章节描述了架构组件、如何设计和部署环境,以及 Horizon 环境的安装。

本节包含以下章节:

第一章,介绍 VDI 和 VMware Horizon 7

第二章,理解 Horizon 7 架构与组件

第三章,设计与部署考虑事项

第四章,安装与配置 Horizon 7 - 第一部分

第五章,安装与配置 Horizon 7 - 第二部分

第一章:介绍 VDI 和 VMware Horizon 7

在本书的第一章中,我们将首先讨论当我们谈论虚拟桌面基础设施VDI)时,我们到底在说什么,并准确地定义这一概念。一旦我们定义清楚了这一点,我们将继续讨论 VMware Horizon 解决方案中具体的 VDI 内容。

在本书中,我们使用了许多截图来展示 Horizon 的安装和配置,使用了示例实验室环境。这些截图来自 Horizon 7 版本 7.6,然而,最新的 7.8 版本与此完全相同,除了截图中显示的版本号和在某些情况下 Horizon 的徽标。所展示的过程和步骤保持不变。

Horizon 为 VMware 的终端用户计算EUC)解决方案提供了基础,以交付桌面和应用程序。VMware 大约 16 年前首次进入 VDI 市场,当时他们通过利用在服务器虚拟化市场的成功,展示了虚拟化桌面操作系统的概念。如今,服务器虚拟化技术已变得更加成熟和普及。通过运用在服务器虚拟化中使用的一些相同原则,并将其应用于桌面操作系统,VMware 能够创建一个集中管理的虚拟桌面解决方案,从而降低桌面计算的总体成本并提高安全性。

在本章中,我们将讨论以下主题:

  • 什么是 VDI,它是如何工作的?

  • VMware 和 VDI 的历史

  • VMware Horizon 版本和许可选项

在我们开始讨论具体的产品功能和功能之前,先来定义一下当我们谈论 VDI 时到底是什么意思。然后我们将简要回顾一下 VMware 的起步历程,看看它是如何开始的。

什么是 VDI?

当我们谈论 VDI 时,通常是在描述一种解决方案,即桌面 PC 的操作系统作为虚拟机托管在虚拟化管理程序上,虚拟化管理程序托管在服务器上,服务器是数据中心基础设施的一部分,可能是本地部署的,也可能是基于云的。

这种 VDI 模型有时也被称为托管虚拟桌面HVD),因为虚拟桌面作为虚拟机托管,最终用户可以访问他们自己的完整桌面实例。这与基于服务器的计算不同,后者仅向最终用户提供桌面会话。我们将在本章稍后的VDI 与基于服务器的计算(SBC)—它们的区别是什么?一节中讨论这一点。

VDI 高层架构—它是如何工作的?

VDI 是如何工作的?让我们从端用户及其如何访问虚拟桌面机器开始。从他们的端点设备(如 PC、瘦客户端或移动设备)启动客户端软件,例如 VMware 的 Horizon 客户端,或直接打开浏览器。无论哪种方式,这将连接到连接代理,使用其主机名或 URL。连接代理的首要工作是对端用户进行身份验证,然后管理可用资源,并将端用户连接到适当的虚拟桌面。交付给他们的桌面可以基于他们的物理位置或基于部门的基础,用户的上下文决定了不同的桌面配置。

下图概述了 VDI 工作的高级别描述:

在首批上市的 VDI 解决方案中,没有连接代理的概念,而是端用户会基于一对一的基础直接连接到虚拟桌面机器。就像把他们的桌面电脑拿到数据中心一样。

一旦端用户连接到虚拟桌面机器,屏幕截图或虚拟桌面机器的显示会通过优化的传输协议发送到端点设备上的客户端软件或浏览器,以便用户与虚拟桌面进行交互。鼠标移动和按键信息随后通过同一协议返回到虚拟桌面机器,通过网络进行传输。

因此,VDI 桌面更安全,因为没有数据离开数据中心,而只是屏幕截图更新或像素变化通过网络发送。根据前述类比,这就像是把您的个人电脑放到离家数英里远的数据中心,然后通过非常长的电缆在家中连接键盘、鼠标和屏幕。

从连接性的角度看这就是 VDI,但让我们稍作关注虚拟桌面本身,并看看其架构如何与物理世界的桌面有所不同。VDI 桌面通常是按需构建的,也就是说,当用户登录并请求桌面资源时。为了帮助管理成本,您通常会部署非持久性桌面模型(如《第二章》中所讨论的《理解 Horizon 7 架构和组件》),即用户不拥有自己的桌面,每次登录时都会为他们构建一个新的桌面。这正是虚拟和物理桌面之间的关键区别之一。

正如我们刚才讨论的那样,虚拟桌面通常是按需构建的,将构成完整桌面环境的不同组件汇聚在一起。操作系统、用户配置文件、桌面策略和应用程序都被视为独立的个别组件,与底层机器分离抽象,然后将它们合并在一起,提供最终用户的桌面体验。

这被称为复合桌面模型,下面的图表展示了这一点:

这里的关键要点是,虚拟桌面机器需要与物理桌面不同对待,要想充分利用虚拟桌面机器所提供的所有优势,应该从零开始构建,并从第一天起就将其作为虚拟机进行管理,使用一些专门为 VDI 管理设计的组件。我们将在下一章讨论这个问题。

VDI 与基于服务器的计算(SBC)——它们之间有什么区别?

那么,这些技术与 VDI 之间到底有什么区别呢?如果有的话?

SBC 是一项已有一段时间的技术。事实上,你或许可以追溯到上世纪 50 年代,那个时候的主机技术就被设计用来提供集中计算能力以运行一组应用程序,用户通过绿色屏幕终端连接到这些应用程序,那个终端几乎只是一个带键盘的显示器。

从根本上说,SBC(基于服务器的计算)并没有发生太大变化,依然是通过中心化的方式运行应用程序,尽管如今它运行在服务器上而不是主机上,终端用户则通过某种形式的终端设备进行连接。所以,在这种情况下,它与 VDI(虚拟桌面基础设施)的区别并不大,因为你连接的是托管在数据中心服务器基础设施上的远程应用程序。还是说有区别呢?

让我们首先来看应用程序的交付。VDI 和 SBC 的区别在于,SBC 中,应用程序安装并运行在实际的服务器上,使用多用户版本的应用程序为每个独立的终端用户创建单独的应用程序会话。终端用户将连接到自己的独立、独立保护的会话,而不是像在 VDI 中那样连接到一个包含应用程序的操作系统实例。由于一切都在数据中心运行,用户将通过终端设备或瘦客户端连接到会话。事实上,SBC 有时被称为瘦客户端计算。

以下图表提供了使用 SBC/远程桌面服务RDS)交付应用程序的概览:

使用 SBC 模型,你也可以以相同的方式交付托管的桌面会话。这次,用户不是连接到一个分离的、受保护的单独应用会话,而是连接到一个分离的、受保护的服务器操作系统单独会话。这里需要注意的一点是,终端用户实际上是在运行一个基于服务器的操作系统会话,如 Windows Server 2016,而不是一个 Windows 10 桌面会话。

到头来,你选择部署的技术取决于你的使用场景,以及从功能和成本的角度来看,哪种技术最为合适。你可能最终会采用混合方式,根据不同部门的具体需求,采用不同的桌面和应用程序交付方法。

部署 Horizon 的好处

通过将终端用户桌面环境虚拟化为一个集中管理的服务,你不仅可以为 IT 管理员带来好处,也可以为用户提供优势。以下是其中的一些亮点:

  • 安全性和合规性:除非 IT 部门特别配置了政策来允许,否则数据不会离开数据中心。同样,终端用户无法引入恶意软件或其他有害内容。传输到客户端设备的仅仅是虚拟桌面的截图,键盘和鼠标的操作会被传回虚拟桌面。这有点像是给桌面配备了一个遥控器。

  • 集中和简化的管理:集中桌面意味着集中管理。由于桌面被虚拟化并托管在数据中心,执行如更新和修补操作系统、批量安装新应用等任务变得更加容易,而不是一台台单独操作。虚拟桌面是从一个单一的金图像或主镜像创建的,这些镜像是集中维护和更新的。你只需更新镜像,点击几下鼠标就能重新创建虚拟桌面,嘿 presto —— 所有用户都会获得更新后的版本。环境和用户问题的故障排除变得更容易,而且无需亲自前往办公桌。最坏的情况是,你可以从头开始为终端用户重建一个新的桌面,或者让他们登录到一个新的桌面。

  • 可伸缩性、灵活性和敏捷工作:将桌面托管在虚拟平台上允许您更轻松地进行扩展和缩减,无需购买更多物理桌面。部署时间更快,成本更低。桌面甚至整个环境可以迅速启动并轻松撤销,以适应季节性工作者、专门项目的承包商,甚至提供灾难恢复和业务连续性。通过终端用户设备进一步降低成本,他们现在可以利用瘦客户端设备,甚至使用自己的个人设备进行连接。由于资源现在移动到数据中心服务器基础设施并远程访问,终端用户可以在任何地方访问他们的虚拟桌面,无需在办公室、办公桌上或需要 PC 来访问其企业桌面和应用程序。即使遇到恶劣天气、交通不畅或其他通常阻碍他们进入办公室的事件,他们仍然可以保持高效。

  • 移动和任意地点的 BYOD:虚拟桌面客户端使移动设备、平板电脑和非企业拥有的设备能够安全连接到企业虚拟桌面。在灵活工作的主题下,用户现在可以选择适合自己需求的设备,以便访问其企业桌面。无论是平板电脑、智能手机还是非 Windows 平台,用户仍然可以从远程位置安全访问其企业桌面。

  • 成本节约:通过实施虚拟桌面环境并采用围绕镜像、补丁和配置文件管理的运营最佳实践,以及集中式应用程序部署,可以节省运营支出OPEX),与传统桌面管理相比。资本支出CAPEX)仍然需要用于支持虚拟桌面环境并使其运行起来。我经常听到的一件事是,部署 VDI 将减少成本。在这里要说明的一点是,是的,它会减少 OPEX,但通常,在 VDI 项目开始时,CAPEX 会更高,因为您需要部署基础设施。话虽如此,这里也有成本节约的地方,例如将端点重新用于瘦客户端。总体而言,通过解决方案的持续管理节约成本,您将不会陷入典型的三年桌面硬件更新周期陷阱,其中操作系统和应用程序更新现在集中部署到虚拟机中。

VMware 和 VDI 的历史

虚拟化 Windows 桌面的概念早在 2002 年就已出现,当时 VMware 客户开始虚拟化桌面操作系统,并将其托管在运行 ESXi 虚拟化平台的服务器上。在那时,并没有连接代理的概念,VDI 这个术语也没有广泛使用。最终用户仅通过 RDP 协议直接连接到运行 Windows XP 的专用桌面虚拟机。这与远程管理服务器的方式相同,即通过 RDP 连接直接访问服务器的桌面。从那时起,这段旅程便开始了。以下时间线概述了这段旅程中的关键里程碑:

  • 2005:VMware 展示了连接代理的概念。

  • 2006:VMware 推出了 VDI 联盟计划。

  • 2007:向客户推出了原型连接代理,后来作为虚拟桌面管理器VDM)1.0 版本发布。VMware 以 2500 万美元收购了 Propero。

  • 2008:VDM 2.0 于 2008 年 1 月发布。VMware View 3.0 发布,Citrix 进入 VDI 市场,发布了 XenDesktop 2.0。

  • 2009:发布了 VMware View 4.0——首个支持 PCoIP 的版本。

  • 2010:发布了 VMware View 4.5,新增了本地模式(离线桌面)、PCoIP 增强功能、Windows 7 支持以及存储分层功能。这也是 VMware 首次公开谈论与东京三菱银行的最大 VDI 参考案例,银行部署了 50,000 台虚拟桌面。

  • 2011:发布了 VMware View 4.6,支持 iPad 客户端和用于 View 安全服务器的 PCoIP 安全网关功能,允许用户在不需要 VPN 连接的情况下连接虚拟桌面。发布了 View 5.0,引入了 Persona Management。View 5.0 还通过使用最新的 vSphere 5.0 平台,支持了 3D 图形,并对 PCoIP 协议进行了重大增强。

  • 2012:发布了 View 5.1 版本,新增了 View 存储加速器、View Composer 阵列集成、支持在使用 NFS 存储时将主机基础设施扩展至 32 节点集群、双因素身份验证、改进的 USB 设备支持、独立的 View Composer,以及支持从 XP 到 Windows 7 的配置文件迁移功能,还支持从物理桌面迁移到虚拟桌面,并引入了 Persona Management。

  • 2013:发布了 View 5.2,并为了与 VMware 同时推出的新 Horizon 品牌保持一致,View 5.2 更名为 Horizon View 5.2。这一版本包括支持与 Microsoft Lync 2013 的统一通信、硬件加速的虚拟共享图形加速vSGA)、Windows 8 支持,并提供了一个功能包,使用户能够通过 HTML5 浏览器使用 VMware Blast 协议访问其桌面。View 5.3 引入了虚拟专用图形加速vDGA),使虚拟桌面能够专用访问主机服务器上安装的 GPU。为了规避 Windows 7 没有服务提供商许可证协议SPLA)的问题,增加了对 Windows Server 2008 R2 的支持。

  • 2014:这是最后一个 5.x 版本,发布了 Horizon View 5.3.1,新增了对虚拟 SANVSAN)的支持。发布了 Horizon 6.0,加入了 View 托管应用程序,这是 VMware 首次支持使用 RDS 托管的应用程序和桌面。View 6.0 还引入了 Cloud Pod 架构,并支持跨多个数据中心扩展 View 基础架构,以实现灾难恢复和可扩展性。同时也移除了 View 本地模式。6.0.1 版本增加了 USB 3.0 支持,扩展了打印功能,提供了 Windows 8.x 的 HTML 访问,以及托管应用程序的系统托盘重定向。紧接着是 6.0.2 版本,增加了一个新功能包,新增了 View Agent 的新版本、HTML 访问、MMR 重定向和扫描仪重定向等功能。

  • 2015:View 6.1 发布,支持 NVIDIA GRID vGPU。它还增加了对 IPV6、虚拟 SAN 6.0、虚拟卷以及 Windows Server 2012 R2 作为虚拟桌面操作系统的支持。随后发布了 6.1.1 版本,新增了客户端驱动重定向、Linux 桌面支持、RDS 桌面的 MMR 支持,以及通过 HTML 访问托管应用程序的功能。Horizon 6.2 添加了对 Windows 10 桌面的支持,集成了 Access Point,支持 AMD vDGA,4K 显示器,并且更新了虚拟 SAN 6.1,同时对 Cloud Pod 架构、管理控制台和 Linux 桌面进行了若干增强。2015 年 12 月发布了 6.2.1 维护版本,2016 年 2 月发布了 6.2.2 版本。

总结一下,以下图示清晰展示了这一时间线:

这把我们带到了最新版本的 Horizon——VMware Horizon 7。

VMware Horizon 7

VMware Horizon 7 是 VMware EUC 愿景和战略的下一代产品,旨在提供数字化工作空间。在之前的章节中,我们讨论了 VDI 与 SBC/RDS 之间的一些区别,以及这两种解决方案的优势。然而,通过 Horizon 7,您可以通过一个平台提供 VDI 桌面、发布的应用程序和基于会话的桌面。

VMware Horizon 7 时间线

VMware Horizon 7 于 2016 年 3 月 22 日发布,包含了一些全新的功能以及一些改进。完整的发布说明可以在bit.ly/2O3ZYoG找到,亮点如下:

  • 即时克隆以加速桌面配置

  • 面向 25 个 Pod、跨 5 个站点、支持最多 50,000 个会话的 Cloud Pod 架构

  • 智能策略

  • 支持 TCP 和 UDP 传输协议的 VMware Blast Extreme 协议

  • 真正的 SSO

  • Access Point 集成

  • Windows Server 2016 作为远程桌面和应用 RDS 服务器的技术预览版

  • 更广泛的 Linux 操作系统支持

初始的 Horizon 7 版本随后发布了三个小更新版本;7.0.1(bit.ly/2QkCrBA)增强了 Blast 和基于 Linux 的虚拟桌面;Horizon 7.0.2(bit.ly/2NvorGw)增加了客户端驱动重定向、Horizon PowerCLI、适用于会话型桌面和应用的 RTAV、对 Windows 10 Build 1507、1511 和 1607 的支持,以及对 vSphere 6.5 的支持;Horizon 7.0.3(bit.ly/2QfsTaZ)移除了 View PowerCLI 并替换为 Horizon PowerCLI。此外,还对 Horizon Agent 进行了更新,特别是针对 Linux 桌面,增加了 vGPU 支持、V6 配置文件的 Persona Management 支持,并更新了 Horizon 客户端。

接下来是 2017 年 3 月 16 日发布的 VMware Horizon 7.1 版本(bit.ly/2Mj462g)。View 连接服务器进行了多次更新,新增了 Blast Extreme、已发布应用和桌面、即时克隆、Cloud Pod 架构等功能。Horizon GPO 包中的 ADM 模板文件已被弃用,并被 ADMX 模板文件取代。

7.1 版本之后是 2017 年 6 月 20 日发布的 VMware Horizon 7.2 版本(bit.ly/2QjAVzj)。此版本再次集中于 Connection Server 的更新,包括 Workspace ONE 访问策略、即时克隆增强、Cloud Pod 架构(现在支持 120,000 个会话),并新增了 Horizon Help Desk 工具。同时,Connection Server 的限制也得到了提高,现在每个 vCenter 服务器支持 4,000 个克隆。Skype 支持已添加到 Horizon Agent 中,并更新了 Horizon 客户端。

2017 年 10 月发布的 7.3 版本发现存在一些问题,因此从下载页面移除,直接跳转到 2017 年 11 月 20 日发布的 VMware Horizon 7.3.2 版本(bit.ly/2QhM8Ax)。此版本包含了 Horizon Help Desk 工具和即时克隆的更新,同时 Cloud Pod 架构的规模扩展至 7 个站点的 140,000 个会话。Horizon 客户端,特别是 Linux 版本,也新增了更多功能,并发布了 4.6 版本的新 Horizon 客户端。

在 2018 年 1 月 4 日发布的 VMware Horizon 7.4 中,也有类似的更新(bit.ly/2BFJE6q),该版本同样增加了会话协作、许多新的 ADMX 模板,并更新了 Horizon Client 版本 4.7。

VMware Horizon 7.5 于 2018 年 5 月 29 日发布(bit.ly/2lBvrBU),重点是连接服务器的新功能,新增了 Horizon 控制台 Web 界面,并将其与 Horizon 帮助台工具集成,还集成了用于按需管理平台的新工作流功能,包括 Horizon JMP 服务器安装程序。该版本还支持 vSphere 6.7,并能够在 VMware Cloud on AWS 上部署包含完整虚拟机的桌面池。

Cloud Pod 架构的规模进一步扩大,现在支持跨 10 个站点的 200,000 个会话。最后,Horizon Agent 有了几项增强功能,Horizon Client 也推出了新版本 Horizon Client 4.8。

接下来是 2018 年 7 月 19 日发布的 Horizon 7.5.1 维护版本(bit.ly/2oVxKS2),该版本修复了一个关于不安全记录凭证的问题,详见 CVE-2018-6971(cve.mitre.org/cgi-bin/cvename.cgi?name=2018-6971)。

这将我们带入最新的版本——VMware Horizon 7.6,该版本于 2018 年 9 月 6 日发布。这个小版本更新了连接服务器、Horizon Agent、Horizon GPO 捆绑包的附加功能,并推出了新版本的 Horizon Client,版本号为 4.9。

总结来说,以下图表以图示的方式展示了该时间线:

在下一部分中,我们将介绍不同的 Horizon 7 产品版本。

VMware Horizon 7 产品版本

Horizon 7 解决方案组合中有六种不同的产品版本,每个版本增加了不同的功能和特性。每个版本还可以根据其在整体解决方案中的角色进行分类。这些分类可以描述如下:

  • 虚拟桌面和应用程序交付

  • 工作区环境管理

  • 操作管理

  • 基础设施与托管

关于这六个产品版本,它们将在本章的以下部分中进行描述。

Horizon for Linux

顾名思义,Horizon for Linux 允许您集中管理基于 Linux 的虚拟桌面,并通过 Horizon View 进行交付。Linux 桌面的最大优势在于您可以远离其他更昂贵的操作系统,进一步降低部署成本。Horizon for Linux 支持多个 Linux 发行版,包括 Ubuntu、RHEL 和 CentOS,并且还利用了 View 提供的一些其他功能,例如 NVIDIA 图形解决方案。

Horizon 标准版

Horizon 标准版提供核心的 VDI 组件和功能,允许将基于 Windows 的虚拟桌面机器交付给最终用户。此版本包含托管基础设施、vSphere 和桌面用的 vCenter 的授权。还包括 ThinApp,这是 VMware 的应用虚拟化和打包解决方案,允许你从底层操作系统中提取应用并独立交付。

Horizon 高级版

Horizon 高级版专注于虚拟桌面和应用的交付与管理。高级版是第一个将应用发布作为 View 解决方案的一部分的版本,允许通过 View 客户端使用 PCoIP 协议、HTML 或 VMware Blast Extreme 发布在 Microsoft RDSH 后台运行的应用。这意味着用户现在可以仅将单个应用交付到客户端设备,而不是完整的桌面。

高级版中还包括统一工作区解决方案,提供统一的工作区,让用户可以从授权应用程序目录中选择应用。这些应用可以是 ThinApp 包、基于 SaaS 的应用、XenApp 发布的应用,或者来自 Microsoft Office 365 的任何内容。

高级版曾经包括 VMware Mirage,以便为物理桌面提供集中镜像管理。然而,该产品现已进入生命周期末期,与 Horizon Flex 一起停产。尽管你无法再购买这些产品,VMware 仍然为已部署这些产品的客户提供技术支持,直到 2020 年 6 月 30 日。

最后,高级版包括对 Skype、VMware 身份管理器和 VSAN 的支持。

Horizon 企业版

Horizon 企业版基于之前的版本,并通过使用 vRealize Operations for Horizon 来增加功能,以提供操作管理。结合 Horizon 帮助台工具,IT 管理员可以监控环境的健康和性能,并进行容量规划,以确保在扩展时获得最佳配置。

企业版中还包括 VMware App Volumes,允许你将即时交付的应用程序交付到虚拟桌面。这与即时克隆技术一起工作,实现按需构建和交付桌面和应用。然后,使用 VMware 用户环境管理解决方案为最终用户配置这些桌面和应用。有关 VMware App Volumes 的详细概述,你可以阅读由 Peter von Oven 编写并由 Packt 出版的《学习 VMware App Volumes》

企业版还增加了对交付基于 Linux 的桌面和会话协作的支持,使用户可以轻松协作。

Horizon 应用标准版

Horizon Apps Standard 专注于交付已发布的应用程序和已发布的桌面,因此无法交付基于虚拟机的完整桌面。它还包括 VMware ThinApp、对 VMware Identity Manager 的支持、使用 Blast Extreme 协议的会话交付和 VMware 用户环境管理。

Horizon Apps Advanced

Horizon Apps Advanced 在标准版的基础上增加了功能,例如 Skype for Business 的虚拟化包、带有即时交付功能的 VMware App Volumes,以及 Horizon 帮助台工具。

Horizon 版本概述与比较

下表详细列出了不同 Horizon 版本中可用的功能:

Horizon 用户许可模型

Horizon 提供两种不同的许可模型,这些模型也取决于您部署的版本:

  • 并发用户:适用于所有 Horizon 版本,其中许可基于同时访问应用程序和桌面的用户数量。

  • 指定用户:适用于所有 Horizon 版本,除了 Horizon for Linux 和 Horizon 标准版。使用指定用户时,许可证会分配给特定用户。

总结

在本章中,我们了解了什么是 VDI,描述了它是如何工作的,并与其他类似技术进行了比较。接下来,我们回顾了 VMware 起步的历史,展示了 VMware 一直是—并且仍然是—虚拟桌面和应用程序交付的前沿,今天更常被称为数字工作空间。

我们随后讨论了最新版本的 VMware Horizon 7,以及可用的不同版本,概述了每个版本及其核心功能。

在下一章中,我们将深入探讨 Horizon View 的技术,并开始研究构成解决方案的架构和不同组件。

第二章:理解 Horizon 7 架构和组件

在上一章中,我们介绍了虚拟桌面基础设施,特别是 VMware 的解决方案 VMware Horizon。作为介绍的一部分,我们高层次地了解了构成完整解决方案的一些不同组件。在本章中,我们将开始深入探讨这些架构和基础设施组件,重点讨论它们如何协同工作,共同构成完整的解决方案。

本章的各个部分将讨论每个 Horizon View 组件的作用,解释每个组件在整体基础设施中的位置和作用。我们首先会解释高层次的概念,然后深入探讨每个单独组件的工作原理。在我们逐步讨论这些部分时,还会强调一些最佳实践,并提供一些有用的提示和建议。

在这个过程中,我们还将介绍一些与 VMware Horizon 集成和互补的第三方技术,如杀毒解决方案、存储加速技术和高端图形解决方案,这些都帮助提供一个从数据中心到最终用户的完整端到端解决方案。阅读完本章后,你将能够描述 Horizon 的每个组件,例如:

  • 连接服务器

  • 安全服务器

  • 副本服务器

  • 安全性与 VMware 统一访问网关

  • View Persona Management (VDI) 和 User Environment Manager (UEM) 中管理最终用户配置文件

  • 显示协议

  • 链接、即时和完全克隆

  • 硬件加速图形(vSGA、vDGA 和 vGPU)

我们将讨论每个组件在整体解决方案中的作用,以及为什么要使用它们,如何配置它们,以及安装的前提条件。

介绍关键的 Horizon 组件

首先,我们将高层次地介绍构成 Horizon View 解决方案的核心基础设施组件和架构。我们将从如图所示的顶层概览开始,然后再深入探讨每个组件的详细信息:

在前面的图表中描述的所有 VMware Horizon 组件都是整体 Horizon 解决方案的一部分,但不要忘记,一些可用功能取决于你所购买的版本。

还值得记住的是,Horizon 许可包括相关的 vSphere 组件、ESXi 虚拟化程序和 vCenter Server 许可,使你能够部署核心托管基础设施。你可以根据需要部署任意数量的 ESXi 主机和 vCenter 服务器来托管桌面基础设施。

高层次的架构概述

本节我们将讨论 Horizon View 的核心功能,特别是如何为托管在 VMware vSphere 平台上的虚拟桌面机器提供代理服务。

Horizon 架构易于理解,因为它的基础建立在标准的 VMware vSphere 产品(ESXi 和 vCenter)上。因此,如果你有使用该平台的技能和经验,那么你已经走了一半的路。

Horizon View 基于 vSphere 基础架构,利用 ESXi 虚拟化和 vCenter Server 的一些功能,添加了多个虚拟服务器以执行各种 View 角色和功能。

以下图所示是提供虚拟桌面的 View 架构概述:

Horizon View 基础架构组件作为安装在 Microsoft Windows Server 操作系统上的应用程序运行,除了统一访问网关(Unified Access Gateway),它是基于 Linux 的硬化设备。理论上,这些基础架构组件可以运行在物理机器上;然而,当它们作为虚拟机运行时,可以获得许多好处,例如提供高可用性(HA)和灾难恢复(DR),以及通过虚拟化实现的典型成本节省。

以下章节将更详细地介绍视图架构中的各个角色和组件,从 Horizon View 连接服务器开始。

Horizon View 连接服务器

Horizon View 连接服务器也被称为连接代理或视图管理器。它是 View 基础架构的主要组件。其主要角色是通过执行用户身份验证,将用户连接到其虚拟桌面,然后根据用户的配置文件和授权交付和管理适当的桌面资源。登录到虚拟桌面时,您与连接服务器进行通信。

连接服务器是如何工作的?

用户将通过启动 Horizon 客户端连接到其 VDI 桌面,但同样,他们也可以使用基于浏览器的访问方式。我们将在第十二章 Horizon 客户端选项中介绍 Horizon 客户端和其他访问方法。

那么,接下来会发生什么,登录过程是如何工作的呢?一旦启动 Horizon 客户端,最终用户会输入他们想要连接的 View 连接服务器的地址详情(1),然后连接服务器(2)会回应并要求他们提供网络登录信息、Active Directory 域用户名和密码。

值得注意的是,Horizon View 现在支持以下不同的 AD 域功能级别:

  • Windows Server 2003

  • Windows Server 2008 和 Windows Server 2008 R2

  • Windows Server 2012 和 Windows Server 2012 R2

  • Windows Server 2016

终端用户的凭证通过 Active Directory 进行验证(3),如果验证成功,用户可以继续登录过程。根据他们被授权的资源,终端用户将看到一个启动屏幕,显示几个可以登录的虚拟桌面机图标。这些桌面图标代表了用户被授权使用的桌面池。用户还可能会看到代表已发布应用程序的应用程序图标。

桌面池基本上是类似虚拟桌面机的集合。例如,它可能是为营销部门设置的池,虚拟桌面机包含该部门特定的应用程序和软件。我们将在第八章,配置和管理桌面池 – 第一部分中更详细地讨论桌面池。

一旦验证通过,视图管理器或连接服务器会调用 vCenter 服务器(4)以创建虚拟桌面机,并且随后 vCenter 会调用(5)View Composer(如果你使用的是链接克隆),或者它会使用 vSphere 的 VM 分支功能创建一个即时克隆来启动虚拟桌面的构建过程,如果没有已经可供用户登录的虚拟桌面。

作为整体构建过程的一部分,如果已配置,VMware UEM 将加载终端用户的个人资料,个性化并定制该虚拟桌面以适应该用户。同样适用于 VMware 应用程序卷,如果已配置,它将同时交付任何分层应用程序。

当构建过程完成,虚拟桌面机已准备好供终端用户使用,且包括他们的个人资料和应用程序时,它会通过 Horizon Client 窗口(6)或浏览器显示或交付,使用所选择的显示协议 PCoIP、Blast Extreme 或 RDP。这个过程在下图中进行了形象化展示:

还有其他方式可以部署 VDI 解决方案,而不需要连接代理,尽管你可以说,严格来说,这不是一个真正的 VDI 解决方案。正如我们在介绍和历史中讨论的那样,这就是最早的 VDI 解决方案的样子,允许终端用户通过 RDP 协议直接连接到他们自己的虚拟桌面。然而,如果仔细考虑,仍然有一些特定的使用场景适合采用这种方式。

例如,如果你有大量的远程分支或办公室,你可以部署一部分基础设施,将其托管在本地站点上,从而允许用户在 WAN 故障或分支机构与总部之间网络通信不良的情况下继续工作。

恰巧 VMware 也考虑到这一使用场景,并提出了解决方案,称为 无代理视图(Brokerless View),它使用 VMware Horizon 视图代理的 DirectConnection 插件直接连接虚拟桌面机器,而无需连接服务器。这最初是 VMware 于 2013 年 10 月收购的 Desktone 桌面即服务 (DaaS) 解决方案的一部分。然而,别忘了,在 Horizon View 环境中,视图连接服务器提供了更多的功能,远不止将用户连接到桌面,正如我们将在本章后面看到的那样。

除了在最终用户和虚拟桌面机器之间进行连接代理外,视图连接服务器还与 vCenter 服务器协作,管理虚拟桌面机器。例如,当使用链接克隆或即时克隆并启动虚拟桌面时,这些任务由连接服务器发起,但由 vCenter 服务器执行。

现在我们已经介绍了什么是连接服务器,并简要概述了它的工作原理,在接下来的章节中,我们将讨论为了让它正常运行,你需要的要求。

连接服务器的最低要求

要安装连接服务器,你需要满足以下最低要求,才能在物理或虚拟机器上运行。

硬件要求

下表显示了安装连接服务器所需的硬件:

支持的操作系统

视图连接服务器必须安装在下表列出的操作系统之一上:

不再支持没有服务包的 Windows Server 2008 R2。

在接下来的章节中,我们将讨论 Horizon View 安全服务器。

Horizon View 安全服务器

Horizon View 安全服务器是架构中的另一个独立组件,也是连接服务器执行的另一个角色。主要的区别在于,首先,它位于你的 DMZ(隔离区)内,因此没有加入到你的域中。这使得它能够供最终用户从外部网络或互联网安全地连接到他们的虚拟桌面机器,而无需使用 VPN。由于它与其中一个连接服务器配对,因此,它所配对的内部连接服务器负责管理用户和桌面池等信息。其次,它不持有 ADAM 数据库的副本。正如你在第五章《安装与配置 Horizon 7 – 第二部分》中看到的,安装过程与安装视图连接服务器相同,但这一次,你在安装开始时从下拉菜单中选择安全服务器角色。

你不能在已经作为连接服务器或其他任何 Horizon View 组件运行的机器上安装视图安全服务器。

安全服务器是如何工作的?

首先,用户登录过程与连接到视图连接服务器时相同,本质上因为安全服务器只是运行部分功能的连接服务器的另一个版本,排除了 ADAM 数据库。不同之处在于您连接到安全服务器的地址。安全服务器位于您的 DMZ(隔离区)内,并与其所配对的位于内部网络上的连接服务器进行通信。因此,现在我们增加了额外的安全层,因为内部连接服务器没有暴露在外部,目的是让用户可以在不首先连接到 VPN 网络的情况下,外部访问他们的虚拟桌面机。

安全服务器不应加入域。

下面的图示描述了安全服务器连接过程:

当用户从 Horizon 客户端登录时,他们现在使用安全服务器的外部 URL 来访问连接服务器,连接服务器反过来会通过 Active Directory 对用户进行身份验证。如果连接服务器被配置为 PCoIP 网关,那么它将把连接和地址信息传递给 Horizon 客户端。这些连接信息将允许 Horizon 客户端通过 PCoIP 连接到安全服务器。图中由绿色箭头(1)表示。然后,安全服务器将把 PCoIP 连接转发到虚拟桌面机(2),为用户创建连接。虚拟桌面机将在 Horizon 客户端窗口中显示/交付(3),并使用所选择的显示协议(PCoIP、Blast Extreme 或 RDP)。我们将在本章稍后讨论此过程以及 View 用于连接的不同端口。

Horizon View 复制服务器

Horizon View 复制服务器,顾名思义,是视图连接服务器的副本,起着两个关键作用。

第一个作用是为您的 Horizon View 环境提供高可用性。拥有视图连接服务器的副本意味着,如果一个连接服务器出现故障,复制服务器将接管连接请求的管理,从而使最终用户仍然能够连接到他们的虚拟桌面机。

其次,添加复制服务器可以帮助您扩展用户数量和虚拟桌面连接数。单个连接服务器实例最多支持 2,000 个连接,因此添加额外的连接服务器可以一次增加 2,000 个用户,最多可扩展到每个 Horizon View pod 五个连接服务器和 10,000 个用户。我们将在第三章 设计与部署考虑事项中讨论 Pod 和 Block 架构。

部署复制服务器时,请记住,如果您没有使用负载均衡器,则需要更改 IP 地址或更新 DNS 记录,以匹配此服务器。

与安全服务器类似,你会发现安装过程几乎与连接服务器相同,但这次,在安装过程中你需要从下拉菜单中选择复制服务器角色。

复制服务器是如何工作的?

第一个问题是:什么会被复制?连接代理存储所有与最终用户、桌面池、虚拟桌面机以及其他与 View 相关的对象有关的信息,存储在 ADAM 数据库中。然后,使用 轻量级目录访问协议 (LDAP)(它使用类似 AD 用于复制的方法),这些 View 信息从原始连接服务器复制到复制服务器。

由于连接服务器和复制服务器现在彼此完全相同,如果你的连接服务器出现故障,那么复制服务器实质上就是一个备份,可以接管并让最终用户继续连接他们的虚拟桌面机。此外,由于复制服务器是环境中连接服务器的另一个实例,你可以扩展和管理额外的最终用户。

与其他 Horizon 组件一样,你不能将复制服务器角色安装在运行连接服务器或任何其他 Horizon View 组件的同一台机器上。

Horizon View 注册服务器和 True SSO

Horizon View Enrollment Server 是 Horizon View 连接服务器安装选项的最终组成部分,也是连接服务器安装过程中的另一个安装选项,并且可以从下拉菜单中选择。那么,注册服务器的角色是什么?

Horizon 7 引入了一个名为 True SSO 的新功能。True SSO 是一种解决方案,允许用户在不必输入他们的 AD 凭据的情况下认证到 Microsoft Windows 环境。它集成到另一个 VMware 产品 VMware Identity Manager (VIDM) 中,这是 Horizon 7 高级版和企业版的一部分。

它的工作是坐在连接服务器和 Microsoft CA 之间,从证书存储请求临时证书。

此过程在以下图表中有详细描述:

用户首先登录 VIDM,可以使用他们的凭据或者其他身份验证方法,例如以下内容:

  • RSA SecurID

  • Kerberos

  • RADIUS 认证

  • RSA 自适应认证

  • 基于标准的第三方身份提供者

一旦成功验证,最终用户将被呈现其有权使用的虚拟桌面机或托管应用程序。他们可以通过双击启动其中任何一个,这将启动地平线客户端,如前一图中的红色箭头所示(1)。然后用户的凭据将传递给连接服务器(2),连接服务器将通过将安全断言标记语言SAML)断言发送回身份管理器(3)来验证它们。

如果验证了最终用户的凭据,则连接服务器将其传递给注册服务器(4)。注册服务器然后向 Microsoft 证书颁发机构CA)发出请求,为该用户生成一个短期临时证书以供使用(5)。

现在生成了证书,连接服务器将其提交给虚拟桌面机的操作系统(6),然后操作系统通过活动目录验证证书是否真实(7)。

证书经过验证后,最终用户将登录其虚拟桌面机,然后使用所选择的显示协议将其显示/传递到地平线客户端(8)。

所有 Horizon 7 支持的桌面操作系统以及 Windows Server 2008 R2 和 Windows Server 2012 R2 都支持真正的 SSO。它还支持 PCoIP、HTML 和 Blast Extreme 交付协议。

VMware 统一访问网关

VMware Unified Gateway在下图中显示了与视图安全服务器相同的角色,但存在一个关键区别。统一访问网关不是 Windows 应用程序,也不是连接服务器中的另一个角色,而是一个运行硬化、锁定的 Linux 操作系统的单独虚拟设备:

尽管统一网关设备提供与安全服务器几乎相同的功能,但它们尚未完全替代它,特别是如果您已经在生产环境中使用安全服务器进行外部访问。在这种情况下,您可以继续使用此架构。

如果您使用连接服务器的安全隧道功能、PCoIP 安全网关或 Blast 安全网关功能,则在使用统一访问网关时需要在连接服务器上禁用这些功能。这些功能在统一网关设备上默认启用。

Unified Access Gateway 设备和安全服务器之间的一个关键区别在于 Unified Access Gateway 的扩展方式。之前,您必须将安全服务器与连接服务器配对,这是一种限制,但现在不再是这种情况。因此,您现在可以根据需要为您的环境扩展任意数量的 Unified Access Gateway,单台设备的最大限制约为 2,000 个会话。添加额外的设备只需部署设备即可,因为设备不依赖于其他设备,也不与其他设备通信。它们通过负载均衡器直接与连接服务器通信。

持久桌面还是非持久桌面?

在本节中,我们将讨论不同类型的桌面分配以及虚拟桌面如何交付给最终用户。这是一个重要的设计考虑因素,因为所选择的方法可能会影响存储需求(将在下一节讨论)、托管基础设施,以及用来向最终用户提供虚拟桌面的技术或解决方案。

一个常被问到的问题是,是否应该部署专用(持久)分配或浮动桌面(非持久)分配。桌面可以是独立的虚拟机,按 1:1 的比例专门分配给用户(就像物理桌面部署一样,每个用户实际上拥有自己的桌面),或者用户有一个新的、普通的桌面,该桌面在用户登录时会被提供、构建、个性化并分配给他们。用户访问的虚拟桌面从一组可用桌面中随机选择,这些桌面是最终用户有权使用的。

以下是对这两种选项的更详细描述:

  • 持久桌面:最终用户分配一个桌面,该桌面在会话之间保持所有文档、应用程序和设置。用户第一次连接时,桌面会被静态分配,并将在所有后续会话中继续使用。其他用户无法访问该桌面。

  • 非持久桌面:最终用户每次连接时可能会连接到不同的虚拟桌面。环境应用程序或用户数据在会话之间不会持久保存,而是通过我们在第一章 《引入 VDI 和 VMware Horizon 7》 中讨论的复合桌面模型在用户登录其桌面时提供。用户注销时桌面会被刷新或重置,然后准备好供下一个用户使用。

在大多数情况下,非持久性配置是最佳选择;其主要原因在于,使用这种模型,你不需要为每个用户预先构建所有桌面。你只需在需要时启动虚拟桌面。所有用户都从相同的基本桌面开始,然后在交付之前进行个性化。这有助于提高并发率。例如,你的组织可能有 5,000 人,但每次只有 2,000 人同时登录;因此,你只需要有 2,000 个虚拟桌面可用。否则,你将不得不为可能登录的 5,000 名用户中的每一个构建一个桌面,导致更多的服务器基础设施、更多的存储容量和更多的软件许可证。

对于非持久性桌面来说,以前曾经是个小小的障碍是如何将应用程序交付到虚拟桌面机器上,以及这是否意味着每次用户登录时都必须安装应用程序。现在,应用层分层解决方案(例如 VMware App Volumes 或 Liquidware FlexApp)成为主流技术,应用程序可以按需在构建桌面和用户登录时交付。

我们经常看到有些人对持久性和非持久性桌面的区别以及克隆如何适用感到困惑。为了明确起见,链接克隆、完整克隆和即时克隆不是我们讨论持久性和非持久性桌面时所指的内容。克隆操作 指的是如何构建和配置桌面,而术语 持久性非持久性 指的是如何分配桌面给最终用户。

持久性和非持久性桌面完全关乎用户分配,以及用户是否拥有专用桌面,或者每次登录时从池中分配一个桌面。克隆是 Horizon View 的一个特性,它使用 View Composer 和/或 vCenter 从主或父映像为每个用户创建桌面映像。这意味着,无论是持久性还是非持久性桌面分配,虚拟桌面机器仍然可以是链接克隆、完整克隆或即时克隆。

在接下来的章节中,我们将深入概述 Horizon 7 中可用的克隆技术,从 Horizon View Composer 和链接克隆开始,以及这项技术所提供的优势。

Horizon View Composer 和链接克隆

在本节中,我们将讨论如何使用克隆技术构建、创建和扩展虚拟桌面机器。我们将描述不同的克隆选项,它们的交付内容以及它们对磁盘存储需求的影响。

什么是克隆?

从高层次开始,克隆是现有或父虚拟机的副本。这个父虚拟桌面机器是您要从中创建新虚拟桌面机器的金像。当克隆创建时,它变成一个独立的新虚拟桌面机器,具有自己独特的身份。这个过程不是 Horizon View 独有的。实际上,这是 vSphere 和 vCenter 的功能,而在 Horizon View 的情况下,我们还添加了另一个组件 View Composer 来管理桌面图像。可以部署三种类型的克隆:完整克隆、链接克隆或即时克隆。

虚拟桌面项目无法交付或甚至无法起步的主要原因之一是因为庞大的基础设施和存储需求。存储需求通常被视为巨大的成本负担,这可以归因于人们以与物理桌面环境相同的方式对待 VDI 项目。这意味着每个用户都获得自己专用的虚拟桌面及其带有硬盘空间的虚拟磁盘。然后,这被扩展到整个用户群体,每个用户分配一个带有一些存储空间的虚拟桌面。

让我们举个例子。如果您有 1,000 个用户,并分配 250 GB 的磁盘空间给每个桌面,那么您将需要 1,000 * 250 GB = 250 TB 的磁盘空间仅用于虚拟桌面环境。这对于桌面来说是很多存储空间,可能会导致显著的基础设施成本,这可能意味着在数据中心部署这么多存储成本不划算,与物理桌面部署相比。这将被描述为完整克隆方法。

什么是完整克隆?

正如其名称所示,完整克隆磁盘是父虚拟机或金像模板的精确、全尺寸副本。一旦创建了金像的克隆,虚拟桌面机器就是独特的,有着自己的身份,作为一个完全独立的虚拟桌面运行,并且不依赖于它所创建的金像。

然而,由于它是一个全尺寸的副本,请注意它将占用与金像完全相同的存储空间,这与本章早期关于存储容量要求的讨论相关。使用完整克隆将需要更大量的存储容量,并可能导致更高的基础设施成本。

但是,在您完全放弃使用完整克隆虚拟桌面机器的想法之前,有一些使用情况依赖于这种模型。例如,如果您使用 VMware Mirage 将操作系统作为基础层传送,它今天只能使用完整克隆和专用 Horizon View 虚拟桌面机器。

在 VDI 中,部署存储需要一种新的方法,这时链接克隆和即时克隆技术便发挥作用。简而言之,链接克隆和即时克隆的设计目的是减少所需的磁盘空间,并简化将镜像部署到多个虚拟桌面机器的过程,使其成为一个集中式的、更加简单的过程。

什么是链接克隆?

在讨论完完全克隆后,我们将讨论使用链接克隆部署虚拟桌面机器。

在链接克隆部署中,会创建一个增量磁盘,并由虚拟桌面机器使用它来存储自身操作系统与其父虚拟桌面机器操作系统之间的数据差异。与完全克隆方法不同,链接克隆并不是虚拟磁盘的完整副本。术语链接克隆指的是链接克隆始终依赖其父虚拟桌面机器进行操作,因为它会继续从副本磁盘中读取数据。基本上,副本是父虚拟桌面机器快照的复制。

链接克隆本身如果不加限制,可能会增长到与副本磁盘相同的大小。然而,你可以设置限制,控制其增长的上限,如果它开始变得过大,可以刷新与之链接的虚拟桌面。这实际上是从初始快照重新开始克隆过程。

当一个链接克隆虚拟桌面被部署后,父虚拟机与新创建的虚拟桌面机器之间的差异非常小,因此与完全克隆相比,减少了存储容量的需求。这就是链接克隆比完全克隆更加节省空间的原因。

链接克隆背后的底层技术更像是快照而非克隆,但有一个关键的不同——View Composer。通过 View Composer,你可以将多个活动快照与父虚拟机磁盘链接。这使得你可以仅从一个父虚拟机创建多个虚拟桌面镜像。

最佳实践是部署一个包含链接克隆(或即时克隆)的环境,以减少存储需求。然而,正如我们之前提到的,有一些使用场景可能需要部署完全克隆。

需要注意的一点,仍然与存储相关的是,我们现在讨论的不是容量,而是性能。所有的链接克隆虚拟桌面都将从一个副本中读取数据,因此会在存储该副本的地方产生大量的每秒输入/输出操作次数IOPS)。根据你的桌面池设计,可能会有多个副本,因为通常会有多个数据存储。这反过来取决于用户数量,从而推动解决方案设计。我们将在第三章《设计与部署考虑因素》中详细讨论这一点。

使用 Horizon View,你可以选择副本存储的位置。一个推荐是副本应该存放在快速存储设备中,例如本地或共享的 SSD。

一种替代方案是部署某种形式的存储加速技术来提升 IOPS。Horizon View 也有其集成的解决方案,称为视图存储加速器VSA)或基于内容的读取缓存CBRC)。该功能允许你从底层 ESXi 主机服务器分配最多 2GB 的内存,可用作最常读取的块的缓存。由于我们正在创建和启动桌面操作系统,相同的块是必需的;这些可以从内存中检索,从而加速了过程。

在使用即时克隆时,视图存储加速器默认启用且无法配置。

另一种解决方案是视图作曲器阵列集成VCAI),它允许将构建链接克隆的过程卸载到存储阵列及其本地快照机制,而不是占用主机服务器的 CPU 资源。

还有其他一些第三方解决方案可以解决存储性能瓶颈,例如 ThinScale 的 ThinIO(www.thinscale.com/products/thinio/)解决方案,它提供软件定义的存储加速,有效减少磁盘 I/O。

在下一节中,我们将深入探讨链接克隆过程是如何工作的。

链接克隆是如何工作的?

在开始构建克隆之前,第一步是创建你的主虚拟桌面机器镜像,该镜像不仅应包含操作系统、核心应用程序和设置,还应包含 Horizon View 代理组件。这个虚拟桌面机器将成为你的父虚拟机或金像镜像,所有其他虚拟桌面机器都将从中创建。我们将在第七章《构建与优化虚拟桌面操作系统》中介绍构建过程。链接克隆通过 View composer 和 vCenter 服务器进行构建和管理。

金像镜像或父镜像不能是虚拟机模板。

一旦父虚拟机(VM)构建完成,你就可以开始使用这个镜像构建虚拟桌面和虚拟桌面池。链接克隆创建过程的概览如下图所示:

获取你的黄金镜像(1),并对其进行快照(2)。当你创建桌面池时,这个快照会被选中并成为副本(3),并被设置为只读。每个虚拟桌面都链接到这个副本,因此称之为链接克隆。当你开始创建虚拟桌面时,你创建的是每个用户独特的链接克隆副本。

尽量不要为父虚拟机创建太多快照。我建议只有少数几个快照,否则可能会影响桌面的性能,并使得很难区分每个快照的内容。

创建链接克隆

在镜像构建过程中,一旦副本磁盘被创建,View Composer 会创建几个其他虚拟磁盘,包括链接克隆(操作系统磁盘)本身。这些将在以下章节中描述。

链接克隆磁盘

创建的主要磁盘是链接克隆磁盘本身。这个链接克隆磁盘基本上是一个空的虚拟磁盘容器,随着用户登录并且桌面启动,它被附加到虚拟桌面机器上。

这个磁盘开始时会很小,但随着时间的推移,它会根据虚拟桌面机器操作系统从副本磁盘请求的区块变化而增长。这些区块变化会存储在链接克隆磁盘中,这个磁盘有时也被称为增量磁盘差异磁盘,因为它存储了桌面操作系统从父虚拟机请求的所有增量变化。如前所述,链接克隆磁盘可以增长到与父虚拟机相等的最大大小,但按照最佳实践,你不应该允许这种情况发生。通常,你可以预期链接克隆磁盘只会增加到几百 MB。我们将在本章后面的链接克隆功能和特性部分讨论这个问题。

副本磁盘被设置为只读,并作为主磁盘使用。任何虚拟桌面请求的写入和/或区块变化都会直接从链接克隆磁盘中进行读取/写入。

推荐的最佳实践是为存储和托管副本分配一级存储,例如本地或共享的 SSD 驱动器,因为集群中的所有虚拟桌面机器将持续引用这个单一的只读 VMDK 文件作为它们的基础镜像。将其保持在存储栈的顶部可以提高性能,通过减少整体存储负载。

持久磁盘或用户数据磁盘

View Composer 的持久磁盘功能允许你配置一个单独的磁盘,该磁盘只包含用户数据和用户设置,而不包含操作系统。这使得在你更新或对操作系统磁盘进行更改时(例如重新组合操作),任何用户数据都能得到保留。

值得注意的是,持久磁盘是通过虚拟机名称而非用户名来引用的,因此,如果你想将磁盘附加到不同的虚拟机,请记住这一点。

数据磁盘还用于存储最终用户的配置文件。因此,你需要根据需求合理调整其大小,确保它足够大,能够存储任何类型的用户配置文件数据,例如虚拟桌面评估。这也是为什么进行桌面评估是个好主意的另一个原因,正如我们在第三章《设计与部署注意事项》中会讲到的那样,帮助你了解用户桌面配置文件和用户数据需求的情况。

一次性磁盘

使用一次性磁盘选项时,Horizon View 创建一个实际上是临时磁盘的磁盘,每次用户关闭其虚拟桌面机器时都会被删除。

如果你考虑一下 Windows 桌面操作系统的工作方式以及它创建的文件,你会发现有几种文件是临时使用的。例如,临时 Internet 文件或 Windows 页面文件就是其中的两个例子。既然这些只是临时文件,为什么要保留它们呢?在 Horizon View 中,这些类型的文件会被重定向到一次性磁盘,并在虚拟机关闭时删除。

Horizon View 提供了为每个虚拟桌面配置一次性磁盘的选项。此一次性磁盘用于存储临时文件,这些文件在虚拟桌面关闭时会被删除。这些文件不希望存储在主操作系统磁盘上,因为它们会占用不必要的磁盘空间。例如,一次性磁盘上的文件包括页面文件、Windows 系统临时文件和 VMware 日志文件等。

值得指出的是,我们讨论的是临时系统文件,而不是用户文件。最终用户的临时文件仍然存储在用户数据磁盘上,以便能够保留。许多应用程序使用 Windows 临时文件夹来存储安装 CAB 文件,安装后可以引用这些文件。话虽如此,你可能希望删除临时用户数据,以减小整体桌面镜像大小,在这种情况下,你可以确保用户的临时文件被定向到一次性磁盘。

内部磁盘

最后,我们有内部磁盘。内部磁盘用于存储重要的配置信息,例如计算机帐户密码,如果刷新了链接克隆,它将用于将虚拟桌面机器重新加入域。它还用于存储SysprepQuickprep配置详细信息。我们将在第七章,构建和优化虚拟桌面操作系统中详细讲解 Quickprep。

在磁盘空间方面,内部磁盘相对较小,平均大约为 20 MB。默认情况下,用户无法在其 Windows 资源管理器中看到此磁盘,因为它包含重要的配置信息,您不希望他们删除它。

下图展示了不同磁盘类型的创建概述:

在下一节中,我们将深入探讨链接克隆过程的工作原理。

理解链接克隆过程是如何工作的

View Composer 和 View Manager 执行了几个复杂的步骤,当用户请求虚拟桌面机器时,这些步骤会启动。那么,构建链接克隆桌面的过程是怎样的,幕后发生了什么呢?当用户登录 Horizon View 并请求虚拟桌面机器时,View Manager 将使用 vCenter 和 View Composer 创建一个虚拟桌面机器,如果没有现有的虚拟桌面机器可供最终用户使用。

该过程在以下章节中进行描述。

创建和配置新的虚拟桌面

该过程的第一步是创建和配置虚拟桌面机器,如下所述:

  1. 在将虚拟桌面机器置于配置模式之前,Active Directory 应用程序模式ADAM)数据库中会创建一个虚拟桌面机器条目。

  2. 链接克隆虚拟桌面机器由 View Composer 创建。

  3. 在 Active Directory 中创建一个机器帐户,并生成随机密码。

  4. View Composer 检查是否存在副本磁盘,如果没有,则会创建一个。

  5. 链接克隆是通过 View Composer 的 vCenter Server API 调用创建的。

  6. 创建一个内部磁盘以存储配置信息和机器帐户密码。

虚拟桌面机器已经创建,现在可以进入下一步:自定义。

自定义桌面

现在,新建的链接克隆虚拟桌面机器已经构建完成,下一步是对其进行自定义。

要自定义虚拟桌面机器,请按照以下步骤操作:

  1. 虚拟桌面机器被切换到自定义模式。

  2. 虚拟桌面机器通过 vCenter Server 使用customizeVM_Task命令进行自定义,并使用您在 View Manager 控制台中输入的信息加入域。

  3. 启动链接克隆虚拟桌面。

  4. 链接克隆虚拟桌面机上的 View Composer 代理首次启动并将该机器加入域,使用 NetJoinDomain 命令和在内部磁盘上创建的机器账户密码。

  5. 链接克隆虚拟桌面机现在已完成 Sysprep 或 Quickprep 操作。完成后,View Composer 会通知 View Agent 自定义已完成,View Agent 再通知 View Manager 自定义过程已结束。

  6. 链接克隆虚拟桌面机已关闭,并且已创建快照。如果使用 Quickprep,则在自定义后无需重新启动虚拟桌面机。

  7. 链接克隆虚拟桌面机被标记为已配置,现在可以使用。

当最终用户连接并启动链接克隆虚拟桌面机时,安装在该虚拟桌面机上的 View Composer 代理能够跟踪机器账户密码的变化。如果发生更改,新的更新密码将存储在链接克隆的内部磁盘上。根据密码策略,机器账户密码通常会发生变化,因此如果 View Composer 代理检测到密码更改,它将更新链接克隆桌面创建时所创建的内部磁盘上的机器账户密码。这是刷新链接克隆磁盘时的一个关键功能,因为链接克隆虚拟桌面机会恢复到自定义后拍摄的快照。这意味着 View Composer 代理可以将机器账户密码重置为最新密码。

链接克隆过程如下图所示:

在接下来的部分中,我们将讨论使用链接克隆的一些附加功能和特性。

链接克隆的特性和功能

使用 View Composer,您可以对链接克隆磁盘执行几个其他管理功能。此部分概述了这些功能,并用于提供虚拟桌面机器的持续管理。

重新组合链接克隆

重新组合链接克隆虚拟桌面机或桌面池允许您对操作系统磁盘进行更新,例如使用最新的补丁或软件更新更新镜像。您只能在相同版本的操作系统上执行更新,因此无法使用重新组合功能从一个操作系统迁移到另一个操作系统,例如从 Windows 7 迁移到 Windows 10。

正如我们在View Composer 构建了什么?部分中提到的,我们为用户数据等项目准备了独立的磁盘。在重新组合操作期间,这些磁盘不会受到影响,因此上面的所有用户特定数据都会被保留。

当您启动重新合成操作时,View Composer 实际上是重新开始链接克隆的构建过程;因此,新的操作系统磁盘会被创建,随后会进行自定义,并拍摄类似前面章节所展示的快照。

在重新合成操作过程中,网络接口的 Mac 地址和 Windows SID 不会被保留。由于此更改,某些管理工具和安全类型的解决方案可能无法正常工作。然而,UUID 将保持不变。

在执行重新合成操作之前,您需要创建新的镜像并拍摄初始快照。重新合成过程如下所述:

  1. View Manager 将链接克隆切换到维护模式。

  2. View Manager 调用 View composer 的 resync API,针对正在重新合成的链接克隆,指示 View Composer 使用新的基础镜像和快照。

  3. 如果基础镜像和快照的副本不存在,则在链接克隆使用的目标数据存储中,View Composer 将创建该副本,前提是您未配置 View 使用单独的数据存储来存储副本。

  4. 对于链接克隆,当前的操作系统磁盘会被 View Composer 删除。然后,它会创建一个新的操作系统磁盘,并将其与新创建的副本关联。

  5. 重新合成周期的其余部分跟随了配置和自定义周期的自定义阶段。

以下图示展示了重新合成过程的图形表示。在过程开始之前,首先需要做的是更新您的黄金镜像(1),包括您想要部署为虚拟桌面的补丁更新或新应用程序:

如前所述,快照会被拍摄(2),以创建新的副本,副本 V2(3)。现有的操作系统磁盘会被销毁,但在重新合成过程中,用户数据磁盘(4)会被保留。

刷新链接克隆

通过执行链接克隆虚拟桌面的刷新操作,实际上您是在将其恢复到初始状态,即在完成自定义阶段后拍摄的原始快照。这一过程仅适用于操作系统磁盘,其他磁盘不会受到影响。

刷新操作的一个使用案例是,在注销后两小时重新合成一个非持久化桌面,将其恢复到原始状态,并使其可供下一个用户使用。

刷新过程执行以下任务:

  1. 链接克隆虚拟桌面被切换到维护模式。

  2. View Manager 将链接克隆虚拟桌面还原为自定义完成后所拍摄的快照:- vdm-initial-checkpoint

  3. 链接克隆虚拟桌面启动时,View Composer 代理会检测机器帐户密码是否需要更新。如果不需要更新,并且内部磁盘上的当前密码比注册表中当前存储的密码更新,那么 View Composer 代理将使用内部磁盘上的密码来更新机器帐户密码。

执行刷新操作的一个原因是当链接克隆的操作系统磁盘开始膨胀时。正如我们之前讨论过的,操作系统链接克隆磁盘可能会增长到与其父映像相同的大小。这意味着它占用了比必要的更多磁盘空间,这在某种程度上违背了链接克隆的目的。刷新操作有效地将链接克隆重置为与其父映像之间的小差异。

以下图示展示了刷新操作的表现:

图示左侧的链接克隆磁盘开始膨胀(2)。首先刷新操作将虚拟桌面机置于维护模式(1)。然后,虚拟桌面机被还原为原始快照(3)。新的链接克隆桌面现在已经重置为与首次创建时相同的大小(4)。

使用 View Composer 的重新平衡操作

View Composer 中的重新平衡操作用于将链接克隆虚拟桌面机均匀地分布到环境中的多个数据存储区。如果其中一个数据存储区即将满而其他数据存储区还有充足的空闲空间,你可以执行此任务。它还可能有助于提高该数据存储区的性能。例如,如果你在一个数据存储区有 10 台虚拟桌面机,而在另一个数据存储区只有 2 台,那么执行重新平衡操作可能会使它们更均衡,使每个数据存储区都拥有 6 台虚拟桌面机。

你必须使用 View Administrator 控制台来启动 View Composer 中的重新平衡操作。如果你只是尝试对虚拟桌面机执行存储 vMotion,那么 View Composer 将无法跟踪它们。

另一方面,如果你在一个数据存储区有六台虚拟桌面机,而在另一个数据存储区有七台,那么启动重新平衡操作很可能不会产生任何效果,虚拟桌面机也不会被移动,因为这样做没有任何好处。只有当目标数据存储区比源数据存储区有显著更多的空闲容量时,VDI 桌面才会被移动到另一个数据存储区:

  1. 链接克隆被切换到维护模式。

  2. 根据可用数据存储区的空闲空间,识别需要移动的虚拟机。

  3. 操作系统磁盘和持久磁盘与虚拟桌面机断开连接。

  4. 分离的操作系统磁盘和持久磁盘被移动到目标数据存储区。

  5. 虚拟桌面机被移动到目标数据存储区。

  6. 操作系统磁盘和持久磁盘重新连接到链接克隆虚拟桌面机。

  7. View Composer 重新同步链接克隆虚拟桌面机。

  8. View Composer 会在数据存储中检查副本磁盘,如果不存在副本磁盘,会根据本章前面所述的配置步骤创建一个副本磁盘。

  9. 根据重新配置操作,链接克隆的操作系统磁盘将被删除,然后创建一个新的操作系统磁盘并进行自定义。

以下图示展示了重新平衡操作。操作开始时,数据存储 A 中有两台虚拟桌面机,数据存储 B 中有四台虚拟桌面机。在这个例子中,重新平衡操作使两个数据存储的虚拟桌面机数量趋于均衡,每个数据存储中有四台虚拟桌面机:

在下一节中,我们将探讨创建虚拟桌面机的即时克隆功能。

即时克隆

即时克隆功能是内置于 vSphere 平台的功能,而非特定的 Horizon 功能,并且从 vSphere 6.0 U1 版本开始提供支持,当时它成为 Horizon 的支持功能之一。

它使用 VMware VM Fork 技术来快速配置虚拟桌面机。即时克隆是从已经开机并运行的虚拟桌面机中创建的,称为父虚拟桌面机,在创建即时克隆之前,父虚拟桌面机会被暂挂。这使得即时克隆比链接克隆和 View Composer 更快速地进行配置。

即时克隆与父虚拟桌面机共享内存和磁盘进行读取操作,并且会立即创建,且处于已开机状态,这与基于 View Composer 的链接克隆不同,后者在创建过程中必须启动。此外,除了与父虚拟桌面机共享内存和磁盘外,即时克隆还拥有其自己的独立内存和增量磁盘文件。以下图示展示了即时克隆的架构:

当最终用户注销即时克隆虚拟桌面机时,它将被销毁,当用户再次登录时,将创建一个新的即时克隆。如果需要保留任何数据,用户可以使用 App Volumes 的可写卷功能来提供该功能,并使用 UEM 管理他们的个性化设置。

要利用即时克隆,虚拟桌面机需要运行虚拟机硬件版本 11 或更高版本。

即时克隆构建过程

之前我们讨论过链接克隆时,分析了构建过程及构建内容,现在我们从即时克隆的角度再看一遍。

一如既往,我们从主镜像开始,这是所有其他桌面构建的虚拟桌面。首先,会对主虚拟桌面进行快照。接下来,基于前一步拍摄的虚拟桌面快照,创建一个内部模板,该模板是主虚拟桌面的链接克隆。

接下来是复制的虚拟桌面,它是内部模板虚拟桌面的瘦配置全克隆。视图存储加速器使用该虚拟桌面的 CBRC 摘要。在复制虚拟桌面之后,通过使用复制虚拟桌面的链接克隆来创建运行中的父虚拟桌面,该链接克隆又是基于复制虚拟桌面快照创建的。

最终,瞬时克隆桌面被创建并准备好供最终用户使用。以下图示描述了这一过程:

瞬时克隆的优势

与链接克隆相比,使用瞬时克隆有几个好处:

  • 瞬时克隆几秒钟内即可配置完成,而链接克隆通常需要更长的时间(通常是几分钟)。

  • 不再出现启动风暴,因为父桌面已经开机,因此所有瞬时克隆都会在已开机的状态下创建。

  • 不需要执行刷新或重组操作,因为桌面的生命周期较短。

  • 更新操作系统只需要更新父虚拟机,而无需执行重组操作,最终用户在下次登录时会自动收到更新后的虚拟桌面。

  • 它们减轻了 vCenter 服务器的负担。

  • 不需要 SE 备用磁盘或 CBRC。

在下一部分,我们将探讨这些新建的虚拟桌面如何进行定制和个性化设置。

视图个性化管理

让我们先来了解一下视图个性化管理的背景和历史。视图个性化管理最初是一个名为虚拟配置文件的技术产品,于 2010 年由 VMware 从 RTO Software 公司收购。

随后,视图 5.0推出了视图个性化管理,它允许您配置用户配置文件,以便它们与位于数据中心文件服务器上的远程配置文件库动态同步。其目的是在虚拟化桌面环境中集中管理用户配置文件,作为我们在第一章《引入 VDI 和 VMware Horizon 7》中讨论的复合桌面模型的一部分。

为什么我们需要在 VDI 中以不同的方式管理用户配置文件?

在 VDI 解决方案中,一个主要的好处是虚拟桌面按需构建或从预构建的非持久桌面池中交付给用户,之后再交回给用户。典型的部署模型是非持久模型,基本上意味着用户无法拥有自己的桌面,也没有个人文件、数据或设置存储在桌面上。这些设置形成了他们的用户个人资料。

当用户登录时,他们可能会从可用的虚拟桌面池中接收任何桌面。这意味着交付的虚拟桌面将不会针对该用户进行个性化设置。它只是操作系统和应用程序的标准裸机版本。

这就是 View Persona Management 发挥作用的地方,它将用户的个人资料传递到他们被分配的非持久虚拟桌面机器,从而有效地使其成为用户自己的桌面。

当我们谈论按需构建桌面时,我们再次提到复合桌面模型以及桌面如何由几个不同的组件组成。提醒一下,桌面可以分为三个组件:操作系统、应用程序以及用户的个性化设置或个人资料,本质上是构成桌面独属于你的部分。当用户登录时,这些部分会汇聚在一起,提供最终用户的桌面体验。通过 View Persona Management,我们讨论的是用户的个人资料。

本节将向您介绍 View Persona Management 及其在管理用户个人资料方面的优势。有关 View Persona Management 的技术细节和配置,您可以参考 第十七章在 Horizon 中管理最终用户环境

View Persona Management 的优势

从高层次来看,View Persona Management 提供以下功能:

  • 用户个性化设置的快速加载,实时检索用户个人资料数据

  • 几乎不需要基础设施——只需要文件共享或使用现有的文件夹重定向结构

  • 配置一致性保持了会话间的个性化设置

  • 高效架构,无需依赖 Windows 漂移用户配置文件

  • 支持多平台,兼容 Windows XP、Windows Vista、Windows 7、Windows 8.x 和 Windows 10

除了列出的功能外,View Persona Management 还通过实现无状态虚拟桌面环境,帮助减少虚拟桌面的总拥有成本(TCO)。在一些部署中,用户被分配到专用池中,仅用于保留其个人资料设置,这增加了管理的成本和复杂性。在成本方面,由于个人资料管理是 Horizon View 的一部分,除非需要额外的功能,否则无需购买额外的第三方产品。

关于管理方面,没有额外的组件需要设置或安装,因为一切都由 Active Directory 组策略驱动。在可扩展性方面,鉴于没有诸如数据库之类的基础设施开销,因此可扩展性不是问题,它会随着您的活动目录一起扩展。

VMware UEM

VMware UEM产品是 Horizon 产品组合中最新的版本之一,VMware 在 2015 年 2 月收购荷兰公司 Immidio 时将其加入了该产品线。Immidio 是一家软件公司,开发的产品旨在帮助他们的顾问进行现场工作,核心产品叫做Flex+

UEM 在标准用户配置管理解决方案之上增加了额外的功能,提供一个集中管理控制台,以便提供最终用户虚拟桌面计算机的个性化设置,并能够动态配置策略。它适用于多个不同环境,例如虚拟桌面计算机、物理 PC 以及基于云的 Windows 桌面环境或 DaaS。它的核心是管理 Windows 配置文件,无论操作系统在何种环境或方式下运行。

要使用 UEM 管理虚拟桌面计算机,您需要将 FlexEngine 组件安装到虚拟桌面计算机上。确保将其包含在您的母版映像或父虚拟桌面计算机中。

UEM 有五个主要的应用场景:

  • 应用程序配置管理:允许您配置应用程序的初始设置,而不是部署应用程序的默认设置。您可以使用 VMware UEM 应用程序配置文件捕获应用程序的预定义设置,将其配置为一次性默认值、完全强制执行(每次应用程序启动时都使用用户的个性化设置)或部分强制执行(应用程序启动时按配置进行,但允许用户进行有限的个性化设置)。

  • 用户环境设置:允许您集中管理用户环境设置,如下所示:

    • 应用程序阻止

    • 应用程序快捷方式和文件类型关联

    • 驱动器和打印机映射

    • 环境变量

    • 文件、文件夹和注册表设置

    • 文件夹重定向

  • 个性化:将特定于用户的桌面和应用程序设置从底层操作系统中抽象出来,并使这些设置可以跨多个设备、Windows 版本和应用程序使用。它还支持操作系统迁移,例如从 Windows 7 或 Windows 10。

  • 应用程序迁移:允许最终用户有效地拥有漫游应用程序和个性化设置,从而使他们能够在不同操作系统版本之间移动,例如从 Windows 7 迁移到 Windows 10。

  • 动态配置:使用条件集可以让您根据用户、位置和设备等变量组合条件,以动态地提供内容和外观的交付,例如,根据最终用户的位置提供访问网络打印机,或创建基于用户身份的驱动器映射。

SmartPolicies 是 Horizon 的一个功能,利用 UEM 提供特定于虚拟桌面机的政策集。

要使用 SmartPolicies,建议您运行 View Connection Server 版本 7.2 或更高版本,且在使用 RDSH 发布的应用程序时必须使用 Smart Policies。您还需要 UEM 9.0 或更高版本,但推荐使用 UEM 9.2 或更高版本。

使用 Smart Policies,管理员可以对最终用户的虚拟桌面机进行更精细的控制。Horizon 7 功能可以根据最终用户以及其他变量,如客户端设备类型、IP 地址和桌面池名称,动态启用、禁用或控制。通过 SmartPolicies,您可以配置以下内容:

  • USB 重定向

  • 打印

  • 剪贴板行为

  • 客户端驱动器重定向

  • HTML 访问文件传输

  • 带宽配置文件

如果您使用的是 UEM 9.1 或更高版本,并且使用的是 Horizon Agent 7.0.1 或更高版本,当用户使用 Blast Extreme 显示协议或 PCoIP 显示协议时,此设置将生效。

使用 UEM 还是 Persona Management?

问题是,您应该使用哪种解决方案?UEM 作为 Horizon 企业版的一部分或独立产品提供,这意味着会产生更高的费用或额外费用,除非您本来就计划购买企业版。

UEM 提供了更广泛的配置变量和功能,并且具有一个中央管理控制台,使得管理和部署更加容易。然而,您可能已经有了更全面的 UEM 解决方案。如果您使用的是 Horizon 的较低版本,那么 Persona Management 可能已经能够满足您的需求,如果不能,或许可以考虑使用第三方产品,如 Liquidware ProfileUnity。

从虚拟桌面机进行打印

在部署 VDI 解决方案时,常见的一个问题是“如何管理打印?”由于您的虚拟桌面实际上是在数据中心的服务器上运行,是否意味着当您按下打印按钮时,打印任务会在那里输出?打印机驱动程序怎么办?通常,您的桌面上已安装与您最近的打印机对应的驱动程序,或者它可能是一个本地连接的打印机。这是否意味着您需要在虚拟桌面机上安装所有可能的打印机驱动程序?幸运的是,这些问题的答案是否定的,在本节中,我们将简要介绍 VMware Horizon View 如何管理打印。

Horizon View 包含了一款 OEM 虚拟打印解决方案,ThinPrint,其 OEM 为名为 Cortado 的公司。ThinPrint 允许你的终端用户将打印作业发送到网络打印机或通过 USB 重定向将连接在用户终端设备上的本地打印机发送到虚拟桌面机器。我们将在下一节中介绍 USB 设备管理。

为了回答有关必须安装打印机驱动程序的问题,ThinPrint 使用一个单一的虚拟打印驱动程序,替代所有其他打印驱动程序。若有需要,你仍然可以安装特定的打印驱动程序,用于打印机具有额外功能或特性的情况。然而,虚拟打印驱动程序支持大多数多功能打印机,支持如双面打印等功能。

另一个问题是关于打印作业的打印位置,ThinPrint 也解决了这个问题,它提供了基于位置的打印功能,允许你映射到离你的终端设备最近的打印机。当然,也有第三方解决方案可用,比如 UniPrint。

管理 USB 设备

没有一份列出所有在 Horizon View 中可用的设备的清单,因为那将是一个非常长的清单,且鉴于市场上 USB 设备的数量,测试所有设备是不现实的。

大多数 USB 设备应该可以在 Horizon View 环境中正常工作,因为它所做的就是将从终端设备上运行的 View 客户端的 USB 流量重定向到虚拟桌面机器上运行的 View 代理程序。没有完整的经过验证的设备列表,因为这将是一个非常长的列表,且无法测试市场上所有的设备。如果有关于设备功能的问题,你应该联系该 USB 设备的制造商。

可能有些设备因其自身的特性和行为无法工作;例如,一些安全设备检查它们所连接的机器或设备的物理属性。我们曾将 USB 网络摄像头归类为不受支持的设备。然而,随着 实时音视频RTAV)的推出,这些设备现在已得到支持。在下一节中,我们将讨论如何通过使用 USB 过滤功能来选择哪些 USB 设备被重定向。

过滤支持的 USB 设备

在某些情况下,你可能不希望允许用户有能力插入外部 USB 设备并将其重定向到虚拟桌面机器。问题是,你是否允许用户将 USB 设备插入到他们的物理桌面?

Horizon View 具有一种功能,可以防止 USB 设备被重定向到用户的 VDI 桌面。您可以通过在终端设备、虚拟桌面或使用 Active Directory 组策略来应用此功能。例如,您的组织可能希望禁止使用 USB 闪存盘,因为这将使用户能够从虚拟桌面计算机中复制数据(部署 VDI 的原因之一是将数据集中存储,避免数据离开数据中心)。

您可以创建特定的过滤器,选择允许特定设备(按制造商或设备类型),并阻止所有其他设备。因此,如果您有公司标准类型的设备,它将被允许。您甚至可以进一步选择特定型号的设备,同时阻止任何其他设备,即使它们来自同一供应商。

管理多功能 USB 设备

在您的环境中,您可能会有具有多种不同功能的 USB 设备,同时仍使用单一的 USB 连接。例如,一款多媒体键盘可能配备触控板鼠标、扬声器、指纹识别器以及键盘本身。

Horizon View 支持一种被称为 设备拆分 的功能。这使得您可以仅重定向设备的某些组件,而不是整个设备。以我们的多媒体示例为例,您可能希望将鼠标保留为终端设备上的本地设备,同时将指纹识别器重定向,以便允许用户安全登录虚拟桌面。

ThinApp 应用虚拟化

ThinApp 是一种无代理的应用虚拟化或应用打包解决方案,它将应用程序与底层操作系统解耦。它旨在消除应用程序冲突、简化应用程序交付并提高管理效率。ThinApp 许可证包含在 Horizon View 许可证中,可以在物理和虚拟桌面上使用,从而提供一种在整个桌面环境中交付应用程序的机制。

应用虚拟化是如何工作的?

ThinApp 将应用程序封装成一个包含单个 .exe.msi 文件的包,并将它们与以下内容解耦:

  • 主机操作系统

  • 系统上已安装的任何传统应用程序

  • 系统上运行的所有其他虚拟应用程序

然后,应用程序将在其隔离的虚拟环境中运行,对底层操作系统、虚拟文件系统或虚拟注册表的影响最小或为零。

当您创建 ThinApp 包时,实际上是在捕获应用程序运行所需的所有文件、注册表设置和文件系统更改。它还会在过程中捕获其自身的代理,因此终端设备无需安装任何东西。

一旦打包,应用程序可以被部署(无论是流式传输还是安装)到虚拟桌面机或甚至物理桌面。ThinApp 包运行的唯一要求是底层的 Windows 操作系统,无论是物理的还是虚拟的。运行时,重要的是要注意,该包不会对其运行的机器的操作系统进行任何更改。

不需要额外的后端基础设施组件,因为所有 ThinApp 打包的应用程序都存储在文件服务器上的文件共享中。这意味着您可以集中管理并轻松更新您的包,以便所有用户在下次启动应用程序时都会收到更新。下图显示了一个高层次的 ThinApp 架构:

总结来说,ThinApp 提供以下功能:

  • 允许将 Windows 应用程序打包、分发并作为单一的 .exe.msi 文件在物理或虚拟桌面机器上执行

  • 构建过程链接,一个 Virtual OSVOS)与压缩嵌入文件系统和注册表,打包为一个文件

  • 不需要在终端用户机器上预先安装任何软件。

  • 在底层操作系统上提供零占用

  • 不需要传统的安装程序或更改本地操作系统的注册表或文件系统

  • 除了用于存储 ThinApp 包的文件共享外,不需要任何后端服务器基础设施

要了解更多关于 ThinApp 的信息以及如何在您的环境中使用它,请阅读 VMware ThinApp 4.7 Essentials,作者 Peter Bjork,Packt Publishing。

虚拟桌面的防病毒软件

在传统的桌面模型中,安装了防病毒代理,防病毒代理在每个桌面上运行,负责执行防病毒检测扫描,同时维护和更新包含最新恶意软件信息的定义文件。

这种模型在物理桌面环境中运行良好,但在虚拟桌面环境中运行时会遇到一些挑战。当启动检测扫描时,每个虚拟桌面的资源使用量会显著增加。这将导致终端用户的性能下降,桌面主机服务器将变得资源紧张。在物理桌面上没问题,但在 VDI 中,承载桌面的服务器将变得资源紧张。在重新组合桌面或按需构建时,桌面每次都必须下载定义文件,占用网络带宽和存储容量。最后需要考虑的一点是,典型桌面 AV 软件在每个虚拟桌面上安装后会占用多少内存。您需要分配更多内存来运行代理和扫描过程。

假设你有一台 vSphere 主机服务器,运行着大约 100 个虚拟桌面;那么,如果在周四中午 12:00,它们同时启动病毒扫描会怎样?该主机很可能会迅速达到 100% 的使用率,CPU 和存储 I/O 都会达到瓶颈,结果就是桌面无法响应。这样一来,你不仅影响到一个用户的桌面,而是影响了 100 个用户的桌面。你可以安排扫描任务,以避免它们同时进行,但理想情况下,你需要寻找专门为虚拟桌面基础架构设计的替代方法。

其次,如果我们要重新生成桌面或按需构建桌面,我们必须每次都下载定义文件,这不仅占用了网络带宽,还浪费了不必要的存储容量。

因此,所需的是一种新的防病毒保护方法,专为虚拟桌面基础架构设计。随着 VMware vSphere 5.5 的发布,VMware 推出了一个名为 vShield Endpoint 的产品,后来被 VMware NSX 取代,它解决了大规模虚拟桌面实施中防病毒扫描的固有问题。通过将所有防病毒操作卸载到一个集中设备上,扫描过程在虚拟化管理程序层面完成,而不是在每个虚拟桌面机器上执行。

尽管 VMware 提供了帮助实现扫描过程的引擎,但它们也与一些领先的防病毒软件供应商合作,传递有关如何识别和防护病毒、恶意软件及其他威胁的知识。他们与以下合作伙伴共同工作:

  • Bitdefender

  • Kaspersky

  • McAfee

  • Sourcefire

  • Symantec

  • Trend Micro

协议 – 提供虚拟桌面体验

虚拟桌面解决方案的一个最重要的元素是如何将运行在数据中心的虚拟桌面机的屏幕内容传输到终端用户的设备,并使用户能够通过键盘和鼠标进行互动。为此,VMware Horizon View 提供了使用多种显示或传输协议的选项:PCoIP、Blast Extreme 或 RDP。在本节中,我们将介绍每种协议,如何在提供终端用户体验时发挥作用,以及一些更高级的技术细节。

PCoIP

PCoIP 是由 Teradici (www.teradici.com/) 设计和开发的高性能显示协议。它特别针对通过局域网或广域网提供虚拟桌面,并为终端用户提供功能丰富的桌面体验。

使用 PCoIP 技术,整个屏幕内容会在数据中心进行压缩、加密和编码,然后仅将像素通过标准 IP 网络传输到支持 PCoIP 的终端设备(如零客户端),这些设备使用基于硬件的 Teradici Terra 1 或 Terra 2 芯片组,或者运行基于软件的 Horizon Client 的 Windows、macOS 或平板设备。需要记住的关键点是,数据永远不会离开数据中心。

PCoIP 支持高分辨率、全帧率、3D 图形、高清媒体、多显示器(最多四个,具体取决于终端设备)和高清音频。PCoIP 还支持 USB 外设重定向。

与一些仅用于交付应用程序的传统显示协议不同,PCoIP 是从零开始设计并构建的,专门用于提供完整的桌面体验,利用集成了图形加速技术的基于 Teradici 的零客户端,这些技术被集成在设备的芯片中,或者基于软件的客户端。无论最终用户身处何地(无论是在局域网中还是跨越广域网),PCoIP 都能确保最佳的用户体验。它能够根据网络状况和用户策略动态适应。

PCoIP 主机渲染

那么,让我们首先来看看不同渲染模型的工作原理。对于桌面 PC,应用程序、操作系统和图形驱动程序在本地协同工作,以提供最佳的 PC 性能。这就是本地客户端渲染。

如果我们转向客户端渲染模型,那么就引入了一个网络连接各个组件。图像现在会通过网络发送到终端设备,在终端设备上使用其本地资源进行处理。使用这种模型会导致应用程序性能下降,因为它在从主机服务器到客户端的过程中需要通过网络传输,同时你仍然需要一个强大的基于 Windows 的终端设备。

那么,主机渲染如何呢?在主机渲染场景中,我们之前描述的桌面 PC 环境几乎不变。然而,PC 现在作为虚拟桌面机器运行。这意味着应用程序会像在物理桌面 PC 上一样正常工作,渲染过程在主机端完成。PCoIP 通过仅加密虚拟桌面机上运行的 View 代理的像素,然后将它们发送到运行 View 客户端的终端设备,或发送到运行 Teradici 硬件的零客户端设备,解码过程将在那里进行。

使用这种模型,您可以轻松部署低功耗、非 Windows 设备,如零客户端,因为应用程序与其运行的终端设备没有依赖关系。

PCoIP 的多编解码器支持

如果你查看图像的构建过程以及内容的呈现方式,图像的一些组件可能需要使用不同的编解码器来显示图像,这取决于图像的类型。例如,显示文本时会使用不同的编解码器,而显示视频时则会使用另一个编解码器。

PCoIP 可以分析这些不同的媒体图像组件,并在压缩、加密并将像素发送到终端设备进行解码之前,为每个像素应用适当的编解码器。通过这种方式,PCoIP 能够更高效地传输像素,这最终意味着更少的带宽需求和更好的性能。这也意味着你可以控制传输的图像内容质量。我们将在下一部分讨论这一点。

控制图像质量

PCoIP 提供的图像质量可以通过 AD 组策略或智能策略进行控制,以根据使用场景提供适当的图像质量。图像是从所谓的感知无损图像逐步构建到无损图像,后者提供高保真度、像素完美的图像。例如,如果你仅仅是在运行 Microsoft Word,是否真的需要构建像素完美的图像呢?

需要记住的重要一点是,图像质量将会影响传输所需的带宽。我们将在第十章《微调终端用户体验》中更详细地讨论这些控制方法。

动态网络功能

为了管理带宽使用,PCoIP 使用自适应编码器,自动调整网络拥塞时的图像质量。网络拥塞的程度可以通过策略进行定义,允许你根据使用场景、位置等配置这一点。因此,位于总部主要网络的用户与位于卫星/分支站点的用户,可能会有不同的限制。当网络不再拥塞时,将恢复最大图像质量。PCoIP 不会通过网络传输任何用户数据,它只传输像素,因此使用实时用户数据报协议(UDP),而不是使用 TCP 协议(用于网络语音协议(VoIP)),以确保响应迅速和交互流畅的终端用户体验。这将减少总体带宽需求,并根据特定时刻可用的网络带宽提供最佳的交互式用户体验。

UDP 不使用错误检查或校正,因此消除了处理检查和校正的任何开销。由于没有像 TCP 协议那样的重传延迟,这使得它非常适合用于媒体流传输。对于终端用户体验而言,这些延迟表现为画面卡顿,通常发生在观看视频内容时。

使用 Teradici PCoIP 硬件加速器进行 PCoIP 卸载

除了前面讨论的软件解决方案,Teradici 还提供了一张名为 Teradici PCoIP 硬件加速卡 的服务器卸载卡。这张 PCI 卡被安装在托管虚拟桌面机器的服务器上。

关于这张卡片的第一件事要说明的是,它并不是一张 图形处理单元GPU)卡。我经常听到一些关于这个问题的混淆,用户们通常认为通过添加加速卡,可以获得 OpenGL 和 DirectX 功能,但事实并非如此。你可能会改善整体体验和性能,但并不会增加额外的 GPU 功能。

这张卡片的目标纯粹是将主机服务器在处理图像编码操作时的负载从 CPU 中分离出来。将图像编码任务卸载到专门的硬件解决方案上可以减少 CPU 的使用,从而提供一致的终端用户体验,使得应用程序能够更加顺畅地运行,因为它们得到了所需的资源。如果将其与类似于 TCP 卸载引擎(TCP Offload Engine)或用于 iSCSI 的 IP 存储世界中的 TOE 卡进行比较,使用基于硬件的卡片要比使用软件发起程序好得多。

释放 CPU 周期以及减少服务器 CPU 的整体负载可能会导致虚拟桌面的更好整合比率,也就是说,每台主机服务器上的虚拟桌面数量会更多。通常,你会看到大约 1.2 倍的增长。

加速卡也可以与 GPU 一起使用。在这种情况下,该卡有效地编码由 GPU 生成的额外像素,确保终端用户能够享受到本地 GPU 提供的所有好处。

Teradici 物理 PC 主机卡

Teradici 还为物理工作站提供了利用 PCoIP 协议的解决方案:PCoIP 远程工作站卡。这张卡实际上并不是用于虚拟桌面会话,而是允许你将 Teradici 主机卡添加到物理工作站上,连接到工作站,并将远程图形、音频和 USB 从工作站传送到启用 PCoIP 的终端设备,比如零客户端。可以把它当作是将你的桌面 PC 搬到数据中心,然后用一根非常长的视频、鼠标和键盘线缆连接过去。这种使用场景通常应用于高性能的机架式工作站或 PC。

那么,这与 Horizon View 有什么关系呢?简单来说,客户端设备与物理桌面的连接是通过 Horizon View 管理的,连接服务器以与连接虚拟桌面机器的方式相同的方式来代理会话。像素、键盘和鼠标操作通过 PCoIP 协议通过网络传输。

PCoIP 连接过程的工作原理

以下描述了当终端用户登录并请求虚拟桌面机器时,PCoIP 连接过程是如何工作的:

  1. Horizon 客户端通过 HTTPS 将最终用户的凭证发送到您在安全服务器或统一访问网关上配置的 PCoIP 外部 URL 进行身份验证。为此,它使用 XML-API。

  2. HTTPS 身份验证数据从统一访问网关或安全服务器传递到连接服务器。安全服务器使用 IPsec 保护的 AJP13 转发流量,从安全服务器转发到它配对的连接服务器。用户有权访问的桌面池和应用程序从连接服务器读取,并作为可用资源显示在 Horizon 客户端中。

  3. 最终用户启动虚拟桌面或发布的应用程序会话。此连接在 TCP 端口4172(PCoIP 端口)上启动,连接到统一访问网关或安全服务器。该会话启动过程称为PCoIP 会话握手

  4. 使用 UDP 端口4172(确保此端口未被阻塞)建立双向 PCoIP 连接,以便从 Horizon 客户端和配置的pcoipExternalUrl将会话数据发送到统一访问网关或安全服务器。然后,PCoIP 会话的详细信息从统一访问网关或安全服务器转发回运行在虚拟桌面上的 Horizon 代理,并传输到客户端。

pcoipExternalUrl仅用于统一访问网关。如果您使用的是安全服务器进行外部访问,则会使用配对连接服务器上的 PCoIP 外部 URL。

该过程如下图所示:

在接下来的章节中,我们将更详细地了解Blast Extreme协议。

Blast Extreme

Blast Extreme 是 VMware 开发的新协议,如果主机服务器具备适当的 GPU 加速资源,它可以选择使用 H.264 视频编码器,从而将用户体验传递到启用了 H.264 的客户端设备。H.264,或 MPEG-4 第十部分,是一种先进的视频编码,或称为 MPEG-4 AVC,解决方案。它是一种基于块的、运动补偿的视频压缩标准。它是一种常用的视频格式,应用实例包括 DVD 视频内容的传输。

Blast 作为 VMware 协议已经存在一段时间,最早出现在几年前的 Horizon 5.2 版本中,当时它用于提供 HTML5 访问虚拟桌面。现在,它不仅限于提供 HTML5 访问;它还可以使用标准 HTTPS 端口将用户体验交付到最新的客户端设备。

Blast Extreme 交付方式与 PCoIP 具有相同的功能,支持类似的功能,如客户端驱动器重定向、USB、统一通信和本地打印。它们的区别在于资源消耗,Blast 使用更少的 CPU 周期,交付协议更灵活。

与 PCoIP 类似,Blast Extreme 可以补偿延迟增加或带宽减少并动态调整;然而,它还可以同时利用 TCP 和 UDP,而 PCoIP 只能使用 UDP。

您还可以连接多个监视器。根据终端设备,支持最多四个运行分辨率为 2,560 x 1,600 的监视器,或者可以在 Windows 7 远程桌面上禁用 Aero 的情况下运行三个分辨率为 3,840 x 2,160 的 4K 监视器。

以下是 Blast Extreme 的其他特性详细列表:

  • Blast 自适应 UX:通过 Horizon View 客户端或基于浏览器的客户端,使用 Blast Extreme、PCoIP 或 RDP 提供对 Horizon View 虚拟桌面机器和托管应用程序的最终用户访问。它自动适应网络条件,通过任一方式提供最佳体验。

  • Blast 多媒体:为 Flash、HTML5、QuickTime、Microsoft Silverlight 和 Windows Media 提供丰富的视频播放。

  • Blast 3D 服务:基于行业内最广泛的虚拟化图形能力构建,包括使用 NVIDIA GRID vGPU 技术的硬件加速图形。启用 Blast 3D 后,Horizon View 支持最多两个运行分辨率为 1,920 x 1,200 的监视器,或一个运行分辨率为 3,840 x 2,160 的单个 4K 监视器。

  • Blast 实时通信:提供对头戴式耳机和网络摄像头等通信工具的完全访问,支持 Skype、Google Hangouts 和 Cisco WebEx 等应用程序。

  • Blast Unity Touch:提供更直观的界面,允许您从移动设备上使用 Windows 桌面、应用程序和文件。

  • Blast 本地访问:支持连接外围设备,如 USB 闪存驱动器、打印机、智能卡设备和智能手机到您的虚拟桌面机器。

  • Blast Horizon 客户端:为终端设备提供高端用户体验的 Blast 启用客户端。

Blast Extreme 连接过程的工作原理

以下步骤描述了 Blast Extreme 连接过程的工作原理:

  1. 与 PCoIP 一样,使用 Blast Extreme,Horizon 客户端通过 HTTPS 将最终用户的凭据用于在安全服务器或统一访问网关上配置的 PCoIP 外部 URL 的身份验证。

  2. HTTPS 认证数据通过统一访问网关设备或安全服务器传递到连接服务器。安全服务器使用从安全服务器到连接服务器的 AJP13 转发流量进行配对。用户有权访问的桌面池和应用程序从连接服务器读取,然后在 Horizon 客户端中显示为可用资源。

  3. 最终用户从 Horizon 客户端启动虚拟桌面或发布的应用程序会话。在统一访问网关设备或安全服务器上通过 HTTPS 在 TCP 端口 443 进行会话握手。

  4. 在 TCP 端口443上建立一个安全的 WebSocket 连接,用于允许 Horizon 客户端和统一访问网关设备或安全服务器之间的会话数据传输。

  5. Blast 安全网关服务(无论是统一访问网关设备还是基于安全服务器的)将尝试在端口443上建立 UDP WebSocket 连接。如果连接失败或因某种原因被阻止,Blast 安全网关服务将回退到初始的 WebSocket TCP 端口443连接。

这个过程在下图中展示:

有关更详细的端口设置,请参见以下链接:

techzone.vmware.com/resource/network-ports-vmware-horizon-7

替代显示协议

市面上还有一些其他主流桌面协议,其中一些与 VMware Horizon 兼容,另一些被 Horizon 的竞争者使用。目前可用的主要协议是 Microsoft 的远程桌面协议(RDP)和 Citrix 的独立计算架构(ICA)。这些将在接下来的章节中进行描述。

RDP

RDP 是为 Microsoft 开发的,主要用于通过 TCP IP 连接到远程计算机、服务器、桌面或虚拟机。RDP 现在更常被称为远程桌面连接。你可能每天都使用它来远程连接到你的服务器基础设施,以便远程管理服务器。

当你连接到远程桌面或计算机时,实际上是连接到一个终端服务组件,该组件将屏幕内容、按键输入和鼠标移动传送回客户端。

ICA 协议

ICA 是 Citrix 在其产品 XenDesktop 和 XenApp 中使用的另一种显示协议。它与其他协议的设计类似,用于通过 TCP IP 网络连接将屏幕内容和键盘输入传送到客户端设备。

你通过安装在端点设备上的 ICA 客户端(如Citrix Receiver)进行连接。这会加载一个 ICA 文件,包含你正在连接的远程系统的详细信息以及应用于该会话的属性。

那么高清体验(HDX)呢?HDX 不是一个协议或技术,而是 HDX 的市场品牌。HDX 涵盖了多项 Citrix 技术,描述了整个用户体验,而不是仅仅集中在协议元素上。你还会看到一些子品牌属于 HDX,比如 HDX MediaStream、HDX RealTime 和 HDX 3D。

你应该使用哪种协议——Blast Extreme、PCoIP 还是 RDP?

现在我们已经对 PCoIP、Blast Extreme 和 RDP 有了很好的理解,你会选择哪一个?

选择 PCoIP 的最有力理由是它使用 UDP 协议,UDP 更适合流媒体传输,因此非常适合虚拟桌面交付的特性。不过,正如前面提到的,Blast 也可以使用 UDP 作为传输协议。再次强调,UDP 不关心数据如何到达端点设备,它只关心传输的速度以及数据到达的速度。

另一方面,RDP 使用 TCP 作为协议,这是互联网上广泛使用的协议。与 TCP 的关键区别在于,它关注数据如何接收。TCP 要求端点设备确认是否成功接收所有数据包。如果端点设备未收到期望的数据包,它会回复请求 TCP 停止发送数据包或缩小接收量。UDP 则持续发送,并且速度更快,因为没有来自端点设备的确认包。

这时,Blast Extreme 就可以派上用场,它可以使用 TCP 或 UDP 作为传输协议,并能够判断可用的网络容量并相应调整。

Blast Extreme 还将减少端点设备的资源使用,特别是当你使用 NVIDIA GRID 技术进行解码卸载时。然而,需要注意的一点是,当使用 TCP 作为传输协议时,由于需要补偿丢包,它可能会消耗更多的带宽。

在某些情况下,PCoIP 可能不是合适的协议,Blast Extreme 或 RDP 则需要使用。我们最常见的情况是当所需的网络端口被公司策略阻塞,或是来自远程位置的互联网连接被限制时。

当你的桌面被显示回你时,PCoIP 使用 UDP 端口4172来传送像素。这个端口有时会被阻塞,因为它通常不被使用。如果这个端口被阻塞,结果是,尽管你能够通过 View 客户端登录到虚拟桌面并且一切看起来正常,你却只会看到一个黑屏。黑屏的原因是像素在传输时被阻塞。在这个例子中,解决方法是使用支持 HTML5 的浏览器通过 Blast Extreme 访问桌面,Blast Extreme 使用标准的 HTTPS 端口。我们将在第十章,优化终端用户体验中详细讲解。

这里的关键点是,在规划用户如何连接到虚拟桌面时,要与网络和安全团队合作,并考虑用户的工作方式和所在位置。也许你并不需要外部访问,因此 WAN 的限制就不再是考虑因素。

现在我们已经讨论了如何通过交付协议传输图形,在接下来的部分中,我们将探讨如何在虚拟桌面机器中启用高端图形的选项。

Horizon View 硬件加速图形

虚拟桌面技术的早期版本在提供高端图形内容时遇到了挑战,因为宿主服务器并未设计用于渲染和提供这些应用所需的图像大小和质量。

让我们从简要的历史和背景开始。支持高端图形的技术是分阶段发布的,首次在 vSphere 5 中推出对 3D 图形的支持,而 View 5.0 则使用基于软件的渲染。这使我们能够支持 Windows Aero 功能等内容,但由于这是一个软件功能,仍然不足以满足一些高端用例的需求。

下一阶段是提供基于硬件的 GPU 虚拟化解决方案,这个解决方案随着 vSphere 5.1 的发布而推出,它允许虚拟机通过虚拟机监控程序层传递,从而利用安装在宿主服务器中的物理图形卡。

如果我们几年前就讨论这个话题,且你有一个需要高端图形功能的用例,那么虚拟桌面将不是一个可行的解决方案。正如我们刚才讨论的,在 VDI 环境中,图形将通过虚拟化的、基于软件的图形驱动程序作为虚拟机监控程序的一部分来交付。

此外,不要忘记,既然我们现在使用服务器来托管虚拟桌面,我们实际上是在使用服务器中图形卡的处理能力,而服务器并不以高端图形能力著称,并且 GPU 能力有限,因为通常情况下,服务器只需要显示管理控制台。

现在这一切都变了。随着 2013 年 View 5.2 的发布,硬件加速图形的能力成为了标准产品功能,推出了虚拟共享图形加速vSGA),随后推出了虚拟专用图形加速vDGA)。

我们将在本章的接下来的部分讨论这两种技术。我们还将讨论 Horizon View 中图形功能的最新版本,包含虚拟图形处理单元vGPU)。

vSGA

vSGA 实现允许多个虚拟桌面机器共享一张物理 GPU 卡,该卡安装在托管这些虚拟桌面机器的 ESXi 主机服务器中。

在这种模式下,虚拟桌面机器无法直接访问专用的物理 GPU 卡。相反,VMware Tools 中的标准 VMware SVGA 3D 图形驱动程序被安装在虚拟桌面操作系统中。SVGA 驱动程序是一个 VMware 驱动程序,提供对 DirectX 9.0c 和 OpenGL 2.1 的支持。

在此配置中,由显卡制造商提供的驱动程序(VIB)会安装在 ESXi 虚拟化管理程序上,而不是虚拟桌面机器的操作系统上。来自用户会话的图形命令会被此驱动程序拦截并发送到虚拟化管理程序,后者控制 ESXi 服务器中的 GPU。

向用户端点的交付工作方式相同,DevTAP 会将用户体验编码为 PCoIP 或 Blast Extreme,并通过 HTML5 浏览器或 Horizon 客户端将其交付到最终用户设备。下图展示了 vSGA 架构的概览:

有几种配置和支持选项需要考虑,我们将在接下来的章节中进行讨论。

vSGA 支持的显卡

vSGA 将支持基于 OpenGL 2.1 和 DirectX 9 的应用程序,这些应用程序可以在 Windows 7 或 8 的虚拟桌面机器上运行,并且虚拟化在 VMware vSphere 5.1 及更高版本上,使用以下制造商的 GPU 卡之一:

  • Intel HD Graphics P4700,和 Intel Iris Graphics

  • Tesla

  • NVIDIA GRID

  • AMD FirePro

有关最新的兼容性指南和支持的显卡,请点击以下链接:www.vmware.com/resources/compatibility/search.php?deviceCategory=vsga

vSGA 支持多少个虚拟桌面?

这是一个在讨论在 Horizon View 环境中提供硬件加速图形时经常被问到的问题,所以我们需要花些时间来理解这个问题。在 Horizon View 中,您可以根据使用场景创建不同的桌面池,正如我们将在第八章《配置和管理桌面池——第一部分》中所介绍的那样,其中一个桌面池将配置为使用高端图形。通常,您不希望所有用户都能访问硬件 GPU,因此您会为这一使用场景创建一个桌面池。

所以,要回答这个问题,您可以分配给 GPU 的虚拟桌面数量取决于您为每个虚拟桌面分配的视频内存(VRAM)量。需要记住的是,资源是共享的,因此正常的 VMware 虚拟化规则适用。首先要注意的是内存是如何共享的。

分配给虚拟桌面机器的视频内存的一半来自 GPU 卡的内存,另一半来自主机服务器的内存。在配置主机服务器时,您需要确保服务器中配置了足够的内存来分配为视频内存。

基于这一点,且支持的虚拟桌面数量是根据分配的 VRAM 量来决定的,接下来我们来看看具体是如何实现的。

默认情况下,每台虚拟桌面机分配的显存为 128 MB。因此,在这个示例中,64 MB 来自 GPU,另外 64 MB 来自主机服务器。如果你使用一张拥有 4 GB 显存的 GPU 卡,你将能够支持 64 台虚拟桌面机(4 GB 或 4,096 MB 除以每台虚拟桌面机的 64 MB 显存 = 64 台虚拟桌面机)。

使用 Horizon View,你可以为每台虚拟桌面机分配最多 512 MB 的显存。如果将此应用于前面的示例,并使用相同的 4 GB GPU 卡,那么你现在将支持 16 台虚拟桌面机(4 GB 或 4,096 MB 除以每台虚拟桌面机的 256 MB 显存 = 16 台虚拟桌面机)。

使用 AMD 图形解决方案时,每个 GPU 最多支持 15 台桌面。

我们之前提到过,正常的 VMware 虚拟化规则适用,那么我们来详细解释一下这是什么意思。基本上,当你无法满足虚拟桌面机的规格且资源不足时,会发生什么?它无法启动或开机,对吧?GPU 配置也是如此。如果你为桌面池配置了超过该 GPU 能够支持的虚拟桌面机,它们将无法启动。

如果你确实配置了更多虚拟桌面机并且无法确保 GPU 资源可用,请在 View Administrator 控制台中将硬件 3D 设置为自动。这样,Horizon View 将会回退到基于软件的 3D 渲染来提供虚拟桌面机。

vDGA

虽然 vSGA 是基于共享的,vDGA 允许每个虚拟机拥有对安装在 ESXi 主机服务器上的物理 GPU 卡的独立访问权限。这使得虚拟桌面机能够获得更高水平的图形性能,非常适合用于 CAD/CAM 应用等场景,因为它支持 DirectX(9、10 和 11)、OpenGL 4.4 和 NVIDIA CUDA。

以下图示展示了 vDGA 的架构:

vDGA 解决方案利用了一项名为VMDirectPath I/O 直通的功能,有时也被称为PCI 直通,它允许虚拟桌面机绕过虚拟化管理程序层,直接访问主机服务器中的硬件。在这种情况下,所涉及的硬件是 NVIDIA GPU 卡。

由于 VDI 桌面与 GPU 之间是按一对一方式映射的,因此无法使用 vSphere 的功能,如 HA、DRS 或 vMotion。

vDGA 支持多少台虚拟桌面?

与 vSGA 不同,vSGA 受限于 GPU 卡上的内存数量,而 vDGA 仅受限于你可以物理安装在主机服务器中的 GPU 或 GRID 卡的数量。这取决于你的服务器供应商及其支持的硬件。

服务器供应商提供启用了 NVIDIA GRID 的预构建服务器,因此这种技术只能通过 OEM 渠道获得。主要原因是服务器需要额外的电力和冷却组件来驱动 GRID 卡。

例如,一张 NVIDIA GRID K2 GPU 卡上有两个 GPU,这意味着您可以将四个虚拟桌面机器分配给这张卡。根据您的服务器硬件平台,您可以安装多个卡,从而增加使用硬件启用 GPU 的虚拟桌面用户数量。

vDGA 支持的显卡

以下是一些与 vDGA 兼容的 GPU 卡:

  • NVIDIA GRID、NVIDIA Tesla 和 NVIDIA Quadro

  • AMD FirePro

有关最新的兼容性指南和支持的显卡,请点击以下链接:www.vmware.com/resources/compatibility/search.php?deviceCategory=vdga

vGPU

在前面的章节中,我们讨论了两种提供高端图形的不同模型。然而,这些解决方案各自存在一些限制。

使用 vSGA 时,您可以获得在用户数量上的扩展性,这些用户可以使用 GPU 卡;然而,由于它不使用 GPU 供应商提供的原生驱动程序,因此一些 ISV 不会认证其应用程序在此解决方案上运行。他们需要认证 VMware SVGA 驱动程序,因为这是使用的驱动程序。

所以,解决 ISV 支持问题的答案是使用 vDGA,它使用了原生 GPU 供应商的图形驱动程序,但现在在扩展性和高成本方面存在限制。将虚拟桌面机器专用给 GPU,并且每个主机服务器中只有少量的 GPU,这会导致一个非常昂贵的解决方案。尽管如此,也可能有某些应用场景适合这种解决方案。

我们需要的是一种兼顾两全的解决方案;既能够利用共享 GPU 的扩展性,又能使用原生图形驱动程序。这种解决方案称为 vGPU,并作为 Horizon 6 和 6.1 版本的一部分发布。

下图展示了 vGPU 的架构:

在这种模型中,我们在虚拟桌面机器中安装了原生 NVIDIA 驱动程序,然后该机器可以直接访问主机服务器中的 NVIDIA GRID 卡。GPU 被有效地虚拟化并进行时间切片,每个虚拟桌面机器都能分到这一段时间。

vGPU 仅在 VMware vSphere 6 和 Horizon View 6.1 及更高版本中可用。

vGPU 支持多少个虚拟桌面?

使用 vGPU 时,支持的用户/虚拟桌面机器数量基于不同的配置文件。这些配置文件在下图中有详细说明,显示了支持的用户数量、支持的显示器数量等:

与 vDGA 和 vSGA 解决方案一样,你需要检查是否具有正确支持的硬件。此外,你还应检查你的应用程序是否在这些配置中得到支持。你可以通过以下链接访问 NVIDIA 官网,查找当前支持的应用程序列表:www.nvidia.com/object/grid-isv-tested-applications.html

统一通信支持。

就像高端图形处理一样,如果我们几年前讨论在 VDI 桌面上运行统一通信解决方案或 VoIP 会话,我会把它描述为 VDI 的致命克星!尽管技术上可以运行,第一次通话可能表现尚可,但增加更多用户最终会导致服务器在处理生成的流量和进行通话所需的资源时崩溃。最终,体验会变得完全不可用。统一通信并不是 VDI 的理想用例。

然而,这一切都发生了变化,现在你可以愉快地在虚拟桌面上使用统一通信解决方案。始终存在一个很好的用例来将统一通信与 VDI 部署结合;只是它以前从未能正常工作!举例来说,一个呼叫中心环境,能够提供灾难恢复解决方案,或者允许用户在雪天时在家工作,仍然能够像在办公室一样拨打和接听电话。

那么,为什么以前不行呢?很简单,因为当你从虚拟桌面拨打 VoIP 电话时,通话会通过 PCoIP 协议进行,从而导致带宽问题,使得桌面性能变慢,并且给服务器增加额外的负载,必须处理通话。这在下图中有详细说明,展示了以前的情况和之后的结果:

为了解决这些问题并实现可行的解决方案,VMware 专注于三个关键领域,并提供了以下新功能/增强功能:

  • 将媒体处理卸载到客户端设备,通过移除数据中心服务器的负载。

  • 优化的点对点媒体传输,消除回环效应。

  • 高质量的统一通信 VoIP 和视频,带有 QoS 保障。

现在统一通信是如何工作的?

远程过程调用利用虚拟通道,使得运行在 VDI 桌面上的软电话不同组件之间能够进行通信,并将语音和视频数据传输到客户端设备中的其他软电话组件。这些是带外通信。

呼叫控制栈(如果使用 SIP 信令,则为SIP 栈)与呼叫控制服务器或呼叫管理器进行通信,以注册或建立通话。

客户端设备上的媒体引擎执行语音和视频流的编码与解码,转换成本地的语音和视频编解码器,然后将 VoIP/视频流直接传输到另一个终端(按照呼叫管理服务器的指示),从而建立点对点通话,避免通过数据中心。这消除了回拨效应。

目前,VMware 支持来自 Cisco、Mittal、Avaya 和 Microsoft Lync 2013 的解决方案。我们将在下一节中讨论 Microsoft Skype (Lync) 解决方案。

支持 Microsoft Skype

根据我们刚才讨论的内容,VMware Horizon 现在支持 Microsoft Skype,并通过 Horizon Virtualization Pack for Skype for Business 提供完整支持,包括对 VoIP 和视频的全面支持。下图展示了客户端工作过程:

要启用 Skype,您需要确保在终端设备上安装了 Horizon Virtualization Pack for Skype for Business,并且同时安装了 Horizon 客户端和 Microsoft Skype 客户端。VMware 在 PCoIP 协议内部实现了 Microsoft 的 动态虚拟通道DVC)以启用此功能。DVC 提供虚拟桌面机器与客户端终端之间的通信路径。

解决方案有一些限制,需要提到:

  • 不支持为音频设备和视频设备调节页面。

  • 不支持多视角视频。

  • 不支持对话录音功能。

  • 不支持呼叫代理功能。

  • 不支持响应组代理匿名化功能。

  • 不支持匿名加入会议。

  • 不支持将 Skype for Business VDI 插件与 Skype for Business Phone Edition 设备一起使用。

实时音视频(RTAV)

在统一通信支持的基础上,我们接下来听到的问题是关于如何插入 USB 网络摄像头并在虚拟桌面中使用它的支持。

问题

与统一通信和 VoIP 类似,由于这类设备对带宽的高需求,最初不支持在虚拟桌面机器上使用网络摄像头或进行音频输入和输出,这会导致性能较差。之前,任何此类设备的重定向都是通过 PCoIP 协议的 USB 重定向功能来处理的。

这是音频输入的工作方式,但使用 3.5mm 插孔的音频输入完全无法工作。使用 PCoIP 音频重定向功能时,音频输出是有效的,这比使用 USB 重定向要好得多。因为客户端系统无法拆分 USB 音频设备,导致音频输出保持本地,而音频输入被重定向。这意味着在 VoIP 解决方案中使用 USB 耳机时,需要将整个耳机(音频输入和音频输出)都转发给客户端。

RTAV 如何解决这个问题?

RTAV 不使用 USB 转发音频和摄像头设备。相反,USB 设备保持连接到本地客户端,音频和图像从本地设备提取。音频和图像数据被编码后传送到来宾虚拟桌面机器,在那里解码。VMware 安装了一个虚拟摄像头和一个虚拟麦克风虚拟桌面机器。这些设备用于回放音频和视频。你将会在虚拟桌面机器的设备管理器中看到这些设备条目。

RTAV 支持以下功能:

  • 同时连接摄像头和音频设备,用于基于 VoIP 的视频会议应用,如 Skype。

  • 仅音频输入(无视频)用于 VoIP(仅语音)应用

  • 仅摄像头;用于摄像头监控类应用(例如 CCTV)和拍照

URL 内容重定向

URL 内容重定向功能允许你配置 URL,以便在终端设备的本地浏览器中打开,或在虚拟桌面机器上打开。哪个内容在何处打开是通过使用GPO进行配置的。

这样做的使用场景是将内部浏览与外部浏览分开。如果你想查看安全内容,可以使用虚拟桌面机器上的浏览器,因为如果数据不离开数据中心,其他浏览活动可以在本地进行。另一个场景可能是你希望限制进入数据中心的带宽使用,如果用户浏览的是大容量内容,他们可以使用本地的互联网连接。

你可以配置两种类型的 URL 进行重定向:

  • 用户在浏览器地址栏中输入的 URL

  • 应用程序中的链接,例如 Outlook 或 Word,用户可以点击的链接

Horizon 客户端

Horizon 客户端基本上是解码并在终端设备上显示虚拟桌面机器屏幕的地方。Horizon 客户端有两种不同的类型:一种是基于软件的版本,安装在用户的终端设备上;另一种是基于硬件的版本,使用零客户端或瘦客户端。

我们将在第十二章中讲解 View 客户端选项,Horizon 客户端选项

总结

在本章中,我们讨论了 Horizon View 架构及构成完整解决方案的不同组件。我们介绍了关键技术,比如如何通过链接克隆和即时克隆来优化存储,然后我们介绍了一些旨在提供出色终端用户体验的功能,如提供高端图形、统一通信、配置文件管理,以及协议如何将桌面交付给终端用户。

现在你已经理解了所有这些功能和组件,它们是如何工作的,以及它们如何融入整体解决方案。在接下来的章节中,我们将深入探讨如何配置它们。

第三章:设计和部署考虑因素

现在,我们已经在前几章提供了 VMware Horizon 各个组件的全面概述,在本章中,我们将集中讲解如何将这些组件付诸实践,介绍一些在进行 VMware Horizon 项目时需要考虑的设计和部署技术。

首先,我们将讨论一些可以用来验证技术并了解它如何在您的业务中发挥作用的技术,首先从如何评估当前环境开始,然后如何利用这些信息来设计您的 Horizon 部署。

一旦您完全理解了业务需求,接下来我们将深入探讨 Horizon 解决方案的设计要素,包括但不限于 ESXi 主机设计、虚拟桌面的内存和 CPU 配置、存储考虑、客户端以及其他最佳实践和技巧。

我们将同时探讨项目的业务和技术要素,然后讨论每一项,看看它如何融入整体项目。为了使这个过程更简单、更具逻辑性,我们将这些内容拆分为三个明确的项目阶段,如下图所示:

在接下来的章节中,我们将更详细地探讨和讨论这三个阶段。

在本章中,我们将涵盖以下主题:

  • 阶段 I – 项目定义

  • 阶段 II – 技术验证

  • 阶段 III – 生产环境设计

  • 技术选择

  • Horizon View pod 和 block 架构

  • 云 Pod 架构

  • vSphere 设计用于 Horizon View

  • Horizon View 设计细节

  • 支持基础设施设计

  • 打印

  • 瘦客户端和其他终端设备

  • 桌面设计考虑因素

  • 示例解决方案场景

阶段 I – 项目定义

在这个第一阶段,我们将探讨如何处理一个项目。第一阶段分为四个单独的步骤,如下图所示:

让我们更详细地看一下每个单独的步骤,从业务驱动因素和理解您的业务需求开始。

第一步 – 确定业务驱动因素 – 了解您的需求和要求

在您全身心投入 Horizon 项目之前,先退一步,确保开始记录您想要达成的目标。通常情况下,很容易被解决方案中所有新的技术方面吸引,例如安装和配置新硬件和软件,而忽视了最终目标,导致目标丢失或与业务无关。

可能这是一个显而易见的观点,但识别业务驱动因素的关键在于真正理解你想要评估的内容。我们所说的是,这是否是基于需要通过新的工作举措来转型组织的战略决策,还是有一个更具迫切性的事件,比如操作系统或应用程序的生命周期结束?甚至可能仅仅是为了降低成本。无论是哪种情况,你都需要在第一天就把这些明确下来、写好并记录下来,以便项目具有意义和方向,更重要的是,在审查时为项目提供一个参考基准,从而评估项目是否成功。

从编写一份需求文档开始,列出业务需求、当前需要解决的问题、愿景,以及任何妥协和假设。在项目进行过程中,你应该定期参考此文档,以确保自己始终专注于最终目标。

第二步 – 构建商业案例

一旦你定义了驱动一个项目的因素或促使项目启动的关键事件,并且理解了高层目标,下一阶段是围绕这些内容开始构建商业案例。这要求你进入更高层次的细节,开始深入挖掘解决方案需要解决的具体领域。为了做到这一点,你需要理解商业战略,并确定项目的关键利益相关者。然后,你可以开始定义每个被识别为驱动因素的领域的高层需求,并开始定义用户细分。例如,你可以查看你有哪些不同类型的用户,他们今天如何工作,以及未来他们需要什么。归根结底,决定项目是否成功的将是最终用户,而不是你!这将引导我们进入下一个部分——评估阶段。

第三步 – 评估

一旦你构建并验证了符合战略的商业案例,并确认有需求为桌面环境提供新的交付方式,下一步就是进行评估。虽然通常被称为桌面评估,但实际上你在做的是引导最终用户入驻,以便你能够通过基础设施映射他们的整个生命周期——不仅仅是今天,而是通过持续监控,确保他们在操作系统、应用程序迁移和更新过程中,始终获得最佳的用户体验。

那么,我们说的评估是什么意思?或者在这种情况下,我们如何将终端用户接入,以便在他们的工作生命周期中进行评估和监控?到底涉及哪些内容?这可以归结为几个方面,包括通过收集关键指标来检查你当前的桌面环境,从而了解当前交付的内容、交付对象,以及更重要的是,这些内容消耗了多少资源。评估的目的是构建一个完整且准确的当前终端用户环境的图景。

这不仅仅是一个清单报告——你需要准确了解终端用户正在做什么,以及他们是如何工作的。我们关注的一些关键指标包括:

  • 哪些用户在使用哪些应用(何时、从哪里、以及多频繁?)

  • 资源消耗(CPU、内存、磁盘和网络是关键)

  • 不适合远程交付或 VDI 的应用/使用案例

  • 哪些客户端操作系统正在使用?

  • 现有设备的硬件清单

  • 机器启动时间和登录过程拆解

  • 当前的交付方式(RDSH、XenApp、VDI、物理 PC 等)

  • 用户档案详细信息

你最终要达成的目标是创建一个基准,展示当前环境的状态。然后,在你进入定义成功标准和验证技术的阶段时,你就有了一个基准作为参考点,可以展示你如何改善当前功能,并实现业务案例和战略目标。

如果你已经部署了 VDI 解决方案,而这个新项目是迁移或升级之类的任务,那么你应该有大部分数据可用。然而,如果这是较早之前进行的项目,建议重新运行评估,以便获得最新的数据,尤其是关于你环境中的应用程序数据。理想情况下,从一开始你就应该持续监控基础设施,以便为此类事件做好规划。

用户体验和桌面分析工具

市场上有许多不同的第三方补充产品,你可以用它们来进行分析。你通常可以使用合作伙伴的服务来协助这一过程,帮助你理解收集到的信息和数据。

其中一个最受欢迎的解决方案是 Liquidware Stratusphere 解决方案。Stratusphere 不仅为你提供当前用户环境的详细拆解,重点包括登录过程的详细分解、消耗报告和易于识别哪些用户是虚拟化候选人的分数——它还提供了完整的终端用户生命周期图景。

Stratusphere 会获取基准数据,然后利用这些数据持续监控终端用户体验,从而确保你的 VDI 解决方案得到优化,如下图所示。本书后面会更详细地讨论这一点:

Stratusphere 监控最终用户体验

需要确保评估解决方案是专门为测量桌面而设计的,而不是为服务器设计的。这两种技术虽然都是虚拟化技术,但完全不同,虽然你可能可以使用桌面评估软件来规划你的服务器虚拟化项目,但反过来却行不通。

除了实际收集评估数据之外,还有几个其他方面你应该考虑并查看。这将帮助你理解一些原始评估数据所告诉你的内容。例如,它可能会告诉你,由于消耗的资源量,某个特定用户不适合使用虚拟桌面;然而,当你与他们交谈时,可能会发现他们的工作内容在虚拟桌面环境中并不相关。

了解你的用户到底做什么

在 IT 部门工作通常能让你对用户执行的任务以及他们为完成这些任务而使用的软件有一个较为清晰的理解。然而,这通常比它初看起来要复杂得多。通过进行桌面评估,你能够更加细致地了解最终用户从现有桌面环境中获得的流程、应用程序和使用体验。这可能包括他们使用的应用程序,以及他们没有使用的应用程序,包括安装的版本、容量和性能要求,以及用户体验指标,比如登录时间和应用加载时间。

应用程序

了解你当前的应用程序是评估阶段的关键部分。这不仅可能会影响最终用户的生产力——毕竟,是应用程序让用户保持工作状态——它还将影响设计的许多其他方面,包括池的数量、池的设计、应用虚拟化,以及是否需要为用户分配一个持久性桌面,或是否可以分配一个非持久性桌面。

在某些环境中,你可能仍然有遗留的应用程序在运行,了解这一点非常重要,因为这些应用程序可能无法在虚拟桌面环境中运行,从而完全拖延或破坏你的项目进程。通常,在迁移到虚拟桌面时,你需要从较旧的操作系统开始,这同样可能会导致应用程序兼容性问题。

通过从评估中收集的指标,你将能够全面了解当前桌面环境的状况。发现许多不同版本的软件并不罕见,这意味着潜在的安全风险,而在其他情况下,关键应用程序可能会定期崩溃。这些信息将帮助你构建变革的商业案例,并帮助你优先考虑向那些安全漏洞最大或用户体验最差的用户推广新系统。

性能

没有实际的性能指标,你几乎不可能正确配置虚拟桌面。如果没有这些数据,你的桌面可能会通过两种方式之一来配置。第一种是过度配置桌面。过度配置通常发生在虚拟化时,因为配置虚拟机非常简单,有时我们会不自觉地加入比实际需要更多的 CPU 和内存。结果是,我们需要更多的基础设施来支持这些资源,成本也随之上涨。还会出现这种情况:我们大致估算桌面的大小,然后再在其基础上加上十到二十个百分点以防万一。推动成本上涨可能意味着项目在财务上不可行。

另一面是低配桌面可能会导致性能问题和不佳的最终用户体验。如果你基于这些低配置进行基础设施设计,并且最终需要增加更多资源,争取更多预算以提高主机服务器的规格或增加更多服务器可能会是一场艰难的对话。

如果你在寻找桌面即服务(Desktop as a Service)解决方案,这个问题是需要注意的。从纸面上看,这些桌面似乎物有所值,可能每月花费在$30 到$50 之间。但在你签订合同并且最终用户开始增加资源消耗时,成本也会开始上涨。我们见过很多客户的账单,因为选择了低配置桌面,导致月度付款远超预算。

通过执行桌面评估,你将了解整个工作日的性能情况。多少资源被消耗了?什么时候消耗的?你可能会看到全天有许多波动和峰值,比如登录高峰、AV 扫描、注销高峰以及其他指标,比如午餐时间增加的互联网使用量。

如果你在教育环境中工作,你可能会看到很多登录和注销高峰。理解这一点非常重要,因为你需要确保你的解决方案设计能够满足这些需求。这些信息可以帮助你在配置相关桌面池时做出指导,但请记住,可能会在评估阶段和部署 VDI 桌面之间做出一些更改。比如,从 Windows 7 迁移到 Windows 10,或应用程序的升级。在这些情况下,评估是基于之前版本的操作系统进行的,因此可能无法为你提供 100%准确的资源需求信息。一些第三方评估工具可以处理这些问题,并允许你模拟“如果发生这种情况”的情景。

最终用户体验

最重要的是,用户体验才是关键,它衡量了最终用户使用虚拟桌面时的体验好坏。当你进行服务器虚拟化项目时,如果做得正确,用户可能甚至没有意识到变化发生了。

对于桌面虚拟化或任何其他非常注重最终用户的 EUC 类型项目,用户更可能意识到变化的发生,你需要确保这对项目来说是一次积极的体验,这样项目才能成功。为了做到这一点,你需要几乎进入用户的思维方式,准确地看到他们今天是如何使用这个环境的。用户体验的衡量标准将是广泛的、多样的,且通常是主观的,但将包括诸如启动时间、应用加载时间、登录时间、页面加载时间、应用故障,以及最终使用的直观性等要素。这些是评估工具不太可能告诉你的。

在进行概念验证POC)、试点和调优的过程中,你需要确保用户体验不断改善。忽视最终用户体验将导致项目的彻底失败。为了做到这一点,你需要与最终用户社区进行互动。

走访、访谈和部门冠军

正如我们之前所述,虽然进行桌面评估并收集你的环境数据是任何 EUC 项目的重要组成部分,但它们不应取代与用户互动的必要性。人类参与的好处在于,你能够发现一些仅凭软件无法捕捉到的要素。

首先,简单地走访你的办公室,注意用户在做什么,使用什么应用程序,使用了哪些配件,有多少个显示器,他们是使用笔记本电脑还是台式电脑,等等。

一旦你对这一层次的情况有了了解,可以考虑与各部门的关键业务领导安排会议,以了解他们的需求、要求,以及他们当前使用桌面时遇到的问题。你还应该开始考虑你部门的“部门冠军”是谁。

什么是部门冠军?

如果你打算列出本书中的关键考虑因素,那么“部门冠军”应该排在你的清单上。部门冠军是一个最终用户,将成为该部门所有与桌面相关的设计、测试和支持事务的主要联系人。他们不需要是 IT 专家,但应该有帮助你改善整体桌面体验的愿望。你应该与这些冠军合作,帮助他们设计桌面,因为他们将是你进行测试的首选人选,并且在你听取并实施任何反馈之后,还需要进行再次测试。

与部门冠军合作,你将在部门内拥有一个赞助人。他们会为即将推出的项目感到自豪,并会帮助你塑造桌面环境,作为用户站在你这一边,解释为什么做出某些决策。

步骤 4 – 定义成功标准

定义成功标准的关键目标是记录项目成功并准备投入生产所需的理想解决方案是什么样的。

你需要明确定义那些必须正常运行的元素,才能从 POC(概念验证)阶段过渡到 POT(性能验证)阶段,再到试点阶段,最终部署到生产环境中。你需要全面记录这些元素,并让最终用户或其他项目利益相关者签署确认。这几乎就像是制定一份工作说明书,明确列出任务清单。如果没有成功标准,就不应该开始测试!

另一个重要因素是确保在项目的这一阶段,成功标准不要超出最初的范围,这种现象通常被称为“范围蔓延”。这意味着任何额外的元素都不应加入到成功标准中,或者至少在讨论之前不要加入。如果有重要的内容被遗漏,可能会暴露出来;然而,如果你已经充分进行评估,这种情况不应该发生。这也是设定成功标准的另一个原因,否则你将无法知道清单上有哪些内容,且清单永远不会结束,总会有新内容被加入。

另一个有效的方法是在此阶段再次让最终用户参与进来。通过选择来自不同部门的人组成指导委员会或顾问小组,作为各自业务领域的赞助人,积极参与测试阶段,但要早早地让他们参与,获取他们的意见,从一开始就参与塑造解决方案。

太多的项目失败是因为用户尝试了某些不起作用的功能。然而,他们尝试的功能实际上并不是一个相关的使用案例,也不是业务中作为关键业务应用的工具,因此不应该使项目脱轨。

我曾经看到过一个 VDI 项目因为在使用 Microsoft Paint 时鼠标响应迟缓而失败。这个问题使得项目偏离了轨道,直到问题得到调查。最终,发现没有人使用 Paint,因此它与业务或使用案例完全无关。然而,这个问题依然浪费了宝贵的时间和精力,因为团队试图提升性能。由于该客户之前没有定义成功标准,项目很难推进。如果当时有一份清单,而这个应用不在清单上,那么它就可以被简单地忽略,项目也可以继续进行。

如果我们在项目初期定义了一组成功标准,并且最终用户已签署确认,任何超出这些标准的内容都不在范围内。如果文档中没有定义某项内容,它就应该被视为不属于成功的标准。

第二阶段——证明技术的可行性

在本节中,我们将讨论如何证明技术是否适合其目的。这是一个非常重要的工作内容,一旦你完成了第一阶段,就需要成功完成这一阶段,且它与通常处理 IT 项目的方式有所不同。对于任何面向最终用户的计算项目,你都应该采用这种方法。

正如我们之前讨论的,起点是关注最终用户,而不是 IT 部门。毕竟,使用应用程序的将是这些人,他们最清楚自己需要什么才能完成工作。与其根据自己的理解提供他们可能需要的东西,为什么不直接问他们真正需要什么,然后在合理范围内交付他们的需求。正如谚语所说,别试图将方钉钉进圆孔,因为无论你多么努力,它都永远不可能合适。

首先,你需要围绕最终用户的需求来设计解决方案,而不是花费时间和金钱去构建一个基础设施,最终却发现它无法满足用户的需求。

一旦前述步骤讨论并记录完毕,你应该能够勾画出推动项目的核心内容。你将明白你希望实现或交付的目标,并根据评估阶段得出的确凿事实,明确成功应该是什么样的。从那里,你就可以进入某种形式的技术测试阶段。

在测试周期中,我们可以选择三条不同的路径,并且可能并不需要所有这些路径。事实上,如果可以的话,通常最好直接跳到最后一个阶段,部署一个试点项目以节省时间和成本,并提前让最终用户参与进来。我们所讨论的这三个阶段如下:

在接下来的章节中,我们将简要介绍每个阶段的含义,以及你可能需要或不需要它们的原因。

概念验证(POC)

POC 通常指部分解决方案,通常是在 IT 部门的任何旧硬件上构建和安装的。在最终用户测试方面,POC 通常涉及少数几个用户,通常是 IT 团队中的成员,他们担任业务角色,以确定解决方案是否满足其设计目标的某些方面,并且是否适合使用。

在 POC 结束时,通常会发生两种情况之一。首先,什么都没有发生,因为 IT 部门只是在玩技术,最初并没有真正的业务驱动。这通常是因为没有定义明确的业务案例。类似地,若没有成功标准,POC 也会失败,因为你不知道自己究竟在证明什么。

第二种结果是项目进入试点阶段,我们将在后面的章节中讨论这一部分。你可以考虑直接进入这一阶段,跳过 POC——毕竟,供应商已经证明了这个概念,老实说,如果这是一个可以直接购买的生产就绪解决方案,那就没有什么概念上的问题了。也许一个技术演示就足够了,使用一个长期的演示环境可以让你看到足够多的技术运作方式。如今大多数供应商都提供云测试环境,潜在客户可以使用。

技术验证(POT)

与 POC(概念验证)相比,POT 的目标是确定提议的解决方案或技术是否能与现有环境集成,从而展示兼容性。POT 应突出与环境相关的技术问题,例如定制系统如何集成。与 POC 类似,POT 通常由 IT 部门进行,通常不会涉及业务用户。POT 纯粹是一次技术验证。

试点

试点指的是在一个接近生产环境的小规模解决方案推出,供真实终端用户进行测试。试点的范围可能会受到能访问试点系统的用户数量、受影响的业务流程或涉及的业务伙伴的限制。试点的目的是测试系统是否按设计运行,同时将业务暴露和风险控制到最小。它还应该涉及真实用户,以便收集他们的反馈,这些反馈可能最终会影响到实际生产环境中的解决方案。

这是实现成功的关键步骤,因为终端用户是每天使用系统的人,他们的反馈非常重要,因此你应该成立一个工作小组来收集他们的意见。这也有助于减轻项目失败的风险,因为即使解决方案可能满足 IT 部门的所有要求,但当它上线并且第一个用户登录后报告体验差或性能问题时,所有的努力可能就白费了。

试点应仔细规划、定义规模并实施,这些步骤可以清晰地分解成以下四个步骤,朝着成功的试点迈进,如下图所示:

让我们更详细地看看这些步骤。

第一步 – 试点设计

试点基础设施应该在生产解决方案将要部署的相同硬件平台上设计。例如,应使用相同的服务器和存储。这考虑到不同平台之间的异常以及配置差异,这些差异可能会影响可扩展性,或者更重要的是,性能。

即使在试点阶段,设计也是关键,你应该确保即使在这一阶段也考虑到生产设计。为什么?基本上,我们这么做是因为许多试点解决方案最终会直接进入生产,而且越来越多的用户会超出试点范围而被加入进来。上线并不需要返回重建是很棒的,但当你通过添加更多用户和应用程序来扩展时,由于最初的配置是为了试点设计的,你可能会遇到一些问题。这听起来可能很显然,但通常一个成功的试点会让你一直进行下去,最终用户继续工作,IT 部门继续添加用户。直到它崩溃!如果它只会是一个试点,那也没问题,但请记住——如果你计划将试点直接投入生产,从一开始就要为生产设计它。

从前提文档开始工作总是很有用,这样你可以了解设计中需要考虑的不同元素。设计元素包括以下内容:

  • 硬件规格(服务器——CPU、内存和整合比率)

  • 池设计(基于用户分层)

  • 存储设计(本地 SSD、SAN 和加速技术)

  • 镜像创建(从头开始重建并优化 VDI)

  • 网络设计(负载均衡和外部访问)

  • 防病毒考虑事项

  • 应用交付(虚拟交付和/或分层交付与基础镜像安装的区别)

  • 用户配置文件管理

  • 持久性或非持久性桌面用户分配

  • 链接克隆、完整克隆或即时克隆桌面构建

一旦你收集了所有这些信息,你就可以开始部署试点环境了。

第二步——部署试点

在试点的部署阶段,你将开始构建基础设施,部署测试用户,并构建操作系统镜像。之后,你将进入测试阶段。

第三步——测试试点

在测试阶段,你需要与最终用户和赞助人密切合作,向他们展示解决方案及其工作原理,密切监控用户,并评估解决方案的使用情况。这让你能够与用户保持联系,并给他们提供实时反馈的机会。这反过来使你能够回答问题、进行调整并即时优化,而不是等到项目结束时才被告知某些功能没有效果或他们根本不理解某些内容。

这将引导我们进入最后一个部分——评审试点。

第四步——评审试点

这个最终阶段有时容易被遗忘。你已经部署了解决方案,用户已经进行了测试,但无论出于什么原因,测试就停在了这里。然而,有一件非常重要的事情必须完成,才能让你进入生产阶段。

你需要根据在这个过程开始时设定的成功标准,衡量用户体验和 IT 部门的体验。你需要获得客户的签字并达成协议,确认你已经成功地满足了所有目标和要求。如果没有达到这一点,你需要理解原因。是你在用例中遗漏了什么,用户需求发生了变化,还是仅仅存在感知问题?

无论如何,你需要再次回到这个过程。回到用例,理解并重新评估用户需求(看看是什么似乎没有按预期工作),然后调整设计或进行必要的更改,让用户再次测试解决方案。

你需要继续这个过程,反复进行,直到获得接受和签署,否则你将无法进入最终的解决方案部署阶段。

当项目在成功的试点测试后获得签字批准后,就没有理由不将技术部署到生产环境中。然而,定期回过头来重新审视这个过程是有益的,以确保没有发生变化。

现在我们已经讨论了如何验证技术并成功展示它能够满足你的商业需求和用户需求,接下来的部分,我们将开始着手设计生产环境。

第三阶段 – 设计生产环境

现在你已经证明了解决方案在你的环境中能够正常工作,你可以将评估阶段和试点阶段的所有发现拿出来,开始构建生产环境的设计。在这一部分,我们将讨论成功设计的主要考虑因素,讨论一些通用规则和最佳实践,然后再深入讨论存储需求的大小、可扩展性、可用性,以及如何架构解决方案。

在此之前,我们将查看一些在评估和试点阶段可能会突出显示的不同示例场景,并考虑应该部署哪些技术。

技术选择

使用 VMware Horizon 时,并没有一种单一的产品能够满足所有最终用户的需求,因此仔细考虑使用案例,并将不同的使用案例与 VMware Horizon 产品组合中可用的不同技术匹配起来非常重要。一旦你收集了评估和用户互动的关键信息,你就能围绕哪些解决方案能够满足最终用户需求做出技术决策。选择包括是否应提供完整的 VDI 桌面或发布桌面,以及如何通过 ThinApp 或 App Volumes 交付应用程序。你还需要考虑第三方解决方案及其如何集成。这些技术决策将影响最终设计。

在接下来的部分中,我们将讨论一些示例场景以及可能的技术决策,这些决策将帮助你交付一个可行的解决方案。

使用案例示例 – 场景 1

在这个示例中,最终用户位于一个全天候 24 小时运营的呼叫中心,使用 Windows 桌面访问客户关系数据库日志。他们还使用 Web 浏览器访问内部网页。这些用户按照三班倒的工作模式,每天在呼叫中心内轮班工作,他们都使用热桌面,在开始班次时利用当时可用的桌面和设备。

解决方案建议

这看起来是一个理想的 Horizon View VDI 桌面场景。然而,对于这样一个简单的使用案例,使用 Horizon View 托管桌面功能来交付这些桌面会更为合理,托管桌面功能是通过使用 Microsoft RDS 实现的。这将允许更高程度的合并和潜在的成本节约,因为你只需要提供足够的会话来覆盖三班中的其中一个班次。

如果他们不需要操作系统底层的任何功能,那么你可以仅发布 CRM 客户端应用程序和浏览器,以便他们访问内部网。

使用案例示例 – 场景 2

有几位工程用户目前使用笔记本电脑进行在线和离线工作。离线时,他们将使用定制的软件来编程机器。通常,这项工作在信号较差且没有 Wi-Fi 的区域进行。他们很少到办公室,但每周一到两次在家工作,家里有良好的互联网连接。他们还需要在能够访问互联网时访问工作分配系统。在写本书时,用户通过连接工作 VPN 并在笔记本电脑上运行 Windows 客户端应用程序来访问该系统。他们希望能够使用 iPad 或智能手机访问工作分配系统,但由于需要使用 Windows 客户端,受到了限制。

解决方案建议

这个场景突出了不适合仅使用 VDI 桌面的用户类型。如果之前你试图在这个场景中使用 VDI,可能会因为连接问题导致糟糕的用户体验。现在,借助 Horizon Suite 的多样性,你可以使用单独的组件提供一个无缝的解决方案,为用户带来真正的生产力优势。

在这个场景中,你将考虑使用 VMware Mirage 集中管理和管理笔记本镜像。这不仅可以让你在设备发生故障或丢失时存储设备的本地副本,还可以在通过互联网连接到 Mirage 服务器时更新和交付新软件。

然而,有一个关键需求,那就是需要访问一个在线应用程序,具体是一个工作分配系统。当然,你可以像现在一样交付该应用程序,但你也可以考虑使用 Horizon View 将其作为发布应用程序交付。这将使你能够通过多种设备访问该应用程序,而不必承担 VDI 所带来的第二台桌面的复杂性。你还可以考虑使用 VMware 的 AirWatch 来管理 iPad 和智能手机设备,并增加一层安全性。

使用案例示例 – 场景 3

在这个场景中,你有一个营销部门,里面有 10 个用户,所有人都在使用运行 Windows 7 的双屏桌面 PC。这些桌面通常运行相同的应用程序,但每个桌面也都有一些 IT 部门为用户安装的个别应用程序。这些用户现在希望开始使用多个 SaaS 应用程序和服务,如 WebEx,并且还希望能够在家工作。

解决方案推荐

随着 Windows 7 的支持即将结束,你需要将这些用户迁移到 Windows 10。因此,你需要检查他们的应用程序与新操作系统版本的兼容性,并在可能的情况下,尽量标准化应用程序,而不影响用户体验。如果有一些应用程序不支持最新的操作系统,你可以查看 VMware ThinApp 是否允许它们虚拟化,并在新操作系统上运行。由于用户没有离线需求,并且实际上需要在线使用 SaaS 应用程序,这似乎非常适合 VDI,并且由于桌面之间有很大的共同性,你应该尝试看看一个非持久性的 Linked Clone 池如何适用于这些用户。

你可以通过将这些常见的应用程序安装到基础镜像中,并在可能的情况下使用 App Volumes 提供个性化的定制应用程序。此外,你还应该考虑使用 Workspace ONE 来提供一个统一的工作区,用户可以通过这个工作区从一个基于 Web 的门户访问所有的应用程序和桌面。

用例示例 – 场景 4

这里有一个小型的 CAD 和工程部门,共有 10 名用户正在使用 Autodesk AutoCAD 产品。他们的上一次购买是在一年前,购买了五台带有高端显卡的工作站,以供其中一半用户使用。这些用户必须能够自行安装软件,并且在进行设计工作时,会将大量数据保存在本地。

解决方案建议

对于这种情况,有几种选择。使用 Horizon 和 NVIDIA GRID 显卡,您很可能能够为这些用户提供良好的虚拟桌面体验。使用 AutoCAD 时,用户可能需要访问 GPU,因此您需要仔细查看图形需求,并将其匹配到 vGPU 配置文件,或使用 vDGA 提供专用 GPU。

由于一半的工作站最近已经更新,您可能会建议继续使用这些工作站,直到它们需要更换,但可以使用 Horizon Mirage 进行数据保护,并管理更新和软件发布。当设备需要更换时,您可以考虑将它们替换为瘦客户端。

对于剩余的用户,您可以考虑使用持久性的虚拟桌面机器,因为他们保存了大量本地数据,并且正在安装自己的应用程序。您也可以考虑使用非持久性的桌面,并使用 App Volumes 和 Writable Volume 功能,以便他们能够保存数据并安装应用程序。一旦您为所有用户转向 VDI,就可以为远程工作提供选项。

强烈建议在 POC(概念验证)和试点阶段对该场景进行大量测试,以便您充分了解所需的图形卡类型,以及 CPU 和内存资源。

结论

我们提供的这些场景表明,没有一种适用于所有业务需求的通用解决方案。如果您试图将其中一些场景强行套入单一解决方案,最终会导致较差的用户体验。使用 Horizon 套件,您不仅可以为用户和管理员提供统一的解决方案,还可以提供多种多样的解决方案,以满足最终用户不同和多样化的需求。

准备生产环境

现在,您已经获得了关于当前环境、业务需求和目标的所有必要信息,并且已经考虑了不同的场景,以满足最终用户的需求。现在,您可以开始考虑生产环境的样子。这是一个开始变得严肃的时刻。您已经测试了您的解决方案,验证了概念,进行了用户子集的试点,建立了商业案例,并已通过审批。现在是时候开始向约定的用户群体推出了。

这将以几种方式发生,但最初,值得慢慢开始并随着时间的推移积累势头。通过这种方式积累势头,你可以确保成功,并且在过程中需要的调整较少。大爆炸式的方法会导致用户和你自己都面临困境,因为你需要考虑的问题太多。

在接下来的部分,我们将讨论如何为生产部署设计。

Horizon View Pod 和 Block 架构

我们将从讨论 Horizon View 设计的核心概念开始:Pod 和 Block 参考架构。这为所有 Horizon View 部署提供了基础。

Horizon View Pod 和 Block 架构为你提供了一种参考架构,能够支持多达 10,000 个用户。通过采用模块化的基础设施部署方式,创建单独的 Horizon View Block,每个 Block 设计用于支持最多 2,000 个用户。这些 Block 包含了支持和运行这些 2,000 个虚拟桌面所需的所有基础设施组件。

管理组件也作为一个名为管理 Block 的模块进行部署,另外还有诸如连接服务器(Connection Servers)和安全服务器(Security Servers)等主机组件。

这些 Block 按 2,000 的倍数扩展,直到达到 10,000 的上限(五个 Block)。这种由五个 Block 组成的配置被称为一个 Pod,它为你提供了一个大型、统一的虚拟桌面环境进行管理。

如果你随后将 Cloud Pod 架构引入混合环境,你甚至可以进一步扩展——总用户数可达 200,000!

现在,你可能在想,“我只需要在我的环境中创建 500 台桌面,所以这个 Pod 和 Block 架构对我来说并不重要,”但我还是建议你继续阅读并理解这个设计原则,因为它是理解如何部署 Horizon View 的核心。

如果你为 500 台桌面创建 VDI 解决方案,你仍然会使用 Pod 和 Block 架构中的概念,但规模较小,因为你只会创建一个包含单个 Block 的 Pod。然而,如果你想在其中加入灾难恢复(DR),那么这将基于该架构。下图展示了一个独立的 Horizon View Block:

正如我们之前提到的,管理 Block 包含所有 Horizon View 基础设施组件,如Connection ServersSecurity Servers,它们支持桌面 Block。下图展示了这一点:

如果你从一个 Block 开始在 Pod 中部署,你将希望确保至少有两个 View Connection Servers,以确保高可用性。

VMware 不支持跨 WAN 链接配置区块,因为用于通信的 JMS 非常容易受到网络延迟的影响。然而,从 Horizon 6 开始,VMware 增加了对云 Pod 架构的支持,允许你进一步扩展,并在多个站点之间提供高可用性。

在每个桌面区块内,除了需要多个具有足够容量的 ESXi 主机来容纳虚拟桌面机器外,还需要一个 vCenter 服务器来管理这些虚拟桌面机器。此外,还有一些未展示的其他组件。

你还需要一个 View Composer 服务器实例来部署链接克隆虚拟桌面机器,以及一个支持的 SQL 数据库,用于托管 View Composer 数据库和 View Events 数据库。这个数据库应该具备高可用性,并且应进行备份,因为 Composer 数据库会跟踪所有已构建的虚拟桌面机器。最后的需求是一个共享存储平台,可以是仅限于某个区块,也可以跨多个区块共享。

值得指出的是,从 VMware View 5.2 开始,当使用多个 Connection Servers 时,可以将一个区块扩展到 10,000 个用户,以克服 View Connection Servers 的 2,000 连接限制。然而,这会导致 vCenter Server 本身成为一个大的单点故障。你应该考虑到 vCenter 故障对业务的风险,并相应地设计架构来减轻任何故障的影响。你真的希望一次性让 10,000 个用户无法使用吗?

VMware 建议在可能的情况下,将每个 Pod 限制为 2,000 个用户,以减少故障风险。

使用单个 vCenter Server 时,你还将受到并发操作数量的限制。例如,当启动大量桌面或重新组成大量桌面池时,这将具有重要意义。如果你有多个 vCenter Server,将能进一步增加跨 vCenter Servers 执行并行操作的数量,而不像单个 vCenter Server 那样是串行操作。

在 Pod 内,Horizon View Connection Servers 配置为集群,并使用微软的轻量级目录服务和 Java 消息服务JMS)来复制其数据。VMware 建议在单个 Pod 中限制最多七个 View Connection Servers。这些服务器每个区块安装一个,再加上两个额外的区块,以便提供可用性和/或外部连接。

以下图表显示了 Horizon View 区块和 Pod 架构的高层概览,完整包括了管理区块。当在生产环境中实施时,用户将通过第三方负载均衡器连接到 View Connection Servers、Security Servers 或 Access Point 设备:

在下一节中,我们将探讨如何在多个站点之间扩展 pods,以实现灾难恢复场景,并通过配置 Cloud Pod 架构来突破 10,000 用户限制,实现更大规模的部署。

Cloud Pod 架构

在最新的 Horizon 7 版本中,Cloud Pod 架构在上一版本的可扩展性和功能集的基础上进行了扩展。现在,您可以在 10 个站点之间最多联合 25 个 pod,从而为最多 200,000 名用户提供单一的桌面解决方案。

当以这种方式连接多个 pods 时,您将能够跨两个 pod 和站点为用户授权池。因此,如果您当前已经扩展超过一个 pod,无论是为了单站点扩展,还是为了在多个站点上提供 Horizon View 环境,您现在可以通过全局用户授权层管理用户。通过全局用户授权层,您还可以在发生故障时为虚拟桌面提供灾难恢复(DR)。

您还可以配置范围设置,以决定 View 是否仅显示本地用户资源,或者在同一站点但跨 pods,或者在两个站点的所有 pods 中显示用户资源。下图展示了 Cloud Pod 架构:

Microsoft Active Directory Lightweight Service 和新的View Interpod APIVIPA)用于 pod 之间的通信。当您从 View 连接服务器的命令行启用 Cloud Pod 架构时,VIPA 将被启用,并在启动虚拟桌面时用于发送健康信息并查找现有桌面。

默认情况下,当用户连接到 Horizon View 并且拥有全局授权时,系统会根据全局授权的偏好设置,优先使用本地站点的虚拟桌面,而不是跨二级站点使用虚拟桌面。但是,管理员在创建全局授权时可以完全自定义这一点。

使用范围配置选项,您可以指定 View 连接服务器在何处查找虚拟桌面或托管应用,以满足来自全局授权的请求。您可以配置以下内容:

  • 所有站点:View 将在联盟中的任何 pod 内查找虚拟桌面或托管应用。

  • 在站点内:View 将只在与用户连接的 pod 所在的同一站点内查找虚拟桌面或托管应用。

  • 在一个 pod 内:View 将只在用户所连接的 pod 内查找虚拟桌面或托管应用。

除了这些范围之外,您还可以配置一个名为主页站点的选项。这允许您配置一个作为终端用户默认站点的站点,当用户登录时,视图连接服务器将查找该用户在主页站点中的虚拟桌面。

配置云 Pod 架构时,你还需要利用第三方负载均衡技术,以便让这种技术的优势对最终用户来说是无缝的。然而,这为我们提供了一种统一多个以前分离的 View 部署的方法。我们将在后续章节中讨论如何进行配置。

Horizon View 的 vSphere 设计

现在我们已经看过一些参考架构,是时候将注意力转向这些架构中的一些组件,特别是我们的 vSphere 虚拟化平台,并关注设计中的一些高层次考虑因素。

本书不涉及如何安装和配置 ESXi 主机的细节。但是,我们会简要讨论如何配置 vCenter Server 以及 Horizon 环境中的主机和集群的建议。

从技术上讲,完全可以使用一套基础设施、一个 vCenter Server 和一个或多个 ESXi 集群来运行 Horizon View 和虚拟服务器环境。这样做可能会在升级过程中产生多个争用点,并且增加很多困难。

正如我们之前讨论的,Horizon View 在基础设施方面分为两个区域:一个是管理区,运行 vCenter Server、View Composer 和 View Connection Server 等组件;另一个是运行虚拟桌面的区域。建议这两个组件在不同的 ESXi 主机和集群上物理分离,以最小化在高负载时期或大规模桌面配置过程中出现服务器组件性能问题的风险。从许可角度来看,这是被覆盖的,因为 Horizon 包括了 vSphere for desktop 权限,它允许你根据需要部署多个 ESXi 主机和 vCenter 服务器,以支持你的环境。

你还应该在与生产 vSphere 环境不同的 vCenter 服务器上运行 Horizon View 组件。将 Horizon View 组件分离到独立的 vCenter 服务器上,将意味着在升级任何一个环境时,优先级和前提条件的冲突会更少。

你还应该在与生产 vSphere 环境不同的 vCenter 服务器上运行 Horizon View 组件。将 Horizon View 组件分离到独立的 vCenter 服务器上,将意味着在升级任何一个环境时,优先级和前提条件的冲突会更少。以下图示展示了虚拟环境设计的一个示例:

在接下来的部分,我们将查看可以配置的最大值。

配置最大值

在构建任何 VDI 基础设施时,你会非常快速且轻松地达到产品厂商设定的配置最大值。关于 vSphere 和 vCenter Server,有一些最大值是你需要了解的。

要查看 VMware vSphere 的最新配置最大值,请参阅以下链接:configmax.vmware.com/guest

你还应当记住,Horizon View 有特定的最大值。我们将在本章稍后讨论这些限制。不要忘记,这些最大值不是要追求的目标,而是最高限制。在设计架构时,你还需要考虑丢失某个单独组件的风险,比如 vCenter Server 或 View Connection Server。

ESXi 主机服务器

在这一部分,我们将介绍一些关于可能需要的主机服务器的大小和数量的建议,这些主机服务器用于托管和支持你的基础设施。

和任何虚拟基础设施一样,你需要确保冗余是标准配置。这意味着你要确保所选的服务器具有冗余电源供应、RAID 硬盘或镜像 SD 卡用于 ESXi,并且有多个网卡以便在卡片或交换机故障时进行网络故障转移。

你还需要查看预计支持你的环境所需的主机数量,然后再增加相应数量的主机,以确保你所需的 N+容量。在大多数环境中,这通常是 N+1,这意味着你将拥有运行虚拟桌面所需的主机数量,并额外增加一台主机以应对主机故障。这可以确保任何故障不会影响最终用户。

请记住,你实际上将为两个不同的环境配置进行大小调整;一个将托管管理块基础设施,另一个将托管虚拟桌面机器。

在下一部分,我们将讨论你在设计中应考虑的一些通用要点。

ESXi 的 CPU 和内存要求

接下来我们要看的内容是 CPU 和内存的配置和建议。

超额配置 CPU 和内存资源

一条经验法则是在 VDI 环境中永远不要超额配置内存。如果在需要时没有分配内存,这可能会带来许多负面影响,最终会影响最终用户的体验。

关于 CPU,虽然最好避免过度承诺,但这显然是无法负担的。如果 CPU 过度承诺得当并且没有过度推进,通常对最终用户几乎没有影响。然而,问题是,怎样才算“不过度”?这通常取决于您在环境中运行的工作负载类型。如果您查看互联网上的各种资源,您会找到不同的答案,有些人声称每个物理核心可以支持超过 10 个 虚拟 CPUvCPU)。要真正了解在您的环境中什么是可接受的,唯一的办法是查看 CPU Ready 指标;您可以通过 vCenter、ESXTOP 或类似工具查看此指标。在查看 CPU Ready 数值时,您应该首先确保将每个 vCPU 的 CPU Ready 保持在 5% 以下,尤其是对于您的桌面环境。您的环境可能能够接受高于 5% 的 CPU Ready,但这应该仅在您的 POC 和试点阶段经过测试之后。通常,如果每个 vCPU 的 CPU Ready 高达 10%,环境将面临足够大的压力,影响用户体验。

CPU 和内存配置

您的 Horizon View 基础设施所需的主机数量通常由所需的桌面数量、这些桌面所需的 CPU 和内存、在基础设施中可以接受的 CPU 超额承诺比例,以及您能在所选主机服务器中实际安装的 CPU 和内存数量决定。

在考虑这些因素时,您应该考虑将内存和 CPU 核心的数量纳入基础设施设计中,以便在不浪费资源的前提下,做到成本效益的平衡。

选择主机服务器平台时,您还应该考虑,如果某台主机发生故障,会对业务造成什么影响。因此,有时,您可能会认为选择配备两个物理 CPU 的主机比选择配备四个物理 CPU 的主机更合适,尤其是当每个 CPU 的核心数不断增加时。

这不仅可能成为一个技术上的问题,也可能变成一个财务上的问题,并引入了是否应该选择更少、更大的服务器,还是将负载分散到更多、更低规格的服务器的规模扩展或扩展性问题。

在计算时,确保考虑到 ESXi 超级管理程序(hypervisor)运行虚拟机所需的开销,以及如果需要,为虚拟机专用的显存。

下表列出了每个虚拟机所需的一些典型开销值(以 MB 为单位):

接下来,我们将讨论网络相关的考虑事项。

网络

在你的 ESXi 主机网络设置中,通常有两个考虑因素,即是选择使用 1 Gbps 还是 10 Gbps 网卡。你也可以考虑使用 40 Gbps 网络。不管怎样,你始终需要确保至少有两张多端口网卡来分隔流量,这样才能实现你所需的弹性网络设计。至于你所需的网络速度,这将取决于你基础架构中的虚拟机局域网流量,而这完全取决于你的使用案例。

如果你要将大量高清视频媒体流传输到 VDI 桌面,那么可能需要 10 Gbps 或 40 Gbps 的速度。不管怎样,确保你真正理解网络需求,因为如果弄错了,最终用户的体验会很差。

图形

在第二章,理解 Horizon 7 架构和组件中,已经涵盖了许多关于硬件和软件图形卸载与加速选项的信息。

在你的环境中,图形需求应在项目的 POC(概念验证)和试点阶段仔细考虑和测试。你应考虑我们在前一章中提到的所有要素,然后决定在 ESXi 主机中需要什么样的 PCI 卡。用于图形加速或卸载的 PCI 卡要求将影响你选择的 ESXi 主机硬件,因为这些卡在功率和散热方面的限制,以及可用 PCIe 插槽的数量。

NVIDIA 发布了支持的服务器列表,并列出了可以配置到特定服务器中的网卡数量。你可以通过点击以下链接查看该列表:www.nvidia.com/object/grid-partners.html

存储

我们可能可以写一本关于存储考虑、设计和选项的书,特别是针对你的 VDI 环境。与网络一起,存储可能是最需要正确配置的重要领域。最明显的原因是,你不想在计划的部署过程中遇到存储不足的问题,其次,未能指定满足性能要求的存储解决方案将导致用户不满,项目失败。特别是在部署 Linked Clone 桌面时,这一点尤为关键,正如我们接下来将讨论的。

当涉及到存储时,我们需要从两个方面来看待:性能和容量。

存储容量

您的首要考虑将是为 Horizon View 环境需要多少存储空间。您需要考虑虚拟基础设施中各个元素的存放位置。首先并且相对简单的是计算所有服务器组件所需的空间。通常,服务器组件将与虚拟基础设施的其余部分存放在同一存储设备上,而桌面将存放在专用存储设备上。然而,这并非强制要求,具体取决于您所使用的存储类型以及您所希望的隔离程度。接下来,您需要根据用于部署桌面的技术来了解桌面所需的存储空间,例如 Linked Clones、Full Clones 或 Instant Clones,如果您计划使用持久磁盘存储用户数据,也不要忘记将其考虑在内。

一个重要的提醒是,不仅要考虑虚拟桌面。如果您计划通过 App Volumes 提供应用程序,那么您还需要存储 App Stacks 的空间。

使用 Linked Clones 时,您需要了解 Linked Clone 在刷新和重组操作之间的增长。以下图示提供了关于存储的一些考虑因素,涉及使用 Linked Clones 和持久磁盘的典型桌面池:

生成 Linked Clone 的副本需要位于快速存储上,可以是本地主机服务器上的存储,也可以通过 SAN 实现。为了在 Horizon View 中启用此功能,您可以选择副本存放的位置,推荐的做法是将副本存放在快速存储上,例如本地 SSD。

推荐在 POC 和试点阶段收集此类存储使用信息。一旦获取了这些信息,您将能够使用电子表格创建模型来预测存储使用情况,然后可以扩展您的环境。下表展示了一个示例 Excel 电子表格,概述了三个桌面池的存储需求:

在 POC 阶段,我们已经能够了解每个虚拟桌面所需的 Linked Clone 容量。这是理解解决方案所需总体容量的关键组成部分。

这现在引出了存储故事的另一个部分,即存储性能。

存储性能

一旦你确定了 Horizon View 环境所需的容量,就可以开始考虑你的性能需求了。像往常一样,建议你在 POC 和试点阶段了解你的性能需求,并用这些数据来调整存储容量。在检查虚拟环境时,你需要尽量将读取和写入延迟保持在最低,以保证良好的用户体验。可接受的延迟量将大大取决于用户的工作负载以及他们所使用应用程序的容忍度。然而,将平均延迟保持在 25 毫秒以内通常能为用户提供良好的体验。

问题是,如何确保你能够提供这种类型的性能?首先要考虑的是部署某种形式的存储加速技术,以驱动 IOPS 需求。Horizon View 还提供了一个集成的解决方案,叫做视图存储加速器VSA)或基于内容的读取缓存CBRC)。该功能允许你从底层的 ESXi 主机服务器中分配最多 2 GB 的内存,这些内存可以用作最常读取的块的缓存。因为我们讨论的是启动桌面操作系统,所需的块是相同的,并且由于这些块可以从内存中获取,整个过程得以加速。

请记住,在使用 Instant Clones 时不需要 CBRC。

另一个解决方案是使用视图组合器数组集成VCAI),它允许将内建的链接克隆卸载到存储阵列及其原生快照机制中,而不是占用主机服务器的 CPU 周期。

Instant Clones 不支持 VCAI。

还有一些其他的第三方解决方案可以解决存储性能瓶颈并提高整体存储 I/O。这些是软件定义的解决方案,如 ThinScale ThinIO,或基于硬件的解决方案,如部署全闪存阵列。那么问题是,你需要多少 IOPS?

与每个核心可以配置多少虚拟桌面机器的问题类似,关于 IOPS 的问题的答案也是“视情况而定!”如果你阅读一些关于这个主题的指南和白皮书,你可能会看到类似于 Windows 7 需要 20 到 25 IOPS 的说法。这对于稳定状态可能是正确的,但在磁盘活动高峰期又如何呢?你了解需要多少 IOPS 的唯一方法是通过分析你的评估报告数据。

以下图表展示了一个示例存储环境,其中显示了桌面启动时的示例工作负载。用户登录后继续使用桌面。在纵轴上,你可以看到 IOPS,横轴上则显示时间。

如你所见,启动风暴是高度读密集型的,而登录风暴和稳定状态则是高度写密集型的。你需要根据你的评估数据适当调整容量:

虽然桌面可能只需要 25 IOPS,但运行在该桌面上的应用程序呢?这些应用程序会需要多少 IOPS?您不希望在部署解决方案后才发现这个问题。

还有关于读取和写入之间 IOPS 分配的争论。通常引用的分配比例是 80:20,即 80% 为写入,20% 为读取,但这一比例会根据您的环境而有所不同,实际答案将体现在您的评估数据中。结果可能是 70:30,甚至 60:40。

由于 IOPS 要求是资源配置中的关键因素,并且可能会影响虚拟桌面机的性能,因此您需要正确配置这一点。让我们仔细看看一些实际的资源配置计算。

在进行资源配置时,往往会忽视 RAID 惩罚或写入磁盘时的 IOPS 惩罚。这意味着对于每次读取操作,会有多个写入操作发生,具体取决于使用的 RAID 级别。

在我们的示例中,假设使用 RAID 5,其写入惩罚为 4,且您需要以 60:40 的读写比提供 200 IOPS。为此,您可以使用以下公式进行计算:

回到我们的示例,计算可能如下所示:

在此示例中,您需要配置一个 RAID 5 阵列,以满足所需的 600 IOPS。

一旦您了解了 VDI 环境所需的性能和容量,就可以浏览市场,找到适合您的解决方案。

Horizon View 设计细节

现在我们已经看过了基础设施中的一些更通用的元素,以及将支持您环境的 vSphere 平台,接下来是时候将注意力转向 Horizon View 特定组件的基础设施了。

让我们先看看这些组件的需求,再来考虑实际配置 VDI 桌面的资源。

Horizon View 连接服务器

View Connection Server 是一款安装了 Horizon View 应用程序的 Windows Server。在这个例子中,该应用程序将作为 View Connection Server 角色运行。此服务器将作为虚拟机托管在管理块上,并有推荐的配置,如下表所示:

如前所述,如果这是仅限少量用户的 POC 或试点,您可以将配置降低到可能的两个 vCPU 和 4 GB 内存。之后无法调整配置,这也是为什么如果您希望直接进入生产环境而不重新安装系统,就必须适当配置的原因。

Horizon View 副本服务器

View Replica Server 本质上与 View Connection Server 相同,因为它作为主 Connection Server 的备份。因此,其大小应与 View Connection Server 相同。

Horizon View 安全服务器

与 Replica Server 相同,Security Server 也是 Connection Server 的另一种角色,意味着它的大小应该与这些组件相同。

Horizon View 注册服务器

同样,注册服务器是 Connection Server 的另一个角色,意味着它的大小应与这些组件相同。

Horizon View Composer

View Composer 与 Connection Server 角色略有不同。它可以安装在 vCenter Server 所在的同一服务器上,也可以作为独立服务器安装。通常,为了性能考虑,或者在使用 vCenter Server Appliance 时,会选择将其作为独立服务器安装。View Composer 的配置建议在下表中详细列出:

vCenter 服务器

使用最新版本的 Horizon View,你可以通过单个 vCenter Server 管理所有 10,000 个用户。然而,这可能不是最佳方式,因为如果 vCenter Server 故障,便没有故障转移机制。vCenter Server 的配置建议在下表中详细列出:

VMware 访问点

VMware 访问点是基于 Linux 的设备,而非 Windows 应用程序。因此,它是通过 vCenter Server 部署的。作为设备,其配置是固定的,建议不要更改配置。你需要足够的空闲资源来托管它,具体要求详见下表:

在下一节中,我们将讨论 Horizon View 组件的配置最大值。

配置最大值

除了本章前面列出的 vSphere 配置最大值外,你还需要注意 Horizon View 的具体配置最大值。我们已经在下表中列出了需要考虑的一些更重要的配置最大值:

在接下来的章节中,我们将探讨托管虚拟桌面机器所需的其他支持基础设施,从网络需求开始。

网络

网络优化对于提供用户良好的体验非常重要,因为这将决定他们的虚拟桌面机器如何交付。你需要考虑几个不同的因素来确定网络的大小。

首先,你需要回顾一下你的不同使用场景,特别注意终端用户将从哪里连接,以及他们是通过局域网(LAN)、广域网(WAN)还是互联网连接。虽然从网络角度来说,你无法对互联网用户做出任何改变,但你可以配置策略,限制一些可能会消耗更多带宽的功能和特性。

关于带宽,让我们更深入地看看你需要考虑的事项。

在谈到带宽时,常常会问到需要多少带宽的问题,而答案再次取决于终端用户在做什么,这反过来决定了他们的带宽消耗量。这是评估数据将告诉你的内容,但 VMware 发布了一些指导性数字,见下表:

前面表格中的数据指的是整体带宽要求,但根据可用的带宽,这也将决定音频带宽,并最终影响音频质量。以下表格对此进行了概述:

请注意,如果你无法提供至少满足音频的最低带宽要求,那么该会话中的音频功能将被禁用。

然而,你可以进行配置更改以增强终端用户体验。通过使用 Windows 组策略,PCoIP 协议可以完全配置,这样你就可以根据需要调整用户体验。我们将在第十章中深入讲解如何调整和优化虚拟桌面机器,精细调整终端用户体验

在考虑你的视图的网络时,还有两个其他因素需要注意。第一个是连接的延迟。

我们之前讨论了带宽及不同使用场景的要求,但延迟也会对终端用户体验产生重大影响。通常,最大容忍度为 250 毫秒到 300 毫秒之间,才能达到可接受的性能。超过此范围可能仍然能够工作,但可能导致用户体验下降,这取决于使用场景。例如,与重度用户相比,普通办公室工作者可能会感觉良好。再次强调,这些信息是通过与你的终端用户进行试点后得出的。

第二个是连接服务器之间的负载均衡,我们将在下一部分讨论。

负载均衡

Horizon View 的另一个要求是,在 View 连接服务器之间使用负载均衡器,无论是内部连接还是外部连接。这不仅允许你扩展你的解决方案,而且还提供高可用性,以防出现故障。

应注意,Horizon View 中并未包含负载均衡功能。因此,您将需要第三方负载均衡器。在小规模和 POC 部署中,您可以使用 Microsoft 网络负载均衡 (NLB),但当您的解决方案从 POC 阶段过渡到试点阶段时,您应考虑需要专用的物理或虚拟负载均衡器。

在选择负载均衡器时,您需要确保它能够提供会话保持功能。这可以确保已连接的用户在会话期间始终被引导到相同的视图连接服务器或视图安全服务器。您还应确保所实现的负载均衡解决方案具有高可用性。下图展示了 Horizon View 的典型负载均衡解决方案如何配置:

如您所见,配置了多个 VMware Horizon 连接服务器,用于内部和外部连接。内部连接服务器通过一对高可用性的负载均衡器进行负载均衡。外部也有两个视图连接服务器,每个服务器与一个专用的视图安全服务器配对。然后,这些视图安全服务器通过一对专用的高可用性负载均衡器进行负载均衡。还可以选择部署访问点,以取代视图安全服务器。

远程桌面会话主机 (RDSH) 设计考虑事项

自 Horizon View 6 以来,VMware 已支持使用 Microsoft RDS 来交付托管桌面会话,而非完整的虚拟桌面机。托管桌面完全支持 PCoIP,而以前虽然支持基于会话的桌面,但仅支持使用 RDP 作为传输协议。

除了支持 RDS 作为桌面来源外,您还可以使用 RDS 服务器将发布的应用程序呈现给用户。这被称为 Horizon View 托管应用程序。在第十一章,使用 Horizon 7 发布应用程序,以及第十八章使用 Horizon 7 发布桌面中,我们将讨论托管桌面会话和托管应用程序。在这些章节中,我们将研究如何安装和配置这些功能,但现在,让我们集中关注基于 RDS 的环境设计考虑事项。

Horizon View 使用农场的概念,将主机放置在农场中,以为用户提供一组公共应用程序或桌面。在创建应用程序或桌面池时,您将指向您创建的特定农场。一个农场可能包含 1 到 200 个 RDS 主机。

使用 Horizon View 时,RDS 服务器可以是物理的或虚拟的。设计虚拟环境中的 RDS 服务器时需要考虑一个重要的点,即确保不要将虚拟 CPU 过度分配给底层的物理 CPU。以下图示中,我们将尝试说明原因:

使用 VDI 时,通过将虚拟 CPU 分配给物理核心,可以实现良好的资源整合。使用 RDS 时,通过将用户分配到物理或虚拟核心上,也可以实现良好的资源整合。如果你将虚拟 CPU 分配给物理 CPU 过多,最终会导致终端用户的性能不佳。和往常一样,你不希望将内存过度分配作为标准设计的一部分。

如果你使用 RDS 发布应用程序,你需要考虑关于应用程序部署的设计。所有应用程序会部署在一个服务器集群上,还是不同的应用程序会部署在不同的服务器集群上?你需要考虑每个 RDS 服务器所需的资源,如 CPU、内存和磁盘,这取决于它们的工作负载。

还需要考虑根据你的应用程序和桌面设计需要多少 PCoIP 或 Blast Extreme 连接。在以下图示中,你可以看到最终用户有一个 View 虚拟桌面,并且还在运行来自服务器集群 A的应用程序以及来自服务器集群 B的另一个应用程序。总的来说,这个用户将使用三条连接——一条用于 View 虚拟桌面,一条用于来自服务器集群 A的应用程序,一条用于来自服务器集群 B的应用程序。因此,你需要确保了解一个 View 连接服务器的最大连接数,并决定如何扩展解决方案以满足你的设计需求:

使用 RDS 时,连接服务器支持最多 150 个会话,基于 4 个 vCPU 和 64 GB 内存的配置。

请注意,你也可以使用 Horizon Workspace ONE 来将发布的应用程序提供给虚拟桌面或物理桌面。你的 VDI 或 RDS 桌面可以位于与托管应用程序不同的 View 环境中。

支持基础设施设计

除了虚拟基础设施组件——在此我们指的是 VMware 特定组件——还有一些其他组件或第三方工具和服务是 Horizon View 所依赖的,接下来我们将讨论这些内容。

数据库要求

Microsoft SQL Server 或 Oracle 数据库是 View Composer、View Events 数据库以及 vCenter 的关键组件。如果 View Composer 数据库不可用,View 将无法执行任何配置或重组操作。因此,您可能需要考虑数据库服务器的可用性,并根据块架构划分环境,以便每个块使用一个数据库服务器。您还应确保定期备份并保持 View Composer 数据库的最新备份,以防丢失或损坏。

Horizon View 支持多种不同的 Microsoft SQL 和 Oracle 数据库。最新的支持矩阵可以在以下链接找到:bit.ly/2QyH362

文件服务器

在创建 Horizon View 环境时,文件服务器常常被忽视,但它们在 VDI 环境的整体功能中往往起着至关重要的作用。

例如,它们将存储像 ThinApp 包、用户配置文件或来自 App Volumes 的应用程序层。首先,针对性能对文件服务器进行规划,确保文件服务器有足够的内存和 CPU 来满足用户需求,特别是在高峰时段,然后持续监控资源利用率,并确保在需要时增加额外的容量。

这不仅仅是关于 CPU 和内存性能——与文件服务器相关的硬盘性能也将至关重要。

由于您的应用程序和用户配置文件保存在文件服务器上,我们需要考虑当用户尝试使用桌面时,这些资源不可用的影响。对于分层应用程序,如果文件服务器离线,App Volumes 应用层可能无法附加,或者在用户使用应用程序时可能会失败。由于最终用户的配置文件存储在文件服务器上,这可能会对用户访问其数据产生严重影响,或者可能会有未考虑到的影响,例如应用数据无法加载或桌面性能下降。

因此,如果您计划使用支持 CIFS 共享的共享存储设备,则需要认真考虑文件服务器的可用性。您可以考虑将这些文件存储在该设备上;否则,可能需要考虑使用集群文件服务器或 DFS 共享来确保可用性。当然,这些决策需要根据业务需求做出。如果您的 View 环境最初较小,并且文件服务器存储在虚拟环境中,那么内建的高可用性(HA)功能可能足以满足您的需求。

IP 地址规划

在 VDI 部署中,IP 地址、子网和 DHCP 要求常常被忽视。在大型公司中,你通常会使用多个子网,将不同区域通过 VLAN 分隔。当你开始逐步扩展部署时,有时容易忘记,直到为时已晚,你的子网或 DHCP 范围可能不足,导致 IP 地址耗尽。

你需要考虑如何配置 VDI 桌面和 IP 方案。默认情况下,通过 View Administrator,只能为每个池分配一个网络标签。因此,当桌面被部署时,它们将使用黄金镜像配置使用的相同网络标签。然而,也可以通过 View PowerCLI 为池配置多个网络标签。

Horizon 7 支持 IPv6,但请注意,当你配置 Horizon View 基础设施组件(如连接服务器)时,必须选择 IPv4 或 IPv6 中的一种,而不能混合使用。Horizon View 组件之间混用 IP 版本是不被支持的。

防病毒

防病毒常常成为良好 VDI 设计的克星。如果防病毒解决方案未能理解 VDI 解决方案的共享性质,往往会成为整个环境中性能问题的根源。

在任何优化桌面解决方案中,首要考虑的是确保你优化了防病毒解决方案,以考虑到用户的使用场景和他们正在使用的应用程序。在 VDI 解决方案中,你通常希望提供适当的资源,以确保它能够满足用户需求,同时不会过度提供资源,从而对解决方案的整体成本产生连锁效应。我们亲眼见过在 VDI 环境中,防病毒配置错误时,所需的 CPU、RAM 和磁盘资源是正常的两倍。显然,这会对整个解决方案的成本产生巨大的影响,最终也会影响你在预算范围内交付项目的能力。

其次,需要考虑全面的桌面扫描。你需要考虑是否需要对桌面进行全面扫描,尤其是当它们每天都在刷新时。如果全面的防病毒扫描是一个明确定义的需求,确保它们在非工作时间运行,并在桌面之间错开进行。所有桌面同时开始扫描会影响 RAM、CPU 和 IOPS 的消耗,并可能导致环境中产生连锁效应。

活动目录组策略

一如既往,组策略对你的桌面有重要影响,无论它们是物理桌面还是虚拟桌面。在设计任何 EUC 解决方案时,设计组策略时应该考虑三个主要方面,即功能性、锁定和性能。

功能性

组策略可以是你最好的朋友,尤其是在实施非持久性桌面时。正确配置后,你应该利用组策略来配置桌面的首次使用设置和 Microsoft 应用程序的设置,同时也要配置显而易见的登录脚本和映射驱动器。

锁定

使用组策略来锁定虚拟桌面可以在 VDI 环境中提供优势,特别是对于非持久性桌面,在这些桌面上你不希望用户将文档保存在无法重定向的区域,或将自定义内容保存在可能无法保存的位置,但这也可能带来一些负面影响。我们的建议是,在新的 VDI 环境中,尽量不要利用新 VDI 基础设施的实施机会来引入新的严格锁定措施。通常,当这些严格的锁定措施与 VDI 同时实施时,任何由新锁定措施引起的中断或用户体验下降都会被归咎于 VDI 解决方案。

如果需要实施新的严格锁定策略,最好是在迁移到 VDI 之前先在物理桌面上实现,或者先实施 VDI 解决方案,再引入新的锁定措施。

你还会发现,当一次性引入过多更改时,特别是在涉及用户可以访问和不能访问的内容时,可能会很难排查问题所在。可能是多了一个策略。

性能和管理

我们不会在本书中写关于如何配置组策略以实现最佳性能的 A 到 Z 指南。互联网上已有多个关于此主题的资源和文章。然而,我们建议你保持对组策略的关注,确保尽可能移除不必要的旧策略。使用功能性设计,将 GPO 按功能分组,但不要过度创建每个设置一个 GPO。这样可以确保管理的简便性,并减少在更改时对性能的影响。

密钥管理服务器(KMS)

为了确保 Windows 和 Office 的重组操作之间的许可激活无缝进行,Microsoft KMS 在你的 VDI 设计中至关重要。你的桌面将通过 DNS 或手动分配来找到 KMS,你可以将其预配置到基础镜像中,然后为其分配相关密钥以完成激活。

如果你希望通过 KMS 服务器激活 Microsoft Office 产品,你还需要在 KMS 服务器上安装 Microsoft Office 2013 批量许可包。你可以从 Microsoft 下载中心下载此包。

Microsoft KMS 可以快速且轻松地作为 Windows Server 和早期版本 Windows 中的一个角色进行配置。作为配置的一部分,你将需要从 Microsoft 获得 KMS 许可证密钥。此密钥将在配置过程中使用,KMS 需要通过网络或电话激活。角色配置完成后,你可以开始使用 KMS 推出和激活桌面。但是,你应该注意,在 KMS 正式启用之前,激活的客户端机器有一个 25 台的阈值。如果你想尝试此操作,确保你的第一个池包含大于 25 台的机器。一旦达到阈值,你就可以逐个激活单台机器(如有需要)。

打印

打印通常是一个棘手的问题,与任何 VDI 或 RDS 一起工作时,往往更加复杂。Horizon View 包含了 ThinPrint 技术,允许在从桌面池进行打印时进行多种配置。我们在第二章中详细介绍了 ThinPrint,理解 Horizon 7 架构与组件

然而,通常情况下,最简单的解决方案是实现一个随行打印解决方案。像 PaperCut 这样的解决方案可以让用户将文件打印到一个虚拟的随行打印机。然后,他们可以通过本地释放站或兼容打印机释放文件,具体说明见下图:

瘦客户端和其他终端设备

我们将在第十二章中讨论瘦客户端以及最终用户如何连接到他们的 VDI 桌面,Horizon 客户端选项

桌面设计考虑因素

你可能认为,在考虑和设计完我们之前提到的所有元素之后,艰苦的工作已经结束。实际上,这只是刚刚开始。没有桌面的 VDI 解决方案仅仅是一个虚拟基础设施,桌面的设计和功能对于成功的实施至关重要。在 Horizon View 中,我们需要做出大量关于桌面设计的选择。这将受到用户如何使用桌面方式的影响,并可能对你管理桌面及其所需资源的方式产生连锁反应。

池设计

你需要根据桌面之间的相似性来设计桌面池,这将最终帮助你将桌面分组。你应使用桌面评估和其他来源收集的信息来开始设计桌面池的布局。在分析这些数据时,你需要寻找应用程序和使用场景之间的相似性,并根据如何设计这些池的信息做出决策。为了简化管理和维护,你应尽量创建最少数量的池,但也不希望将这个原则执行到极限,不要将数千个桌面放入同一个池中,因为重新组合如此庞大的池,包含大量虚拟桌面机器,可能会很困难,并且可能影响性能。如你所见,正确设计池将是一项非常精细的平衡工作。

配置虚拟桌面机器

以下表格列出了一些基础桌面配置的建议,这些建议来自于不同的 VMware 文档。显然,桌面所需的资源将受到桌面内使用的应用程序的极大影响:

在本章中,我们已经涵盖了一些高级的主机服务器考虑事项,但现在,既然你已经了解了部署桌面所需的资源,你可以进入下一个层次的细节,查看 CPU 的时钟速度,并确定你需要多少台主机服务器,同时考虑 RAM 的需求。

为虚拟桌面配置主机服务器的 CPU 要求

在为承载虚拟桌面机器的服务器配置时,最常被问到的问题之一就是,如何计算每台主机服务器可以容纳多少虚拟桌面,或者每个核心可以支持多少虚拟桌面?答案是,这取决于!

首先,这取决于你的桌面将消耗多少 CPU 资源,答案只有通过你的评估数据才能得出。

第二,更显而易见的是,这将取决于你在主机服务器中配置的 CPU。这通常是根据价格/性能来选择的,因为通常有一款 CPU 在财务上更为合理,并且能够提供最佳的每台桌面的成本效益。

由于在这一部分,我们没有实际的评估数据可供参考,我们将假设不同类型用户的 CPU 需求,并根据每种类型用户的需求做一个示例。用户被分为轻度使用、中度使用和重度使用三类。我们将以一台行业标准的机架式服务器为基础,该服务器配置了两颗 Intel Xeon E5-2660 v3 CPU,运行频率为 2.6 GHz,每颗 CPU 有 10 个核心,总共提供 20 个核心。

在示例计算中,您还会注意到我们从主机服务器的可用核心总数中减去了两个核心。这是因为虚拟化层(ESXi)也需要 CPU 资源来运行。

以下部分将对典型用户配置文件进行分类,并给出每个核心比率及其计算方法。

轻度用户

典型的 CPU 资源利用率约为 300 MHz。此外,还值得增加一些额外资源,以应对工作负载的高峰期及其他任务,例如声音和 USB 设备。对于本示例,我们将 300 MHz 增加 10%。

这种用户类型的配置文件通常是呼叫中心的工作人员、管理员或基本的网页浏览器型用户。这些桌面可能会长时间挂起,且利用率极低,仅运行一两个轻量级应用程序。我们可以通过以下快速计算来确定 CPU 需求:

在此用户场景中,使用我们之前描述的标准服务器,您可以托管大约 141 台虚拟桌面,达到每个核心大约 17 个用户。

中度用户

典型的 CPU 资源利用率约为 500 MHz,再加上 10%。这种用户可能是数据录入员、医生、学生、Microsoft Office 用户或帮助台操作员。这些桌面主要在工作时间使用,且不会被大量利用。我们可以通过以下快速计算来确定 CPU 需求:

在此用户场景中,使用我们之前描述的标准服务器,您可以托管大约 85 台虚拟桌面,达到每个核心 5 个用户。

重度用户

典型的 CPU 资源利用率约为 750 MHz,再加上 10%。这种用户可能是开发人员、系统管理员、IT 工作人员、数据库管理员或工程师。这些桌面可能会在一天中以及正常工作时间后被大量使用。它们也可能运行更多图形密集型或基于 Java 的应用程序,增加桌面的利用率。我们可以通过以下快速计算来确定 CPU 需求:

在此用户场景中,使用我们之前描述的标准服务器,您可以托管大约 65 台虚拟桌面,达到每个核心 3 个用户。

我们在之前的用户场景中所突出显示的内容是基于假设和示例用例的。这时,您的评估数据变得至关重要,因为它将告诉您自己环境中的实际资源需求数据。

为虚拟桌面运行配置主机服务器内存要求

为托管虚拟桌面机器的服务器配置内存要比配置 CPU 容易一些,尽管你可能需要与所选服务器进行一定的平衡。原因在于,虽然从 CPU 的角度来看,服务器能够容纳一定数量的桌面,但它可能没有足够的内存容量来支撑这些桌面。

如果你拿一台需要 2GB 内存的虚拟桌面,按照前一部分的轻度用户场景来举例,你将托管 141 台虚拟桌面机器。这意味着主机服务器仅需 282GB 的内存来托管这些虚拟桌面机器,还需要足够的内存来运行虚拟化管理程序。

根据你选择的服务器硬件,你可能无法配置所需的内存量,或者它可能太昂贵,在这种情况下,你可能最终会部署更多、更低配置的服务器。

别忘了,在为虚拟桌面机器配置和调整内存时,切勿过度分配内存,并将内存预留设置为 100%。这样可以防止交换文件的创建,节省存储容量,并提高性能。

Linked Clone(连接克隆)、Instant Clone(即时克隆)或 Full Clone(完全克隆)

正如我们在第二章《理解 Horizon 7 架构与组件》中讨论的那样,有三种方法可以通过黄金镜像来构建虚拟桌面:Linked Clones(连接克隆)、Instant Clones(即时克隆)或 Full Clones(完全克隆)。 简单回顾一下,Linked Clones 通过将黄金镜像复制到一个精简配置的副本虚拟机中来创建。这个虚拟机的大小与黄金镜像中已用空间相同;所有读取操作都来自这个虚拟机,无论我们在池中有多少桌面,在限制范围内,每个桌面都会有一个用于写入的增量磁盘,直到 Linked Clone 被重组、刷新或删除。Full Clone 则完全按照字面意思创建,代表黄金镜像的完整副本,并消耗相同的存储空间。最后,Instant Clones 本质上是对正在运行的虚拟桌面机器的内存进行快照。

因此,为了在可能的情况下节省我们的存储设备空间,Linked Clones(连接克隆)或 Instant Clones(即时克隆)是最佳选择。然而,有一些重要的使用场景,在这些情况下使用克隆是没有意义的,例如那些无法进行常规刷新或重组的桌面。

如你所见,尽管从外部来看,克隆可能是最具吸引力的,并且应该能够被广泛使用,但它们并不总是可行的或是最佳的设计选择。当你的设计使用了 Full Clone 桌面时,你应该仔细考虑你的存储设计,使其与此设计选择相一致。许多存储厂商提供重去重、压缩和单实例存储,使你能够最小化这类桌面对存储的影响。

持久性与非持久性

除了决定是使用联动克隆还是完全克隆外,你还需要决定是否使用持久性桌面或非持久性桌面。对于持久性桌面,用户会被分配到一个桌面,无论是手动分配还是自动分配,并且在连接到桌面池时总是会被引导到该桌面。对于非持久性桌面,用户将被引导到给定池中的任何桌面。在许多设计中,联动克隆和即时克隆桌面将被配置为非持久性桌面,而完全克隆桌面将被配置为持久性桌面,但这并非总是如此,具体取决于你自己的特定用例。

推荐的做法是,在可能的情况下,利用按需构建的非持久性桌面,使用联动克隆或即时克隆。用户的个人资料将通过 View Persona Management/UEM 或 AD 组策略来配置桌面。应用程序将通过 App Volumes 来交付。这为你提供了最简便的方式来维护和刷新桌面,对用户的影响最小。如果你的设计不允许这种方式,请仔细考虑你的用例;如果由于数据或桌面中的配置需要配置持久性桌面,请考虑是否通过 Horizon Mirage 来管理完全克隆的持久性桌面,以进行保护和维护,可能会是一种更好的方法。

构建复合桌面

灵活的桌面设计的关键在于能够以层次的方式构建和定制桌面。在这个上下文中,层次是指桌面的各个组成部分,如操作系统、个性化设置和应用程序。

通过实现这一点,桌面不仅可以更加灵活,使一个基础映像可以用于更多的用户或池,还可以让你配置更多的联动克隆或即时克隆桌面池。以下截图显示了一个用户的桌面,以及所有关键元素的控制和管理位置:

显示关键组件的桌面

基础层

你的基础层将包括一个经过优化的操作系统,已经根据你的业务需求进行了配置。代理程序,如 View 代理和 AV,将被安装到基础映像中,以及任何应用程序。你需要决定哪些应用程序应该安装到基础映像中,哪些应用程序将通过其他方式提供。通常,将安装到基础映像中的应用程序是整个组织或完整池中使用的应用程序,如 Microsoft Office 套件。你还需要考虑应用程序的性质;如果某个应用程序由于包含驱动程序或与外壳集成而无法使用 ThinApp 虚拟化,这些应用程序也需要安装到基础映像中。

你需要确保基础镜像的正确性,特别是如果你使用的是链接克隆或即时克隆,否则你可能会很快创建数百个配置错误的桌面。

应用程序

你还需要制定一个应用程序交付策略。这将详细说明如何将每个应用程序交付给最终用户。有些应用程序将作为基础操作系统的一部分交付,而其他应用程序可能通过 ThinApp 打包,或使用 App Volumes 层叠交付。

还有一个选项是 Workspace ONE,它提供一个基于 Web 的门户,包含其他应用程序交付方法,如 Citrix XenApp 或基于 SaaS 的应用程序。

用户配置文件和用户环境管理

最后,让我们来看看如何在桌面上交付个人资料或用户的配置文件。可以将个人资料视为使桌面个性化的一切;例如,应用程序设置、我的文档内容以及桌面上的图标。实现这一目标有多种方式,包括重定向的配置文件、组策略、View 个人资料管理、VMware UEM 和其他第三方产品,如 Liquidware Labs ProfileUnity。尽可能保持解决方案简单,避免结合第三方产品,通常是减少管理开销的最简单方法。然而,根据所需的定制级别,你可能需要引入第三方解决方案来实现这种定制。

使用 View 个人资料管理时,用户的配置文件通过一组组策略被重定向到专用的文件服务器。当用户登录到其 VDI 桌面时,配置文件的部分元素会根据需要从文件服务器下载到 VDI 桌面。因此,一旦文件从配置文件中被调用,它会被缓存到本地 VDI 桌面以供未来使用。对配置文件的任何更改都将存储在本地 VDI 桌面上,但会定期上传回文件服务器。

灾难恢复和备份

和任何解决方案一样,全面了解备份和灾难恢复选项是至关重要的。使用 Horizon View 时,你需要理解多个领域的备份和恢复选项,以及在发生灾难恢复事件时可以使用的选项。

备份和恢复选项

你需要确保在 Horizon View 解决方案中进行备份的几个元素如下:

  • View 连接服务器

  • View 安全服务器

  • Microsoft 轻量级目录服务

  • View Composer 数据库

  • vCenter 数据库

  • vCenter 服务器

  • 包含 ThinApp、View 个人资料数据、UEM 和 App Stacks 的文件服务器

  • 黄金镜像

  • 完整克隆和持久桌面镜像

正如你所看到的,你需要确保每天(如果不是更频繁的话)保护的多个区域。

通过 Horizon View 管理员,你可以配置 LDAP 存储库和 View Composer 数据库的定期备份。这些将被备份到 View 连接服务器上的以下位置:

C:\Program data\VMWare\VDM\backups

你应该确保这些备份文件定期备份到外部备份解决方案。我们将在第四章中探讨 View LDAP 存储库和 View Composer 数据库的配置与恢复,安装与配置 Horizon 7 - 第一部分

强烈建议所有服务器组件都受到某种形式的备份软件保护,例如 Veeam 备份与复制,或 VMware 数据保护。如前所述,你可以考虑使用 Horizon Mirage 保护并维护完整克隆。

灾难恢复选项

由于 Horizon View 与 View Composer 和 vCenter Server 的集成,不建议或不支持将 View 环境从生产站点复制到灾难恢复站点。同样,Horizon View 也不支持与 VMware SRM 一起使用。你需要确保为你的 Horizon View 环境设计一种不同的灾难恢复策略。你可以考虑为 View 提供灾难恢复的几种方法,但我们现在只讨论其中一种。

首先,我们需要考虑对 View 环境重要的组件。通常,这些组件包括以下内容:

  • 用户个人资料

  • ThinApp 应用程序或应用层

  • 黄金镜像

  • 完整克隆桌面

如果在灾难恢复(DR)站点有这些组件,那么你可以相对轻松地在 DR 站点恢复你的 View 环境。DR 站点将配置一个专用的 View 环境,并预先配置所有必需的组件,如 vCenter Server、View 连接服务器和 View 安全服务器。接下来,你需要了解在 DR 事件中,如何部署为你的业务需求定制的 VDI 解决方案。

由于用户的个人资料、ThinApp 应用程序和 App Volumes AppStacks 都位于文件服务器上,你可以考虑使用像微软的分布式文件系统复制DFSR)或类似的技术。这允许你在生产站点和灾难恢复站点都拥有该数据的副本。

一旦你将 ThinApp 包、AppStacks 和个人资料放置在 DR 站点,你需要了解如何提供桌面。由于桌面将从黄金镜像中推出,因此你应该考虑利用存储设备中集成的复制功能,将黄金镜像从生产站点复制到 DR 站点。你甚至可以使用一种原始的方法,将黄金镜像导出为开放虚拟化格式OVF),然后将其移动到 DR 站点。接着,你可以在 DR 站点重新组合桌面池。

对于完全克隆桌面,因为这些只是标准的虚拟机,你可以考虑直接从 SAN 复制这些虚拟机,并利用 SRM 在灾难恢复站点上将其挂载,准备重新加入到 Horizon View 中。

最后,你应该考虑在发生故障时,用户将如何连接到你的灾难恢复站点。这可以是让用户将他们的客户端设备连接到一个不同的地址,或者你可以利用全球负载均衡技术将常规的 URL 重定向到灾难恢复站点。

正如你所看到的,为你的 Horizon View 解决方案建立一个灾难恢复站点并没有简单的解决方案,但如果你将其分解到组件级别,你可以轻松配置一个方案,在需要时为用户提供桌面和相关文件。你还可以考虑利用云 Pod 架构,帮助实现跨站点管理,支持生产和灾难恢复之间的用户管理,并部署全球命名空间,使 View 能够将用户引导到适当的桌面资源。

VMware 还能够作为服务提供桌面,作为其 Horizon Air 云托管桌面和应用服务的一部分。你可以考虑以某种方式利用这项技术,为你的本地 Horizon View 环境提供灾难恢复。

示例解决方案场景

为了结束本章内容,我们希望给你一个现实场景的示例,让你有机会将我们在本章中讨论的所有元素付诸实践,看看它们如何组合在一起。你会看到我们已构建了一个模拟场景,阅读它并做一些笔记,思考你会配置哪些元素,以及你会如何设计生产环境的架构。

我们将基于一个虚构公司 PVO Engineering Inc.的需求,构建一个 VDI 解决方案的示例设计。以下是该公司当前网络环境和位置的拓扑图:

公司有三个办公地点:一个总部办公室和两个远程应用开发团队的站点。为了服务这些地点,他们有两个运行活跃/活跃模式的数据中心。数据中心 A 支持移动和总部工作人员,而数据中心 B 支持应用开发团队。在数据中心出现故障时,每个数据中心都能支持整个环境。

最终用户需求

在这个示例中,我们已经进行了评估,收集了当前用户安装基数为 5,750 个用户的信息,并绘制了用户类型及其需求,以及用户的位置。详细信息如下表所示:

我们现在已经收集了关于不同类型用户及其需求的信息,可以开始考虑如何将这些需求传递给最终用户。

应用程序开发人员

在示例场景中,有两个远程开发站点,但从网络拓扑可以看出,它们是基于 WAN 并连接到数据中心 B。它们仅在办公室内使用桌面,因此不需要外部访问权限。

然而,他们确实需要在其桌面上安装软件的能力。为了实现这一点,在这个示例场景中,我们配置了一个带有持久性桌面的专用池。另一个选项是配置浮动的非持久性桌面,并使用 App Volumes 交付可写卷,以便用户将应用程序安装到这些卷中。

无论你选择哪个选项,虚拟桌面本身的内存规格都需要很高。

办公室工作人员

这些终端用户是你的基础任务工作者,需要一个基础的桌面配置(2 个 CPU 和 2GB 内存)。他们也是非持久性虚拟桌面的理想候选人。核心的 Office 应用程序将作为基础镜像的一部分进行安装,而任何额外的应用程序则通过发布的应用程序或 App Volumes AppStacks 进行交付。

承包商

对于承包商来说,可能很难理解他们将要从事的工作内容,因此,由于“一刀切”的做法并不适用,最好在配置时保持谨慎。因此,我们将根据他们可能承担的最密集的角色来进行配置。在示例场景中,这将是应用开发角色。既然如此,他们将拥有与内部应用开发人员相同的配置;然而,他们需要外部访问权限。

工程

工程部门有两个团队。团队一是重度 CAD 用户,负责设计产品,而团队二则创建工程培训材料。因此,团队一需要一个高端图形解决方案来运行 CAD 软件,而团队二不需要那么多图形资源;然而,他们仍然需要比普通用户更多的图形资源。工程解决方案将包括 NVIDIA 加速图形技术,这需要专用桌面。

销售

销售部门的工作模式与标准办公室工作人员类似,因此将使用浮动的非持久性桌面池。关键区别在于,销售团队需要从互联网访问外部资源。

现在我们已经有了用户需求,我们可以开始根据这些使用案例创建池设计。

桌面池设计

池设计反映了使用案例,任何类似的桌面将被包含在一个池中。根据我们收集到的信息,我们可以开始构建池设计,基于下表中的信息:

设计中的所有办公室员工与销售人员共享同一个桌面池,尽管他们的应用需求不同。我们将通过 ThinApp、Horizon 发布应用程序或 App Volumes 将这些应用程序交付到核心虚拟桌面镜像之外。

使用 Pod 和区块架构,我们将部署两个 View Pod,一个在数据中心 A,另一个在数据中心 B。这样做的原因是,从网络角度来看,将这些桌面放置在离用户更近的地方更为合理;然而,由于开发者需要在不同站点之间旅行,我们将利用 Cloud Pod 架构,为这些用户配置一个全球池。尽管在本示例中,我们决定为开发者配置一个专用池,但我们也可以部署浮动桌面,并利用 App Volumes 提供开发者安装自己软件的能力,通过可写卷功能。

现在我们对桌面池有了一个大致的了解,可以开始规划 Pod 的设计,并调整管理区块和桌面托管区块的大小。我们先从桌面区块开始。

桌面区块的大小

在数据中心 A 的 Pod 1 中,我们有 5,500 台虚拟桌面机器。由于每个区块支持 2,000 台虚拟桌面机器,因此我们需要配置三个区块,每个区块约 1,800 台虚拟桌面机器。

在数据中心 B,我们有 250 台虚拟桌面机器,因此我们只需要一个区块。下一个问题是,我们需要多少台服务器来托管这些虚拟桌面机器?在这个示例中,我们将使用前面章节中讨论的每核心用户数量来覆盖办公室和销售人员的轻度用户,以及开发者和工程类用户的重度用户。这意味着,对于办公室用户,我们可以为每台主机配置 98 台虚拟桌面机器,而对于重度用户,我们可以为每台主机配置 50 台虚拟桌面机器。

我们还需要记住,主机服务器的要求存在一些明显的差异,因为工程类用户需要访问硬件加速的 GPU。这将导致为每个用户组部署一个集群。Pod 1 所需的主机数量可能如下图所示。请注意,这些示例中的用户每核心比率是基于具有两颗 3 GHz、10 核 CPU 的服务器,以及轻度用户的 300 MHz 和重度用户的 1.1 GHz 配置文件:

对于基于 GPU 的虚拟桌面机器,使用了两种配置选项,均使用 NVIDIA GRID K1 显卡和 vGPU。CAD 用户将使用 K180Q 配置文件,视频用户将使用 K140Q 配置文件。

由于硬件成本较高,启用 GRID 的服务器没有灾难恢复选项。在发生故障时,用户仍然可以继续工作,但图形处理能力较低。

数据中心 B 中的 pod 2 仅包含应用开发用户的虚拟桌面机器,其布局大致如下所示:

在 pod 1 中,我们已经超过了一个集群能够支持的主机数量,限制为 32 台。因此,我们将为每个桌面块部署两个集群,将主机服务器数量分配到各个集群中,同时另设一个独立集群来支持图形启用用户。

现在设计开始看起来像下图所示:

存储需求的规模

利用我们之前详细说明的计算方法,你可以算出所需的 IOPS 要求。在这个示例场景中,我们将基于每台虚拟桌面机器需要 30 个 IOPS、30/70 的读写比例、RAID 5 阵列和 10GB 磁盘容量来进行计算。根据这些变量,我们可以算出存储需求,如下表所示:

这些存储需求仅用于托管桌面。如果你使用了如 App Volumes 或 ThinApp 这样的组件来交付应用程序,你还需要考虑支持这些环境的容量和性能需求。

管理模块的规模

一旦我们配置了桌面块并了解了池配置,我们就可以着手调整管理模块的规模,以提供支持基础设施。这个基础设施组件的配置大致如下表所示:

最后一个要考虑的元素是网络。你需要评估当前的网络配置是否能够支持用户。如果不能,那么你可能需要考虑某种形式的网络升级。

网络规模和需求

现在我们已经有了池设计、管理和桌面模块,以及存储需求,我们可以查看网络需求,如下表所示:

总结

在这一章中,我们介绍了设计和构建 Horizon View 基础设施中的一些关键任务。

我们从高层次开始,讨论了 VDI 项目的实施方法以及为规划和测试环境所需经过的不同阶段。其中最重要的阶段是评估阶段。

在完成这些工作后,我们查看了 pod 和块参考架构,然后研究了关键 Horizon View 组件的规模调整,例如 View Connection Server、View Security Server 和 View Composer。

在管理架构之后,我们查看了一些关于如何对虚拟桌面机器和用户分配进行规模调整和配置的考虑因素,然后将这些内容整合到一个高层次的示例设计中。

现在,你应该已经具备了处理项目的思路,并且掌握了能够根据最终用户需求来开始评估环境规模的知识。

在下一章中,我们将讨论如何安装构成 Horizon View 解决方案的所有组件。我们将深入研究安装过程,并通过逐步截图来演示这一过程。在本章结束时,我们将拥有一个完全可用的 View 基础设施。

第四章:安装和配置 Horizon 7 - 第一部分

在前几章中,我们讨论了系统如何运作以及它们在 Horizon View 中的角色。那些可以视为理论章节。但现在,是时候转向本书的实际部分,将我们迄今为止所学的知识付诸实践,并开始安装 Horizon View。

在本章中,我们将介绍核心 Horizon View Connection Server 的安装过程。

一旦安装完成,我们将继续进行配置任务,使 Horizon View 环境能够正常运行,并为最终用户提供服务。为了帮助您完成安装,我们将使用一个示例实验室,它将通过一张张实际的截图,带领您逐步完成整个过程。有了这些,我们可以开始并为您介绍示例实验室环境。

本章我们将覆盖以下主题:

  • 准备 AD

  • 安装 Horizon View Composer 服务器

  • 安装 Horizon View Connection Server

  • 配置 Horizon View Connection Server

欢迎来到实验室环境

在本书的实际部分,您可以根据示例实验室环境中的任务和步骤进行操作。如果您愿意,您也可以使用这些指南来设置自己的环境,无论是用于概念验证、试点项目,还是生产部署。

示例实验室所需的资源

本书将贯穿整个示例实验室,因此这一部分将帮助您准备好基础架构,以便在逐章学习时,您可以建立自己的实验室。如果您不打算安装某些功能,例如 JMP,那么就不需要安装支持这些功能的基础架构。

我们将从管理块基础架构开始。示例实验室管理块包括以下基础架构组件(当然,您也可以使用不同版本的基础架构组件):

  • 2 台运行 vSphere 6.7 的 ESXi 主机服务器

  • 14 台 Windows Server 2012 R2 企业版虚拟机,用于以下角色,这些角色将在本章中进行配置:

    • 域控制器(hostname: dc.pvolab.com

    • 连接服务器(hostname: hzn7-cs1.pvolab.com

    • 安全服务器(hostname: hzn7-ss1.pvolab.com

    • 副本服务器(hostname: hzn7-cs2.pvolab.com

    • 第二站点 CPA 的连接服务器(hzn7-cs1b

    • View Composer(hostname: hzn7-cmp.pvolab.com

    • 注册服务器(hostname: hzn7-enroll.pvolab.com

    • 证书授权服务器(hzn7-certs.pvolab.com

    • 用于托管桌面会话的 RDSH 服务器(rdsh-desktops.pvolab.com

    • 用于托管应用程序的 RDSH 服务器(rdsh-apps.pvolab.com

    • JMP 服务器(hzn7-jmp.pvolab.com

    • SQL Express 2012 实例,包含 3 个数据库(一个用于 View Composer,一个用于 Composer Server 上的事件数据库,另一个用于 JMP 服务器)

    • 2 个 vCenter 服务器(一个用于管理块(vcs1.pvolab.com),另一个用于桌面块(vcs2.pvolab.com))

除了安全服务器外,所有机器都应加入域。实验室应类似于以下图示:

在开始安装之前,无论您是否按照示例实验室进行操作,都有一些先决条件需要就位。对于本示例,我们假设您已经搭建好了虚拟基础设施组件,如 ESXi 主机服务器、vCenter 服务器、活动目录AD)/域控制器和 SQL 服务器,并且已经创建了虚拟服务器,准备在其上安装 Horizon View 角色。

可能还值得为桌面块构建基础设施,并确保 ESXi 主机服务器和 vCenter 服务器已构建完成。

目前无需构建虚拟桌面,因为我们将在第七章中讨论此内容,构建和优化虚拟桌面操作系统

以下图示展示了示例实验室的桌面块配置:

最后一步是下载 Horizon 7 软件。对于这个示例实验室,所有软件组件和安装文件都已保存在域控制器上的共享文件夹中。您可以通过点击以下链接下载 Horizon 7(版本 7.8):

my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_horizon/7_8

在实验室基础设施搭建完成后,您可以开始安装和配置。

准备 AD

Horizon View 需要 AD 来进行用户和桌面的身份验证,并利用组策略控制和调整终端用户桌面的许多方面。此内容将在后续章节中讨论。

提醒一下,Horizon View 兼容以下 AD 功能域级别:

  • Windows 2008 和 Windows 2008 R2

  • Windows 2012 和 Windows 2012 R2

部署 View 连接服务器时,它们需要与您要部署的桌面处于同一域中,或者处于与桌面所在域具有双向传递信任关系的域中。

AD 用户账户

我们建议您也利用这个机会创建几个用户账户,这些账户将在您的安装过程中使用。

这些账户将包括用于您的 View 连接服务器服务和 Composer 服务的服务账户。您需要一个 AD 账户,用于 View 登录并管理您 vCenter 中的组件,同时还需要一个用户账户,用于 View Composer 管理 AD 中计算机账户的创建。

vCenter 用户账户

你将需要一个 AD 用户帐户,以允许 View 连接到 vCenter Server。此帐户还应该作为本地管理员添加到 vCenter Server,因为我们将使用 View Composer 来创建链接克隆桌面。创建 AD 中的用户帐户后,你需要为其在 vCenter Server 中授予用户权限。

下表列出了该用户所需的权限:

现在让我们将用户添加到 vCenter Server,首先为 View vCenter 用户创建一个新角色,如下所示:

  1. 使用 VMware vSphere 客户端登录 vCenter Server。登录后,从主屏幕点击“管理” (1),如下截图所示:

  1. 你现在将看到角色界面,如下截图所示:

  1. 接下来,点击角色 (2),然后点击 + 符号 (3) 创建一个新角色。你现在将看到“新建角色”界面,如下截图所示:

  1. 从左侧的选项列表中,选择你要配置的每个类别,然后在屏幕右侧的区域中选择每个单独的权限。这些权限应该与你之前描述的权限相匹配,以便正确配置 Horizon View vCenter 用户帐户的角色和权限。完成为角色添加权限后,点击“下一步”按钮继续。你现在将看到一个可以为新角色命名的界面,如下截图所示:

接下来,我们需要使用以下步骤为用户帐户添加权限:

  1. 在 VMware vSphere Client 的主屏幕上,点击“管理”部分中的“全局权限”选项 (6)。

  2. 现在点击 + 按钮 (7),如下截图所示:

  1. 你现在将看到“添加权限”界面,如下截图所示:

  1. 在用户部分,点击下拉箭头 (8),从列表中选择用户所在的域。在示例实验室中,这是 pvolab.com。

  2. 接下来,我们将搜索在 AD 中创建的用户 view-vc-user。在框中开始输入用户名 (9),位于放大镜图标旁边。输入后会自动开始搜索。当找到该用户名时,点击它进行选择 (10)。

  1. 然后你需要选择该用户的角色,如下截图所示:

  1. 在角色部分,点击下拉箭头 (11),然后从显示的选项列表中点击“View VC User” (12)。

  2. 点击“确定”以完成配置。

你现在已经成功为 Horizon View 和 vCenter 服务器设置了一个用户帐户。

View Composer 用户帐户

你还需要为你的 View Composer 帐户提供一个 AD 用户,因为该帐户将负责为与你的域连接的克隆计算机帐户添加和删除。以下是该用户应具有的必需 AD 权限:

  • 列出内容

  • 阅读所有属性

  • 写入所有属性

  • 阅读权限

  • 重置密码

  • 创建计算机对象

  • 删除计算机对象

该帐户的权限需要应用于 AD 容器的根域级别以及该容器的所有子对象。你还需要确保在创建此用户时已选择高级功能。此帐户将在后续配置 View Composer 连接的 View Administrator 时使用。

View 桌面组织单位(OUs)

尽管你已经有了支持当前桌面环境的 OUs,但现在是时候开始考虑这些 OUs 是否适用于你新的虚拟环境了。你应该考虑使用专用的 OUs,以便根据正在创建的桌面池的要求轻松配置特定的组策略。

如果你计划在环境中仍然保留一定数量的物理桌面,那么你需要为新的虚拟桌面创建新的组织单位(OUs)。最好不要将两者混合使用,以免你应用了不适合某一环境的策略。例如,你不会希望将物理桌面策略应用到虚拟桌面上。

IP 地址和 DNS 要求

对于你的 Horizon View 安装,有几个 IP 地址和 DNS 名称要求,适用于不同的 View 组件。

各组件的 IP 地址和 DNS 名称的典型要求汇总如下表:

正如你从表格中看到的,建议使用负载均衡器来平衡内部视图连接服务器之间的连接,以及外部视图安全服务器之间的连接。在较小的环境中,你可能会决定只使用一个视图安全服务器,这种情况下,你需要使用外部 DNS 名称,而不是负载均衡器。

在下一部分,我们将开始安装 Horizon View 组件。

安装 Horizon View Composer 服务器

View Composer 与连接服务器角色略有不同,因为它不是作为连接服务器角色安装的,因此使用了一个单独的安装程序。它可以安装在运行 vCenter 服务器的同一服务器上,或作为独立服务器安装。通常,你会选择将其安装为独立服务器,以提高性能,或者如果你使用的是 vCenter Server Appliance。View Composer 的配置建议在以下屏幕截图中详细介绍:

在示例实验室中,View Composer 将安装在独立服务器上;然而,如果 vCenter Server 是基于 Windows 的,你也可以直接将其安装到 vCenter Server 上。独立的 Composer 用于在你部署了 vCenter Server Appliance 时提供可扩展性。由于 vCenter Server Appliance 是基于 Linux 的,而 Composer 软件是基于 Windows 的,因此显然无法将其安装在 vCenter Server Appliance 上。

在安装第一个 Connection Server 之前安装 View Composer 可能看起来有点奇怪,但这样做的原因是,在首次配置 Connection Server 时,当你配置 vCenter Server 时,你需要输入 View Composer Server 的详细信息(如果使用的话),以便 View Connection Server 可以与其连接。

现在你已经准备好 View Composer 所需的内容,但在继续安装之前,还有一个组件需要配置,那就是数据库。

配置 SQL Server 用于 View Composer 数据库

为了为 View Composer 创建 SQL 数据库,按照以下步骤操作:

  1. 打开运行 SQL Server 的虚拟机的控制台,并启动 Microsoft SQL Server Management Studio 应用程序。在示例实验室中,SQL Server 安装在我们将要安装 View Composer 的同一台服务器上,因此服务器名称为 hzn7-cmp.pvolab.com。你将看到登录框,如下图所示:

  1. 使用具有适当权限的账户登录。在此示例中,我们使用的是 SA 账户。点击“连接”按钮。

  2. 现在你将看到 SQL Server Management Studio 屏幕。从对象资源管理器中,展开 Security 文件夹并选择 Logins (1)。右键点击并选择“新建登录…”选项 (2),如下图所示:

  1. 然后,你将看到登录–新建屏幕,如下图所示:

  1. 在登录名框 (3) 中,输入新的登录名。在示例实验室中,新的登录名将为 viewcomposer。点击 SQL Server 身份验证的单选按钮 (4),然后在密码框 (5) 中输入新密码。再在确认密码框 (6) 中输入新密码。

  2. 接下来,取消选中“强制密码策略”框 (7)。最后,在默认数据库下拉框 (8) 中,选择“master”选项。我们将在下一步创建数据库时更新此项,以反映 View Composer 的正确数据库。

  3. 配置完成后,点击“确定”按钮,你将返回到对象资源管理器。

  4. 现在你已经创建了登录账户,接下来需要为 View Composer 创建一个新数据库。从对象资源管理器中,选择 Databases 文件夹 (9),右键点击并选择“新建数据库…” (10),如下图所示:

  1. 您将看到“新建数据库”屏幕,如下图所示:

  1. 在“数据库名称”框(11)中,输入此数据库的名称。在示例实验中,数据库命名为 viewcomposer

  2. 在“所有者”框中,点击“…”框(12)。现在您将看到选择数据库所有者屏幕,如下图所示:

  1. 在“输入要选择的对象名称”框中输入 view13),然后点击“检查名称”框(14)。这将搜索所有包含 view 字段的条目。

  2. 现在您将看到“找到多个对象”框,如下图所示:

  1. 勾选 viewcomposer 框(15)。这是我们之前创建的登录项。

  2. 现在点击“确定”按钮,您将返回到“选择数据库所有者”框,框中将显示输入的 viewcomposer 用户,如下图所示:

  1. 在“选择数据库所有者”框中,点击“确定”以接受数据库所有者。

  2. 现在,您将返回到“新建数据库”屏幕,该屏幕将显示数据库名称和数据库所有者,如下图所示:

  1. 点击“确定”以完成该过程并关闭“新建数据库”屏幕。

    最后的配置任务是返回并编辑 viewcomposer 用户登录,并输入 viewcomposer 数据库的详细信息。

  2. 从对象资源管理器中,展开 Logins16),然后选择 viewcomposer 选项(17)。右键单击并从上下文菜单中选择“属性”(18)。在 默认数据库 框中,点击下拉菜单(19)并选择 viewcomposer 选项,如下图所示:

  1. 点击“确定”按钮以完成配置更改。

在关闭 SQL Server Management Studio 之前,还需要创建一个其他数据库;因此,按照之前描述的整个过程重复操作,创建一个数据库以及 View 事件数据库的数据库所有者。在示例实验中,所有者和数据库都被命名为 viewevents。我们将在本章后面使用此数据库。

数据库配置完成后,我们可以继续安装 View Composer 软件。

View Composer 安装

在示例实验环境中,我们将要在 vCenter 服务器上安装 View Composer。在开始安装之前,请确保已经安装了 SQL Server Native Client 11.0,因为这将用于配置 View Composer 服务器与 SQL 数据库之间的连接。要安装 View Composer,请按照以下步骤操作:

  1. 打开到 VCS2 vCenter Server 虚拟机的控制台,然后找到 Horizon View 安装软件,如下图所示:

  1. 启动VMware-viewcomposer-7.6.0-9491669文件开始安装。

  2. 如果您看到“打开文件 - 安全警告”消息,如下所示,点击“Run”按钮继续:

  1. 现在,您将看到“欢迎使用 VMware Horizon 7 Composer 安装向导”屏幕,如下图所示:

  1. 点击“Next >”按钮开始安装。您将看到“许可证协议”屏幕,如下图所示:

  1. 选中“我接受许可证协议中的条款”(1)单选按钮,然后点击“Next >”按钮。接下来,您将看到“目标文件夹”屏幕,如下图所示:

  1. 保持文件夹为默认值,然后点击“Next >”按钮继续。您将看到“数据库信息”屏幕,如下图所示:

  1. 您首先需要创建一个 ODBC DSN 来连接到 View Composer 数据库。

  2. 点击“Odbc DSN 设置...”按钮(2)。您将看到“ODBC 数据源管理器(64 位)”框,如下图所示:

  1. 点击“System DSN”标签页(3),然后点击“Add…”按钮(4)。

  2. 在您现在看到的“创建新数据源”框中,点击SQL Server Native Client 11.0 选项(5),然后点击“Finish”按钮,如下图所示:

  1. 现在,您将看到“创建新的 SQL Server 数据源”框,如下图所示:

  1. 在“名称”框(6)中,输入该数据源的名称。在示例实验室中,这个名称是 viewcomposer

  2. 在“服务器”框(7)中,点击下拉箭头,选择要连接的 SQL Server。在示例实验室中,这是 vcs2\sqlexpress,因为我们正在 vCenter Server 中安装 View Composer。

  3. 点击“Next >”按钮继续。

  4. 接下来,您需要输入身份验证详细信息。

  5. 选择“使用用户输入的登录 ID 和密码进行 SQL Server 身份验证”单选按钮(8),然后在“登录 ID”框(9)中输入用户登录详细信息。在示例实验室中,我们将使用 SA 帐户。最后,在“密码”框(10)中,输入 SA 帐户的密码,如下图所示:

  1. 点击“Next >”按钮继续。

  2. 在下一个配置框中,您需要更改默认的数据库详细信息,以反映 View Composer 的数据库。

  3. 勾选“更改默认数据库为”框(11),然后在其下方的框中点击下拉箭头(12),并选择 viewcomposer 选项。点击下拉框时,这一选项应自动填充,如下图所示:

  1. 点击“下一步 >”按钮继续。你将看到如下所示的最终配置框:

  1. 保留此屏幕上的设置为默认值,然后点击“完成”按钮以完成配置。

  2. 你现在会看到如下所示的配置摘要:

  1. 最后一步是测试新创建的连接。为此,点击“测试数据源…”按钮(13)。

  2. 你应该看到测试结果框中显示TESTS COMPLETED SUCCESSFULLY!消息,如下截图所示:

  1. 点击“确定”按钮以完成测试并关闭测试结果框。

  2. 接下来,点击“确定”按钮以关闭ODBC Microsoft SQL Server 设置框。

  3. 你现在将返回 ODBC 数据源管理员界面,在该界面中,你可以看到新创建的系统 DSN 连接到 View Composer 数据库。

  4. 点击“确定”按钮以关闭 ODBC 数据源管理员界面,返回 View Composer 安装界面及数据库信息配置界面,如下所示:

  1. 现在,你可以在数据源名称(DSN)框中输入viewcomposer14),并在“请输入在 ODBC 数据源管理员框中输入的用户名”框(15)中输入sa,接着在“请输入该数据库连接的密码”框(16)中输入 SA 账户的密码。

  2. 点击“下一步 >”按钮继续。

  3. 在 VMware Horizon 7 Composer 端口设置界面,保留 SOAP 端口设置为默认值,如下所示:

简单对象访问协议SOAP)端口用于 View 与 Composer 之间的 XML 格式通信。建议保留默认设置,除非有特别理由需要更改它。

  1. 点击“下一步 >”按钮继续。

  2. 你现在会看到“准备安装程序”界面,如下所示:

  1. 点击“安装”按钮以开始安装。

  2. 安装完成后,你将看到“安装完成”界面:

  1. 点击“完成”按钮以关闭安装程序。如果由于任何原因,View Composer 安装失败,安装日志将保存在 View Composer 的%TEMP%\vminst.log_date_timestamp文件夹中。此外,MSI 日志也会创建,并可以在%TEMP%\vmmsi.log_date_timestamp文件夹中找到。

  2. 你现在会看到提示重启虚拟机:

  1. 点击“是”按钮重启 View Composer 虚拟机。

  2. 当 View Composer 虚拟机重启后,登录并检查 View Composer 服务是否正在运行。为此,按下 Windows 键和 R 打开“运行”对话框。在对话框中输入 services.msc。你现在会看到“服务(本地)”界面,向下滚动并检查 VMware Horizon 7 Composer (17) 是否正在运行,如下截图所示:

  1. 当你确认 VMware Horizon 7 Composer 服务正在运行时,关闭“服务”界面。

你现在已经成功安装了 VMware Horizon View Composer。

安装 Horizon View 连接服务器

View 连接服务器及其其他角色(安全服务器、复制服务器等)已安装在专用的 Windows 服务器上。以下表格列出了连接服务器的推荐配置:

设置示例实验室的下一步是部署第一个连接服务器。这个第一个连接服务器实例将安装在一个 Windows Server 2016 虚拟机上,主机名为 HZN7-CS1,该虚拟机在本书开头作为示例实验室环境的一部分创建。它已配置为静态 IP 地址,并加入到域中。

要安装连接服务器软件,请按照以下步骤操作:

  1. 打开到 HZN7-CS1 虚拟机的控制台,然后找到 Horizon View 安装软件。在示例实验室中,这个软件被保存在域控制器的共享文件夹中。

  2. 启动VMware-Horizon-Connection-Server-x86_64-7.6.0-9823717文件开始安装。

  3. 如果看到“打开文件 - 安全警告”消息,点击“运行”按钮,如下截图所示:

  1. 你现在会看到 VMware Horizon 7 连接服务器安装向导欢迎界面。

  2. 点击“下一步 >”按钮开始安装。你现在会看到许可协议界面。

  3. 选择我接受许可协议条款的单选按钮,然后点击“下一步 >”按钮。接下来你将看到目标文件夹界面。

  4. 保持文件夹为默认设置,然后点击“下一步 >”按钮继续。你现在会看到如下截图所示的安装选项界面:

  1. 由于这是第一个 View 连接服务器,从 Horizon 7 连接服务器实例列表中,选择 Horizon 7 标准服务器选项 (1)。

  2. 我们还将安装 HTML 访问,因此勾选“安装 HTML 访问”框 (2)。这将允许用户通过 HTML 5 网络浏览器使用 Blast 协议访问桌面。此界面上的最后一个选项是选择使用哪个 IP 协议版本,IPv4IPv6。在示例实验中,选择 IPv4 选项 (3)。

请记住,不能在同一环境中混用 IPv4 和 IPv6,因此在示例实验中,所有组件将使用 IPv4。

  1. 一旦你选择了实例,点击“下一步 >”按钮继续。

  2. 你现在将看到数据恢复界面,如下图所示:

  1. 在数据恢复界面,你需要输入一个密码,用于连接服务器的备份。在“输入数据恢复密码”框 (4) 中,输入你想使用的密码,然后在“重新输入密码”框 (5) 中再次输入该密码。最后,在“输入密码提示(可选)”框 (6) 中输入密码提示。

  2. 点击“下一步 >”按钮继续。你现在将看到防火墙配置界面,如下图所示:

  1. 点击“自动配置 Windows 防火墙”单选按钮,然后点击“下一步 >”按钮继续。

Windows 防火墙是 Horizon View 的必要条件,特别是针对安全服务器与连接服务器之间的通信。在任何情况下,都不应禁用连接服务器上的 Windows 防火墙服务。推荐的做法是让 Windows 防火墙自动配置,然后根据需要记录下所需的端口。

  1. 你现在将看到初始 Horizon 7 管理员界面,如下图所示:

  1. 在此界面,你需要配置哪些域上的用户或本地服务器上的用户将被设置为第一个 View 管理员。在示例实验中,我们将使用标准的管理员账户;不过,建议你创建一个特定的用户和/或用户组,他们将拥有访问 Horizon View 管理控制台的管理员权限。

  2. 点击“授权特定域用户或组”单选按钮 (8),然后在下面的框中输入用户或组名。你需要按格式输入域名\用户名。在示例实验中,输入 PVOLAB\Administrator

  3. 点击“下一步 >”按钮继续。你现在将看到用户体验改进计划界面,如下图所示:

  1. 用户体验改进计划是一个可选的程序,它会匿名发送产品统计信息给 VMware。这并不是许可检查!在示例实验中,请确保未勾选该框 (10)。

  2. 点击“下一步 >”按钮继续。

  3. 你现在将看到安装程序准备好安装的界面,如下图所示:

  1. 点击“安装”按钮以开始安装过程。

  2. 一旦连接服务器安装完成,您将看到如下所示的安装完成屏幕:

  1. 在关闭此屏幕之前,您可以选择勾选“显示文档”框。建议您查看该文档,因为它讨论了 Horizon View 安装中有效 SSL 证书的重要性,我们将在第六章中更详细地讨论此内容,使用 SSL 证书保护 Horizon View

  2. 如果安装因任何原因失败,安装日志将保存在连接服务器的%TEMP%\vminst.log_date_timestamp中。此外,还会创建 MSI 日志,可以在%TEMP%\ vmmsi.log_date_timestamp找到。

最后,点击“完成”按钮以完成安装并关闭安装程序。您现在会看到桌面上已放置了 Horizon 7 管理控制台的图标,如下所示:

在接下来的部分,我们将登录视图管理员并完成初始配置任务。

Horizon View 连接服务器的初始配置

现在已安装连接服务器,您可以连接到管理控制台,该控制台名为视图管理员,并完成初始配置任务。

从安装了 Adobe Flash 10.1 或更高版本的工作站打开浏览器,并输入视图连接服务器的地址。在示例实验室中,输入的地址应为https://hzn7-cs1.pvolab.com/admin

由于 SSL 证书尚未配置,您需要创建一个安全例外,允许您访问带有未加密证书的 HTTPS 页面。我们将在第六章中讨论 SSL 证书,使用 SSL 证书保护 Horizon View

您现在将看到如下所示的视图管理员登录屏幕:

使用管理员账户和密码登录视图管理员,确保域设置与下拉菜单中的域匹配。然后点击“登录”按钮。

您现在应该已经第一次登录到视图管理员。需要配置的第一个组件是产品许可证。

向连接服务器添加许可证

在完成的第一个配置任务中,一旦连接服务器安装完成,您需要添加产品许可证以启用相关功能。为此,请按照此处描述的步骤操作:

  1. 当你第一次登录时,由于尚未安装许可证,管理员屏幕将默认显示在库存窗格的产品许可和使用部分。页面顶部会显示许可框。点击1号按钮“编辑许可证…”,如下图所示:

  1. 你现在将看到如下图所示的编辑许可证框:

  1. 在许可证序列号框中,输入你的许可证密钥,然后点击确定按钮。在前面的示例中,许可证密钥部分被 xxxxx 遮掩,以隐藏实际的许可证密钥。输入许可证密钥时,它将逐字显示在屏幕上。

  2. 输入许可证密钥后,你将在许可框中看到与其相关的详细信息。它将提供许可证到期日期,并列出所有与许可证一起启用的功能。在示例实验室中,你可以看到所有功能以及并发用户使用模型:

许可页面还会显示你当前的使用情况,如下图所示:

这使你能够确保自己处于已购买许可证的权限范围内,并且可以监控你的使用情况,从而在达到限制之前预见到需要升级的时机。

将 vCenter Server 添加到 View Administrator

接下来的任务是配置 View Administrator 和 vCenter Server 之间的连接:

  1. 在 View Administrator 主屏幕中,展开视图配置选项1,然后选择服务器2。接下来,在服务器屏幕中,确保选中了 vCenter Servers 标签3,然后点击4号按钮“添加…”,如下图所示:

  1. 现在你将看到显示在以下截图中的 vCenter Server 信息屏幕:

  1. 在服务器地址框5中,输入你希望连接到 Connection Server 的 vCenter Server 地址。在示例实验室中,这是 vcs2.pvolab.com,即管理虚拟桌面的 vCenter 地址。

  2. 接下来,在用户名框6中,输入 vCenter 用户名,并在密码框7中输入该账户的密码。在本例中,使用了管理员账户;然而,你可能希望使用我们在本章早些时候创建的特定用户账户。

  3. 你现在将看到以下无效证书检测警告框:

  1. 点击8号按钮“查看证书…”。现在你将看到证书信息框。

  2. 点击接受按钮。

  3. 下一个屏幕是显示在以下截图中的视图 Composer 设置屏幕:

  1. 您有三个选项来配置 View Composer:不使用 View Composer、与 vCenter Server 共同安装的 View Composer 和独立 View Composer 服务器。

  2. 对于示例实验室,View Composer 将安装在一台独立服务器上,因此点击独立 View Composer 服务器单选按钮(10)。

  3. 接下来,您需要输入 View Composer 服务器的详细信息。在服务器地址框(11)中,输入服务器地址。在示例实验室中,该地址为vcs2.pvolab.com。然后,在用户名框(12)中输入该服务器的用户名。记得以域名\用户名的格式输入,在示例实验室中,输入pvolab\administrator,并在密码框(13)中输入该用户账户的密码。将端口框(14)保持默认设置18443

  4. 当您完成所有详细信息后,点击“下一步 >”按钮。

  5. 与添加 vCenter Server 时一样,您将再次看到以下“检测到无效证书”警告框:

  1. 点击“查看证书...”按钮(15)。您将看到证书信息框。

  2. 点击“接受”按钮。您将看到如下所示的 View Composer 域配置屏幕:

  1. 在此屏幕上,我们将配置 View Composer 以访问域账户,使其能够添加、创建和删除 AD 中的计算机账户。点击“添加...”按钮(17)。您现在将看到如下所示的“添加域”配置框:

  1. 在完整域名框(18)中,输入域名。在示例实验室中,该域名为pvolab.com。然后,在用户名框(19)中,输入具有创建和删除 AD 中计算机对象权限的用户名。在示例实验室中,我们将使用administrator账户。

  2. 最后,在密码框中,输入管理员账户的密码。输入信息后,点击“确定”按钮。您将返回到 View Composer 域配置屏幕,现显示已配置的域详情,如下图所示:

  1. 点击“下一步 >”按钮继续。

  2. 您现在将看到存储设置配置屏幕。在这里有两个主要元素需要配置。第一个选项是配置是否希望回收虚拟桌面虚拟机的磁盘空间。如果选中此项,虚拟机将配置为节省空间的磁盘,这将允许回收未使用的空间。

  3. 第二个选项是配置启用视图存储加速器。这允许将特定数量的内存用作读取缓存,以减少在共享或本地存储上运行虚拟机时的存储开销。默认情况下,这将为每台服务器分配1024MB 的内存,并且可以增加到每台服务器最多 2GB。如果勾选“显示所有主机”框,你可以选择单独的主机服务器,并为每台主机配置不同的缓存大小。

  4. 在示例实验室中,我们将启用回收虚拟机磁盘空间和启用视图存储加速器选项,如下图所示:

  1. 点击“下一步 >”按钮继续。你现在将看到如下截图所示的“准备完成”界面:

  1. 最后,检查配置详情,然后点击完成按钮以完成配置。你将返回到视图管理员界面,界面中现在显示了刚刚添加的 vCenter Server,如下图所示:

视图管理员界面

你现在已将 vCenter Server 添加到 Horizon View。在下一节中,我们将配置视图事件数据库。

配置视图事件数据库

初始配置任务的最后部分是配置事件数据库。这是 Horizon View 存储所有连接服务器上发生的事件的地方。

在本章开始时创建了一个名为view-events的数据库,现在我们将在配置中使用它:

  1. 从视图管理员主屏幕和库存部分,展开视图配置选项,然后选择事件配置 (1)。你现在将看到如下截图所示的事件配置界面:

  1. 在事件数据库部分,点击编辑…按钮 (2)。你现在将看到编辑事件数据库对话框弹出,如前面的截图所示。

  2. 在数据库服务器框 (3) 中,输入托管事件数据库的 SQL 服务器名称。在示例实验室中,它与 vCenter 位于同一服务器上,因此输入vcs2.pvolab.com作为服务器名称。

  3. 确保从下拉菜单中选择了 Microsoft SQL Server 作为数据库类型 (4)。这里的另一个选项是设置 Oracle 数据库。

  4. 将端口设置保留为默认端口1443

  5. 在数据库名称框 (5) 中输入数据库的名称。在示例实验室中,数据库名为view-events

  6. 在用户名框 (6) 中输入该数据库的用户名,在密码框 (7) 中输入该用户的密码,然后在确认密码框 (8) 中再次输入密码。

  7. 最后,在“表格前缀”框中,您可以输入一个前缀名称。这使您可以使用相同的事件数据库进行多次安装。输入配置完成后,点击“确定”。

  8. 完成后,您应该会看到以下截图:

现在,您已经成功完成了初始连接服务器配置任务。在本章的下一部分,我们将继续安装其他连接服务器角色,从复制服务器开始。

摘要

在本章的第一部分,我们已经带您完成了 Horizon View 解决方案的首个组件安装与配置,即 View Composer 和 Horizon View 连接服务器。

在本章的第二部分,第五章,安装与配置 Horizon 7 – 第二部分,我们将继续安装并安装复制服务器、 安全服务器以及注册服务器。

第五章:安装和配置 Horizon 7 - 第二部分

在本章的前一部分中,我们安装了核心的 Horizon View 连接服务器。现在,在第二部分中,我们将继续构建环境,安装其他服务器角色和组件,从副本服务器开始。

本章将涵盖以下主题:

  • 安装 Horizon View 副本服务器

  • 安装安全服务器

  • 安装注册服务器

  • 配置云平台架构

  • 配置支持 GPU 的虚拟桌面视图

安装 Horizon View 副本服务器

在这一部分,我们将部署第二个 View 连接服务器。额外的 View 连接服务器被称为副本服务器。这是因为 View 通过 ADAM 数据库在多个 View 连接服务器之间共享其配置。

通常,为了提高可用性,部署额外的连接服务器,如前几章所讨论的那样。出于测试目的,您可以仅部署一个 View 连接服务器。

这个第二实例的连接服务器将安装在主机名为hzn7-cs2.pvolab.com的虚拟机上。该虚拟机在上一章的开始部分创建。它还需要分配一个静态 IP 地址,并且需要加入域。由于截图几乎与第一次安装连接服务器时相同,我们将在此部分仅突出并显示不同之处:

  1. 打开一个终端,连接到hzn7-cs2虚拟机,然后定位到 Horizon View 安装软件。在示例实验室中,该软件保存在域控制器的共享文件夹中。

  2. 启动VMware-Horizon-Connection-Server-x86_64-7.6.0-9823717文件以开始安装。这与第一次安装连接服务器时使用的安装程序相同,但由于这是副本服务器,因此它会有所不同的配置。

  3. 如果看到打开文件 - 安全警告消息,请点击运行按钮。

  4. 现在,您将看到 VMware Horizon 7 连接服务器安装向导欢迎屏幕。

  5. 单击“下一步 >”按钮以开始安装。接下来,您将看到许可证协议屏幕。

  6. 单击“我接受许可证协议中的条款”单选框,然后单击下一步 >按钮。接下来,您将看到目标文件夹屏幕。

  7. 保留文件夹的默认设置,然后单击下一步 > 按钮继续。

  8. 现在,您将看到安装选项屏幕,如下图所示:

  1. 由于这是第二个连接服务器,或者称为副本服务器,从 Horizon 7 连接服务器实例列表中选择 Horizon 7 副本服务器选项(1)。

  2. 和之前一样,我们将安装 HTML 访问,因此勾选“安装 HTML 访问”(2)。这将允许用户通过 HTML 5 网页浏览器访问他们的桌面。此设置应与原始连接服务器的设置一致,以便该服务器能够提供相同的功能和特性。别忘了,如果第一个连接服务器不可用,Replica Server 可以接管。

  3. 此屏幕上的最后一个选项是选择使用哪种 IP 协议:IPv4 或 IPv6。在示例实验室中,选择 IPv4 选项(3)。再次提醒,您不能在不同的 View 服务器实例之间混用 IP 协议版本。

  4. 点击“下一步 >”按钮继续。

  5. 您现在将看到源服务器配置屏幕,如下面的截图所示:

  1. 源服务器是您要用作复制源的连接服务器,因此在“服务器”框(4)中输入第一个连接服务器的地址。在示例实验室中,这个地址是 hzn7-cs1.pvolab.com

  2. 点击“下一步 >”按钮继续。您将看到防火墙配置屏幕。

  3. 选择自动配置 Windows 防火墙的单选按钮,然后点击“下一步 >”按钮继续。您将看到“准备安装程序”屏幕。

  4. 点击“安装”按钮开始安装过程。

  5. 安装将开始,您将看到程序文件的安装过程,以及初始复制的状态。安装完成后,您将看到安装完成屏幕。在此屏幕上点击“完成”按钮以关闭安装程序。

  6. 您现在将在桌面上看到 Horizon 7 管理控制台的图标。要检查 Replica Server 是否正确安装并正常运行,请登录 View 管理员。

  7. 在“库存”菜单中,展开 View 配置部分,然后点击“服务器”(5)。点击“连接服务器”标签(6)。您现在将看到 Replica Server hzn7-cs2 列出(7),如下面的截图所示:

您已成功安装并配置 Replica Server。

现在您已经有了两个连接服务器,请记住,Horizon View 默认情况下不包括负载均衡连接服务器或安全服务器的方法。因此,您应根据负载均衡设备制造商的相关文档,配置您的负载均衡器以根据需要与 View 连接服务器一起工作。这使得用户能够在可用性和扩展性方面进行负载均衡。

在下一部分中,我们将安装 Horizon View 安全服务器。

安装安全服务器

接下来要安装的组件是安全服务器,以便您允许外部用户访问。

安全服务器是连接服务器的另一个实例,将安装在主机名为hzn7-sec.pvolab.com.的虚拟机上,此主机在上一章节已创建。此服务器还需要分配静态 IP 地址,但不应加入域。

不要忘记安全服务器与连接服务器是一对一的关系。如果您希望推出多个安全服务器,您将需要多个 View 连接服务器。

建议准备专用的外部 View 连接服务器与您的安全服务器配对,以及内部连接的单独 View 连接服务器。这将允许您通过使用标记功能,指定哪些用户可以从组织外访问桌面,在本章节和第八章,配置和管理桌面池 - 第一部分,我们将讨论此功能。

准备 View 管理员以安装安全服务器

在开始安装之前,我们需要为安全服务器准备连接服务器,创建配对密码。此密码将用于安全地将两个服务器连接在一起。这类似于将您的蓝牙手机与汽车免提系统配对的过程:

  1. 登录 View 管理员。然后,您将看到主配置屏幕,如下截图所示:

  1. 在清单菜单中,展开 View 配置部分,然后单击“服务器”(1)。现在,单击“连接服务器”选项卡(2)。然后,您将在您的环境中看到连接服务器。在示例实验中,我们有两个,hzn7-cs1hzn7-cs2

  2. 单击以选择要与安全服务器配对的连接服务器。在示例实验中,我们将与名为hzn7-cs23)的连接服务器配对。

  3. 现在,单击“更多命令”按钮(4),选择“指定安全服务器配对密码…”选项(5)。现在,您将看到指定安全服务器配对密码屏幕,如下截图所示:

  1. 在配对密码(6)框中,输入您希望用于配对的密码。您需要记住此密码,因为在安装安全服务器期间需要再次输入。在确认密码框(7)中再次输入密码。

  2. 在密码超时框(8)中,输入此密码有效的时间。确保您设置的时间足够安装安全服务器。这将避免您需要返回并设置新的配对密码。从下拉框(9)中,您还可以选择密码的生存时间单位是小时还是分钟。

  3. 配置配对密码后,单击“确定”。

  4. 现在可以继续开始安装安全服务器。

安全服务器软件安装

在前提条件就绪并设置好配对密码后,我们现在可以安装安全服务器。由于屏幕截图与之前连接服务器安装几乎相同,我们将在本节中仅突出显示并展示不同之处:

  1. 打开一个控制台连接到hzn7-sec.pvolab.com虚拟机,然后找到 Horizon View 安装软件。在示例实验室中,该软件被保存在域控制器的共享文件夹中。

  2. 启动 VMware-Horizon-Connection-Server-x86_64-7.6.0-9823717 文件以开始安装。这是您首次安装连接服务器时使用的相同安装程序应用程序,但它将被配置为安全服务器。

  3. 如果看到“打开文件 - 安全警告”消息,请点击“运行”按钮。

  4. 您现在将看到“欢迎使用 VMware Horizon 7 连接服务器安装向导”屏幕。

  5. 点击“Next >”按钮开始安装。您现在将看到许可协议屏幕。

  6. 点击“我接受许可协议中的条款”单选按钮,然后点击“Next >”按钮。您现在将看到目标文件夹屏幕。

  7. 保留文件夹为默认设置,然后点击“Next >”按钮继续。

  8. 您现在将看到安装选项屏幕,如下所示:

  1. 由于这是第三个连接服务器实例,或安全服务器,请从 Horizon 7 连接服务器实例列表中选择“ Horizon 7 安全服务器”选项 (10)。

  2. 此屏幕上的最后一个选项是选择使用哪种 IP 协议:IPv4 或 IPv6。在示例实验室中,选择 IPv4 选项 (11)。再次提醒,您不能在不同的 View 服务器实例之间混合使用 IP 协议版本。

  3. 点击“Next >”按钮继续。您现在将看到配对的 Horizon 7 连接服务器屏幕,如下所示:

  1. 在服务器框 (12) 中,输入要配对的连接服务器的详细信息。在示例实验室中,我们将与名为 hzn7-cs2.pvolab.com 的服务器配对,这就是我们在前一部分设置的副本服务器。

  2. 点击“Next >”按钮继续。您现在将看到配对的 Horizon 7 连接服务器密码屏幕:

  1. 在密码框 (13) 中,输入您在 View 管理员中配置时指定的配对密码。

  2. 点击“Next >”按钮继续。

  3. 您现在将看到 Horizon 7 安全服务器配置屏幕,如下所示:

  1. 在此屏幕上,你可以指定安全服务器的设置。首先,在外部 URL 框(14)中,输入用户将通过互联网连接来连接其 Horizon 客户端的地址。在前面的示例中,已将其保留为默认值;然而,你可能希望将其更改为更易于使用的地址。

  2. 在 PCoIP 外部 URL 框(15)中,输入外部 PCoIP 连接的 IP 地址。请注意,这必须包含 IP 地址,而不是 URL,如框中所示。该地址还必须加上端口后缀,因此在此情况下,:4172是默认的 PCoIP 端口。

  3. 最后,在 Blast 外部 URL 框(16)中,输入 Blast 协议的地址。该协议用于 HTML5 访问。

  4. 单击“下一步 >”按钮继续。现在你将看到防火墙配置屏幕。

  5. 点击自动配置 Windows 防火墙的单选按钮,然后点击“下一步 >”按钮继续。你将看到准备安装程序屏幕。

  6. 单击安装按钮开始安装过程。

  7. 安装完成后,你将看到安装完成屏幕。点击“完成”按钮退出。

    与我们安装连接服务器和副本服务器时不同,桌面上不会放置 Horizon 图标。设置通过视图管理员控制台进行管理。但是,要检查安全服务器是否已安装并正在运行,请在安全服务器的桌面上启动一个服务控制台,如下图所示:

向下滚动,直到看到 VMware Horizon 7 安全服务器(17)的条目,然后检查它是否正在运行。

你还需要检查安全服务器是否已在视图管理员中注册。为此,请执行以下步骤:

  1. 在库存菜单中,展开视图配置部分,然后点击服务器(18)。点击安全服务器选项卡(19)。现在你将看到列出的安全服务器HZN7-SEC20)。如下图所示:

  1. 你已经成功安装并配置了安全服务器。

正如我们之前提到的,我们建议将安全服务器与专用的外部视图连接服务器一起安装,这样你就可以通过使用标签功能限制外部连接访问虚拟桌面机器。

实现这一目标的第一步是标记你的外部连接服务器。要标记服务器,请执行以下步骤:

  1. 在视图管理员中,从库存菜单,展开视图配置部分,然后点击服务器(21)。点击连接服务器选项卡(22),然后高亮显示与安全服务器配对用于外部连接的连接服务器。在示例实验室中,该服务器被称为HZN7-CS223)。

  2. 右键点击,然后从上下文菜单中点击“Edit…”(编辑...)(24),如下图所示:

  1. 您现在将看到“Edit Connection Server Settings”(编辑连接服务器设置)屏幕,如下图所示:

  1. 在 Tags 框(25)中,输入此标签的名称。在示例实验室中,此标签名为external。这意味着只有配置了名为external的标签的桌面池才能通过此 Connection Server 进行连接。

安装 Enrollment Server(注册服务器)

我们将要安装的最后一个组件是 Enrollment Server(注册服务器)。

这个 Connection Server 的最后一个实例将安装在主机名为hzn7-enrol.pvolab.com的虚拟机上。该虚拟机在上一章中已经构建。它还需要分配静态 IP 地址并加入域。由于屏幕截图与其他 Connection Server 安装几乎相同,我们将在本节中仅突出并展示差异:

  1. 打开到hzn7-enrol.pvolab.com虚拟机的控制台,然后找到 Horizon View 安装软件。在示例实验室中,这个文件被保存在域控制器的共享文件夹中。

  2. 启动VMware-Horizon-Connection-Server-x86_64-7.6.0-9823717文件以开始安装。这是您第一次使用的相同安装程序应用程序,但它会根据此实例是 Replica Server(副本服务器)的事实进行不同配置。

  3. 如果您看到“Open File - Security Warning”(打开文件 - 安全警告)消息,点击“Run”(运行)按钮。

  4. 您现在将看到“Welcome to the Installation Wizard for VMware Horizon 7 Connection Server”(欢迎使用 VMware Horizon 7 连接服务器安装向导)屏幕。

  5. 点击“Next >”按钮开始安装。现在您将看到许可证协议屏幕。

  6. 选中“I accept the terms in the license agreement”(我接受许可证协议中的条款)单选框,然后点击“Next >”按钮。现在您将看到目标文件夹屏幕。

  7. 保持文件夹设置为默认值,然后点击“Next >”按钮继续。

  8. 您现在将看到“Installation Options”(安装选项)屏幕,如下图所示:

  1. 由于这是最后一个 Connection Server 实例或 Enrollment Server,在 Horizon 7 Connection Server 实例列表中,选择 Horizon 7 Enrollment Server 的选项(1)。

  2. 此屏幕上的最后一个选项是为此 Enrollment Server 实例选择身份验证模式。Horizon 7 支持本地部署和 Horizon Cloud 部署。示例实验室是本地环境,因此选择 Horizon 7 的选项(2)。

  3. 点击“Next >”按钮继续。现在您将看到防火墙配置屏幕。

  4. 选中“Configure Windows Firewall automatically”(自动配置 Windows 防火墙)单选框,然后点击“Next >”继续。

  5. 您将看到“Ready to Install the Program”(准备安装程序)屏幕。

  6. 点击“安装”按钮开始安装过程。一旦注册服务器安装完成,你将看到“安装完成”界面。点击“完成”按钮以关闭安装程序。

  7. 注册服务器没有用户界面或控制台,也没有桌面上的图标。要检查它是否在运行,我们将检查 Windows 服务控制台。为此,按下 Windows 键和 R 打开运行对话框。在对话框中输入 services.msc。现在你会看到服务界面,如下所示的截图:

  1. 向下滚动,你将看到 VMware Horizon View 注册服务器的条目。检查该服务是否正在运行,然后关闭服务界面。

你已成功安装并配置了 Horizon View 注册服务器。在下一部分,我们将通过启用云 Pod 架构来完成视图管理部分的安装和配置。

配置云 Pod 架构

在第三章《设计与部署考虑》中,我们讨论了云 Pod 架构及其交付多站点视图部署的能力,允许扩展性并支持灾难恢复场景。现在,我们将通过示例实验室来学习如何设置云 Pod。

在示例实验室中,我们已经构建并配置了另一个连接服务器,名为 hzn7-cs1b.pvolab.com,它将代表第二个 Pod,位于第二个站点。

该服务器被安装为连接服务器,而不是副本服务器,因为它需要成为不同 Pod 中的第一个服务器。

下图说明了我们将要遵循的安装流程,使用的是示例实验室:

过程的第一步是从第一个连接服务器初始化云 Pod。

初始化云 Pod

要初始化云 Pod 架构,请执行以下步骤:

  1. 登录到 View 管理员,从控制台屏幕的左侧库存窗格中,展开 View 配置部分并点击“云 Pod 架构”(1)。

  2. 现在,点击“初始化云 Pod 架构功能”(2)选项,如下所示的截图:

  1. 你现在将看到初始化对话框,如下所示的截图:

  1. 点击“确定”按钮开始初始化。你将看到初始化过程开始,并且进度通过一个百分比条在屏幕上显示。你还会看到状态显示为“待处理”,如以下截图所示:

  1. 一旦云 Pod 架构功能完成初始化,你将看到“重新加载”对话框,如下所示的截图:

  1. 点击“确定”按钮以重新加载客户端。您现在将在视图管理员中看到云 Pod 架构屏幕,如下图所示:

如您所见,已经创建了一个名为 Horizon Cloud Pod Federation 的 Pod 联盟。如有需要,您可以点击编辑按钮来更改此名称。

您还将看到列出的 Pods 和站点信息。在示例实验室中,我们只列出了 HZN7-CS1 连接服务器,因为这是第一个安装了云 Pod 架构的连接服务器。

下一步是将第二个 Pod 或第二个站点中的连接服务器连接到联盟。

将第二个 Pod 连接到云 Pod

此过程的下一步是将其他 Pod 连接或加入到 Pod 联盟中。

登录到第二个连接服务器上的视图管理员控制台。该服务器名为 hzn7-cs1b.pvolab.com。这是示例实验室中第二站点的第一个连接服务器。

执行以下步骤,将第二个 Pod 连接到联盟:

  1. 登录到视图管理员控制台。在左侧的库存窗格中,展开视图配置部分并点击云 Pod 架构 (1),但这次点击“加入 Pod 联盟” (2) 选项,如下图所示:

  1. 您现在将看到加入对话框,如下图所示:

  1. 在此,输入已经初始化了云 Pod 架构的 Pod 中连接服务器的详细信息。

  2. 在连接服务器框 (3) 中,输入来自第一个站点的连接服务器地址。在示例实验室中,这台服务器名为 hzn7-cs1.pvolab.com

  3. 在用户名框 (4) 中,输入具有正确权限以将 Pods 连接在一起的用户名。在示例实验室中,我们将使用管理员账户。请注意,您需要以 domain\username 格式输入用户名,因此在示例实验室中,我们将输入为 pvolab\username

  4. 点击“确定”继续。

  5. 您将看到加入过程开始,屏幕上会显示进度的视觉表示,进度以百分比条的形式显示,并且状态会显示为待处理

  6. 一旦云 Pod 架构功能完成加入 Pod 联盟,您将看到重新加载对话框。

  7. 点击“确定”按钮以重新加载客户端。您现在将在视图管理员中看到云 Pod 架构屏幕,如下图所示:

如您所见,两个 Pod 现在已列出,并显示站点信息。在示例实验室中,现在列出了 HZN7-CS1HZN-CS1B 连接服务器。

如果现在查看站点页面,您会看到该站点列出了构成该站点的 Pod 数量,以及站点内 Pod 的详细信息。

您也将能够看到全球授权,如下图所示:

现在,您已通过初始化云 Pod 架构功能并向 Pod 联邦中添加第二个 Pod,创建了一个 Pod 联邦,接下来您可以创建全球授权,我们将在下一部分介绍。

授权用户访问 Cloud Pod

在这一部分,我们将通过创建一个桌面池并将用户授权连接到该池内的桌面,来添加一个全球授权。按照以下步骤操作:

  1. 从“视图管理员”控制台,在左侧的库存窗格中,展开目录部分,然后点击全球授权 (1)。

  2. 接下来,点击“添加…”按钮 (2),如下图所示:

  1. 现在您将看到“添加全球授权”对话框,以及选择您要创建的授权类型的第一部分,如下图所示:

  1. 在这个示例中,我们将创建一个桌面授权,因此点击桌面授权的单选按钮 (3),然后点击“下一步 >”按钮。现在你将看到名称和策略配置页面,如下图所示:

  1. 在“常规”部分,输入策略名称 (4)。在示例实验室中,我们将其命名为 Global Desktop Pool

  2. 在“策略”部分的“用户分配”下,点击“专用”单选按钮 (5)。您可以指定用户分配以及桌面池是浮动还是专用。在“范围”下,点击“所有站点”单选按钮 (6)。您可以从“所有站点”、“站点内”或“Pod 内”中进行选择。

  3. 勾选使用主页站点 (7) 的复选框。

  4. 然后,您可以选择默认显示协议。在示例实验室中,我们将选择 PCoIP,因此从下拉菜单中选择 PCoIP。

  5. 在“允许用户选择协议”选项中,选择是否希望用户更改协议。在示例实验室中,从下拉菜单 (9) 中选择“是”。

  6. 最后,如果您希望启用 HTML 访问,请勾选复选框 (10)。

  7. 点击“下一步 >”按钮继续。

  8. 您现在将看到“用户和组”配置页面,如下图所示:

  1. 点击“添加…”按钮 (11)。您现在将看到“查找用户或组”配置页面,如下图所示:

  1. 点击下拉箭头(12),选择用户所在的域。在示例实验室中,这是 pvolab.com。然后,在“名称/用户名”框(13)中输入你希望分配到此池的用户的名字,然后点击“查找”按钮(14)。此时会显示用户的详细信息。点击以突出显示并选择该用户(15),然后点击“确定”按钮。

  2. 你将返回到“用户和组”屏幕,此时已显示所选用户,如下图所示:

  1. 点击“下一步 >”按钮继续。此时你将看到“准备完成”屏幕,如下图所示:

  1. 检查详细信息是否正确输入,然后点击“完成”按钮。你将返回到“全局授权”屏幕,此时会显示全局桌面池及其分配的用户数量,如下图所示:

你已经成功配置了 Cloud Pod 联邦。

在本章的最后部分,我们将通过为 ESXi 主机服务器配置 NVIDIA 显卡来完成安装。

配置支持 GPU 的虚拟桌面

在第二章中,理解 Horizon 7 架构和组件,我们讨论了 Horizon View 虚拟桌面机器可以配置为使用已安装在主机服务器上的硬件,这些硬件承载了这些桌面。在本例中,所涉及的硬件是显卡。

如我们之前讨论的,Horizon View 的一个高级功能是其能够使用已安装并配置了 PCI 直通的专用硬件,这些硬件安装在 ESXi 主机服务器上,使虚拟桌面机器能够识别该硬件。

在本节中,我们将执行将 NVIDIA GRID GPU 卡安装到主机服务器中的初始步骤。稍后,在第七章,构建和优化虚拟桌面操作系统,我们将创建一个虚拟桌面机器镜像,该镜像将专门分配并访问 GPU 资源。

如果你打算使用 vGPU,你需要安装 vSphere 6 作为虚拟化平台来支持这一功能。

配置 ESXi 主机服务器

在你创建虚拟桌面机器之前,你需要确保显卡已经物理安装并配置到 ESXi 主机上,以准备构建将使用该显卡的新虚拟桌面机器。

在示例实验室中,我们使用的是 NVIDIA GRID K2 显卡。这些显卡可以通过 OEM 渠道获得,并且已经由服务器厂商预配置,因为它们需要额外的电源连接器、散热风扇以及特定的 BIOS 设置。

在开始之前,检查这些内容是值得的,因为仅仅将卡片安装到现有的服务器上可能会导致它们无法正常工作。你可以通过点击以下链接来查找经过认证的服务器列表:www.nvidia.com/object/grid-partners.html

安装完硬件后,登录到 vSphere Web Client,选择已安装卡片的主机,并执行以下步骤:

  1. 登录到 vSphere Web Client,然后导航到安装了 NVIDIA 卡片的主机服务器。在示例实验室中,这是主机 esx-1.pvolab.com,如下面的截图所示:

  1. 选择 ESXi 主机服务器 esx-1.pvolab.com (1),然后点击“管理”标签 (2)。点击“设置”按钮 (3),展开硬件部分。点击 PCI 设备 (4),然后点击铅笔图标 (5) 编辑设置。此时你将看到编辑 PCI 设备可用性屏幕,如下图所示:

如你所见,这台主机服务器已配置了两张 NVIDIA GRID K2 图形卡。勾选框 (6) 和 (7) 以启用主机服务器上的卡片。

你现在已将 ESXi 主机服务器配置为使用 NVIDIA GRID K2 GPU 卡。这些卡片将在本书后面第七章中构建虚拟桌面机器时使用,构建和优化虚拟桌面操作系统

总结

在本章中,我们完成了 Horizon View 环境的安装,包括副本服务器、安全服务器和注册服务器。

我们讨论了你需要进行的初步配置项目,例如许可环境、连接你的 vCenter 和 View Composer 服务器,以及配置 View 安全服务器以供外部连接。我们还查看了为使环境准备好支持 NVIDIA GRID 高级图形所需的配置项目。

本章的最后部分讲解了如何初始化和配置 Cloud Pod Architecture 功能。

完成本章后,你应该已经构建了一个完全可用的 View 部署,并准备为终端用户提供虚拟桌面机器。接下来的步骤是开始构建虚拟桌面,并在配置 Horizon View 以交付它们之前准备好这些桌面。

但在我们开始构建虚拟桌面机器之前,我们将在下一章第六章中讨论安全性问题,使用 SSL 证书保护 Horizon View,我们将在其中配置环境中的 SSL 证书以确保其安全。我们还将查看配置 True SSO 功能。

第二部分:构建和交付虚拟桌面体验

在本节的各个章节中,我们将研究如何构建虚拟桌面镜像,微调它们,并创建准备交付的桌面池。

本节包括以下章节:

第六章,通过 SSL 证书保护 Horizon View

第七章,构建和优化虚拟桌面操作系统

第八章,配置和管理桌面池 – 第一部分

第九章,配置和管理桌面池 – 第二部分

第十章,微调最终用户体验

第十七章, 在 Horizon 中管理最终用户环境(在线章节)

第六章:使用 SSL 证书保护 Horizon View

在本章中,我们将讨论 VMware Horizon View 7 的安全性方面,特别是如何实现与最终用户客户端以及数据中心中不同 View 基础架构组件之间的安全通信。我们将研究两种实现这种安全通信的方法。

我们将从安全套接字层SSL)证书开始,概述一下 SSL,然后学习如何创建/颁发证书并配置 Horizon View 以使用它。 本章将涵盖的第二个选项是True SSO。True SSO 为用户提供了一种身份验证虚拟桌面的方式,能够保持他们的所有常规域权限,但不需要他们提供 Active Directory 凭据。你很可能已经在你的环境中设置了 SSL 证书,但在本章中,我们将使用示例实验室中的服务器设置一个测试环境。

本章将涵盖以下主题:

  • Horizon View 和 SSL 证书

  • 为 Horizon View 安装 SSL 证书

  • Horizon View True SSO

Horizon View 和 SSL 证书

我们首先来定义 SSL。SSL 是由 Netscape 开发的一种加密技术。

它用于在 Web 服务器和浏览器之间创建加密连接,您将在其中查看网页。通过使用 SSL,您可以安全地查看发送到浏览器的信息,知道没有其他人可以访问它。

SSL 通过安装在服务器上的 SSL 证书来工作,并用于识别您。那么问题是,您如何知道自己是否正在使用安全连接连接到服务器呢?如果您有安全连接,您将在浏览器中看到一个挂锁图标,或者地址栏会变为绿色。

为了确保您拥有安全连接,您也可以在浏览器中使用https://而不是通常的http://访问该站点。

SSL 证书由证书颁发机构CAs)提供。

什么是 CA?

CA(证书颁发机构)是一项在验证组织或个人后,向其颁发数字证书的服务。CA 保持已颁发证书的详细记录以及在证书颁发时使用的其他信息。这些记录会定期审计,以确保符合规定。

您可以从不同的组织获取 CA,或者可以从根 CA 创建自己的 CA。

为什么我需要为 Horizon View 提供 SSL 证书?

如果您从网站向终端设备传输敏感信息,您需要通过加密来保护信息,否则数据可能会被泄露。

由于 Horizon View 本质上类似于一个 web 服务,终端用户通过其终端设备连接到 View 连接服务器,您需要确保该连接是安全的。在这种情况下,SSL 被用于在客户端设备和虚拟桌面机器之间建立安全链接。尽管使用 Horizon View 时不会实际传输数据,但虚拟桌面机器的像素会被传输,如果第三方截获了这一传输,他们可能会通过重绘这些像素看到您的屏幕。SSL 还用于 Horizon View 组件之间的通信,如连接服务器和副本服务器。

安装 SSL 证书是 Horizon View 的要求。

默认情况下,Horizon View 配备了自签名证书,这对于概念验证或小规模试点是可以的,但在生产环境中,您需要企业级证书。

使用证书成为 View 5.1 版本的要求,当时它们用于 Horizon View 组件之间的通信,如连接服务器、副本服务器和 View Composer,以及 ESXi 主机和虚拟中心服务器的基础设施。每个组件都需要安装证书,包括连接到它的客户端设备。

安装 Horizon View 的 SSL 证书

在本章的后续部分,我们将简要介绍如何通过在我们的示例测试环境中安装根 CA 来设置证书,帮助您开始使用 Horizon View。然而,我们强烈建议您与安全团队合作,为您的组织和环境部署正确类型的证书。

安装根 CA

在本节中,我们将介绍设置一个作为根 CA 的服务器的过程,该服务器将在示例实验室中使用。已经建好了一个名为 HZN7-CERTS 的服务器,我们将使用该服务器来担任此角色。

配置根 CA,请按以下步骤操作:

  1. 打开到 HZN7-CERTS 服务器的控制台,并启动服务器管理器。

  2. 点击“添加角色和功能” (1),如下图所示:

  1. 您现在将看到“添加角色和功能向导”和“开始前”屏幕。点击“下一步 >”按钮继续。

  2. 接下来,您将看到安装类型界面。点击“基于角色或功能的安装”单选按钮 (2),如以下截图所示:

  1. 点击“下一步 >”按钮继续。

  2. 您现在将看到服务器选择界面,如下图所示:

  1. 选择“从服务器池中选择服务器”单选按钮 (3),然后从列表中高亮显示 hzn7-certs.pvolab.com 服务器 (4)。

  2. 点击“下一步 >”按钮继续。您现在将看到服务器角色界面,如下图所示:

  1. 勾选“Active Directory 证书服务”框(5),然后在弹出框中点击“添加 Active Directory 证书服务所需的功能”按钮,点击“添加功能”按钮(6)。

  2. 现在您将返回到服务器角色屏幕,屏幕上会显示“Active Directory 证书服务”已被选中。单击“下一步 >”按钮继续。

  3. 接下来,您将看到功能配置屏幕。单击“下一步 >”按钮继续。

  4. 添加角色和功能向导的下一个屏幕是“Active Directory 证书服务”屏幕,如下图所示:

  1. 单击“下一步 >”按钮继续。现在,您将看到选择角色服务屏幕,如下图所示:

  1. 在角色服务下,勾选证书颁发机构框(7),然后单击“下一步 >”按钮继续。

  2. 在确认安装选择屏幕上,勾选“自动重启目标服务器”框(8),然后单击“安装”按钮。

证书服务功能现在已经安装。接下来,需要完成一些部署后的配置。

根 CA 部署后配置任务

安装了核心根 CA 组件后,您现在可以完成部署后的配置任务:

  1. 在服务器管理器仪表板顶部的菜单栏中,单击黄色警告三角形警告框,然后在弹出的选项中,单击“配置 Active Directory 证书服务”条目(1),如下图所示:

  1. 您现在将看到 AD CS 配置屏幕和凭据配置部分:

  1. 单击“下一步 >”按钮继续。现在,您将看到角色服务配置屏幕,如下图所示:

  1. 勾选证书颁发机构框(2),然后单击“下一步 >”按钮继续。

  2. 现在您将看到设置类型配置屏幕,如下图所示:

  1. 单击单选按钮选择“企业 CA”选项(3),然后单击“下一步 >”按钮继续。现在,您将看到证书颁发机构类型配置屏幕:

  1. 接下来,单击单选按钮选择“根 CA”选项(4),然后单击“下一步 >”按钮继续。

  2. 现在您将看到私钥配置屏幕,如下图所示:

  1. 单击单选按钮选择“创建一个新的私钥”选项(5),然后单击“下一步 >”按钮继续。现在,您将看到 CA 加密配置屏幕:

  1. 接受默认设置并点击“下一步 >”按钮以继续。

  2. 现在您将看到 CA 名称配置屏幕,在这里您可以指定 CA 的名称,如下图所示:

  1. 接受默认设置并点击“下一步 >”按钮以继续。

  2. 现在您将看到有效期配置屏幕,如下图所示:

  1. 接受默认设置并点击“下一步 >”按钮以继续。

  2. 现在您将看到 CA 数据库配置屏幕,如下图所示:

  1. 接受默认设置并点击“下一步 >”按钮继续。您现在将看到确认屏幕,如下图所示:

  1. 点击屏幕底部的“配置”按钮以完成配置。一旦配置成功完成,您将看到以下消息弹出:

  1. 点击“关闭”按钮以关闭服务器管理器。

现在我们的证书服务器已经设置并运行,我们可以开始配置 Horizon View 软件基础设施组件和客户端以使用它。

我们将首先在 Horizon View 连接服务器上安装证书。

在 View 连接服务器上安装 SSL 证书

在证书服务器安装并配置完成后,我们现在要将新创建的证书安装到 View 连接服务器上:

  1. 打开一个远程控制台会话,连接到名为 HZN7-CS1 的 View 连接服务器,然后打开运行命令框。在运行框中,输入 mmc,然后点击确定以启动 Microsoft 管理控制台 (MMC),如下图所示:

  1. 现在您将看到 MMC 控制台屏幕,如下图所示:

  1. 在 MMC 控制台屏幕上,点击文件 (1),然后点击“添加/删除管理单元…”选项 (2)。

  2. 您现在将看到添加或删除管理单元屏幕:

  1. 在左侧的可用管理单元部分,点击并突出显示“证书”条目 (3),然后点击“添加 >”按钮 (4),如前图所示。

  2. 现在您将看到证书管理单元框,如下图所示:

  1. 点击计算机帐户的单选按钮 (5),然后点击“下一步 >”按钮继续。您现在将看到选择计算机配置框:

  1. 选择“本地计算机”单选按钮 (6),然后点击“完成”按钮。您将返回到“添加或删除管理单元”界面,现在显示已选择证书管理单元。

  2. 点击“确定”以关闭“添加或删除管理单元”界面。

您现在已成功将证书添加到管理控制台作为配置选项,如下图所示:

现在,您已经可以从管理控制台管理和配置证书,接下来的任务是向根 CA 请求证书:

  1. 控制台根目录 中展开 证书(本地计算机) 文件夹,然后右键点击 个人 文件夹 (1)。从上下文菜单中,依次选择“所有任务”(2)并选择“请求新证书...” (3):

  1. 现在,您将看到证书注册界面上的“开始之前”部分。点击“下一步”按钮继续。

  2. 现在显示“选择证书注册策略”界面,如下图所示:

  1. 点击“下一步”按钮继续。您现在将看到“证书注册请求证书”界面:

  1. 在“Active Directory 注册策略”框中,勾选计算机 (4) 选项。我们将使用此策略模板来申请证书;但是,您也可以在根 CA 服务器上创建自己的模板。

  2. 现在点击“详细信息”旁边的箭头 (5),然后点击“属性”框 (6) 以便配置证书的属性。您现在将看到证书属性配置框,如下图所示:

  1. 点击“常规”标签 (7),然后在“友好名称:”框 (8) 中输入此证书的友好名称。在本示例实验室中,我们将其命名为 vdm。您还可以选择输入描述。

  2. 接下来,在“证书属性”框中,点击“私钥”标签,如下图所示:

  1. 点击下拉箭头以展开关键选项 (10),并勾选使私钥可导出 (11) 选项。

  2. 最后,点击 证书颁发机构 标签 (12),如图所示:

  1. 勾选框以选择 pvolab-HZN7-CERTS-CA (13) 注册服务器。然后点击“确定”按钮。您将返回到“请求证书”界面,如下图所示:

  1. 点击“注册”按钮 (14) 以继续并注册连接服务器。如果注册成功,您将看到以下截图:

  1. 点击“完成”按钮以完成证书注册过程。

别忘了你需要在所有 Horizon View 组件上完成证书注册过程,因此,如果你有其他服务器,比如副本服务器和 View Composer 服务器,那么这些服务器上也需要安装证书。

在下一部分,我们将看看现在已经有了根 CA 证书服务器并且证书已安装在我们的连接服务器上,我们接下来该做些什么。

证书注册后的配置任务

即使你已经安装了证书服务器并且在连接服务器上安装了有效的证书,仍然有一些事情需要配置。

如果你尝试使用浏览器连接到 View Administrator,你仍然会看到一条错误信息,表示网站的安全证书存在问题。典型的信息大概会是如下所示:

如果你还记得本章开始时,我们还讨论了使用http://https://来访问安全网页。如果浏览器中的地址栏是红色的,如下图所示,那么连接不安全,且没有安装证书:

当然,你可以忽略这些错误,直接点击“继续访问此网站”(不推荐),这样你可以绕过警告并登录到 View Administrator。

然而,当你登录后,你会看到在 View Administrator 仪表板的系统健康状态部分也有一个红色警告框。对于 View 来说,如果没有安装有效的证书,健康警告会告诉你连接是不受信任的,因此这是一件坏事!以下截图展示了这一点:

如果点击 Horizon 7 管理员仪表板,在仪表板视图中的系统健康状态下,选择显示红色警告框的某个连接服务器。你可以看到在打开的服务器详细信息框中,出现了一个黄色警告标志,提示该服务器上有一个不受信任的证书。在这个示例实验环境中,我们将继续使用 Horizon View 管理器,而不是更新的 Horizon Console 基于 Web 的管理控制台。原因是在编写本书时,并不是所有我们将讨论的功能都可以通过 Horizon 控制台访问。

从最终用户的角度来看,这是一回事。如果他们尝试通过 Horizon 客户端登录,他们会看到以下内容:

您可以在上图中看到“服务器”框内,连接服务器的https://地址是红色的,已被划掉,并且锁标志上显示警告符号,这一切都表明没有安装受信任的证书。

现在我们已经在连接服务器上创建并安装了证书,为了让 Horizon View 识别安装的证书,您需要重新启动 Windows 服务中的 View 连接服务器服务。按照以下步骤操作:

  1. 打开运行对话框,在运行对话框中输入services.msc以打开服务(本地)屏幕。滚动到 VMware Horizon View 连接服务器(1)的条目,如下图所示:

  1. 选择 VMware Horizon View 连接服务器选项,右键点击,然后在上下文菜单中点击重启(2)。当 VMware Horizon View 连接服务器服务重新启动后,您可以再次登录到 View 管理员,并检查证书是否已应用。

  2. 要做到这一点,首先登录后,在仪表盘中,点击“系统健康”下的“连接服务器”以展开此部分,然后点击连接服务器 HZN7-CS1(3),或刚刚安装证书的服务器。在弹出的连接服务器详情框中,您现在会看到 SSL 证书显示为有效(4),并且错误框已从红色变为绿色:

  1. 最后,点击确定以关闭连接服务器详情的对话框,然后从 View 管理员中注销。

现在,您已经成功创建并安装了 Horizon View 的证书。别忘了,您还需要在所有 Horizon View 组件上安装证书,例如任何副本服务器或 View Composer 服务器。

Horizon View True SSO

在第二章,理解 Horizon 7 架构和组件中,我们向您介绍了 True SSO 功能及其架构。在本节中,我们将讨论如何配置 True SSO。

要设置 True SSO,您首先需要配置一个 CA,这个步骤我们在本章的安装根 CA部分已经配置过了。接下来,有一系列配置步骤需要完成,以便为安装 True SSO 做好准备。

准备 AD 以支持 True SSO

第一步是为注册服务器创建一个活动目录AD)组。按照以下步骤操作:

  1. 打开到您的域控制器的控制台。在示例实验室中,这台机器叫做dc.pvolab.com。启动活动目录用户和计算机配置屏幕,如下图所示:

  1. 点击并选择用户1),然后右键点击。从弹出菜单中,点击“新建”(2),然后从展开的选项中,选择“组”(3)。你现在将看到“新对象 – 组”对话框,如下图所示:

  1. 在“组名”框(4)中,输入新组的名称。在示例实验室中,这个组叫做Enrollment Servers。在“组范围”框中,点击“通用”单选按钮(5),在“组类型”框中,点击“安全”单选按钮(6)。配置完成后,点击“确定”按钮。接下来,你需要将 Enrollment Server 添加到新创建的组中。

  2. 在 Active Directory 用户和计算机配置界面,点击计算机7),然后双击 Enrollment Server。在示例实验室中,这台计算机被称为 HZN7-ENROL,如下图所示:

  1. 现在你会看到 HZN7-ENROL 属性对话框,如下图所示:

  1. 点击“成员”选项卡(9),然后点击“添加...”按钮(10)。你现在将看到“选择组”对话框:

  1. 在“输入要选择的对象名称”框(11)中,键入你为Enrollment Servers创建的组的名称。你可以只键入名称的前部分,然后点击“检查名称”按钮(12)。这将找到任何与你输入的前部分匹配的名称。在此示例中,它会找到 Enrollment Servers 组。选择正确的组名后,点击“确定”按钮继续。

  2. 你将返回到 HZN7-ENROL 属性对话框,现在显示 Enrollment Server HZN7-ENROL 是 Enrollment Servers 组的成员。如以下截图所示:

配置好域控制器元素后,下一步是创建一个新的证书模板。

为 TrueSSO 创建证书模板

下一步是创建一个证书模板。为此,我们将按照以下步骤进行操作:

  1. 打开一个控制台,连接到证书服务器并启动证书管理控制台。在示例实验室中,这台服务器被称为 HZN7-CERTS。如下图所示:

  1. 点击证书模板文件夹(1),然后右键点击。从当前显示的上下文菜单中,点击“管理”(2)。你现在将看到证书模板控制台,如下图所示:

  1. 向下滚动模板显示名称面板,直到找到智能卡登录(3)模板,并单击以高亮显示它。现在右键单击,然后从显示的上下文菜单中点击“复制模板”。您将看到新模板属性配置框,如下图所示:

  1. 点击兼容性选项卡(5)。在兼容性设置部分,从认证机构(6)的下拉菜单中,选择与正在运行的 CA 服务器版本相对应的设置。在示例实验中,CA 服务器运行的是 Windows Server 2012 R2。

  2. 接下来,从证书接收者(7)的下拉菜单中,选择适用于将接收此证书的计算机的设置。在示例实验中,我们将其设置为 Windows 7 / Server 2008 R2。

更改这些设置时,您将看到一个对话框,提醒您关于兼容性更改以及即将进行的模板更改。点击“确定”以接受这些消息并继续操作。

  1. 现在点击常规选项卡(8)框,如下图所示:

  1. 在模板显示名称框(9)中,输入新证书模板的名称。在示例实验中,模板名称为Horizon TrueSSO

  2. 接下来,您需要配置有效期。在有效期(10)下拉菜单中,选择小时选项。然后,您将看到证书模板警告框(11)。

  3. 点击“确定”以接受。接受警告后,续期时间将自动设置为0小时(12)。

  4. 现在点击请求处理选项卡(13)框,如下图所示:

  1. 在目的(14)旁边的下拉框中,选择签名和智能卡登录选项。然后,您将看到证书模板警告框(15),该框会提醒您即将更改证书的用途。点击“是”以接受警告信息并关闭对话框。

  2. 最后,在此屏幕上,选中“允许导出私钥”(16)复选框,并选中“智能卡证书自动续期”(17)复选框。

  3. 接下来,点击加密选项卡(18),如下图所示:

  1. 在提供者类别框中,点击下拉箭头(19)并选择“密钥存储提供者”选项。然后,点击“请求可以使用受试者计算机上任何可用的提供者”(20)的单选按钮,并在请求哈希框中点击下拉箭头(21),选择 SHA256 选项。

  2. 下一个需要配置的选项卡是主题名称选项卡(22),如下图所示:

  1. 点击“从此活动目录信息构建”单选按钮(23),然后勾选“用户主体名称(UPN)”框(24)。

  2. 下一个需要配置的标签是“服务器”标签(25),如下图所示:

  1. 勾选“不要在 CA 数据库中存储证书和请求”框(26)。现在点击“发布要求”标签(27),如下图所示:

  1. 勾选此授权签名数量框(28),并确保此选项的值设置为1

  2. 在应用程序策略框中,点击下拉箭头(29),并选择“证书请求代理”选项。最后,在此标签中,点击“有效现有证书”单选按钮(30)。

  3. 在“新模板属性”配置的最后一部分,点击“安全”标签(31),如下图所示:

  1. 点击选择 Enrollment Servers 组(32),然后点击“添加…”按钮(33)。

  2. 现在,你将看到“选择用户、计算机、服务账户或组”对话框弹出。在“输入要选择的对象名称”框(34)中,输入Enrollment Servers组的名称。你可以只输入组名的前几个字母,然后点击“检查名称”按钮(35)来查找匹配项。此时你将看到 Enrollment Servers 组(34)。

  3. 最后,在“Enrollment Servers 的权限”部分,勾选“允许”标题下的“读取”(36)和“注册”(37)框。

  4. 此步骤现已完成,请点击“确定”按钮以完成配置并关闭对话框。

在下一部分中,我们将发布新创建的证书模板。

发布 TrueSSO 证书模板

现在证书模板已经创建,下一步是发布它。为此,请按照以下步骤进行:

  1. 在证书管理控制台界面,点击证书模板文件夹(1),右键点击,然后在显示的上下文菜单中点击“新建”(2),接着选择“发布证书模板”(3)选项。如下截图所示:

  1. 现在你将看到“启用证书模板”对话框,如下图所示:

  1. 点击Horizon True SSO4),然后点击“确定”按钮。

  2. 现在你将返回到“启用证书模板”对话框,如下图所示:

  1. 接下来,我们需要启用 Enrollment Agent。与上一步一样,在证书管理控制台的界面上,点击Certificate Templates文件夹(5),右键点击,然后从弹出的上下文菜单中,点击“New”(6),然后选择“Certificate Template to Issue”(7)选项。你将看到启用证书模板的对话框,如下图所示:

  1. 点击并选择“Enrollment Agent (Computer)”(8)选项。然后点击“OK”按钮。你将返回到启用证书模板的对话框。现在可以退出证书管理控制台了。

你需要检查 Enrollment Agent (Computer)模板是否与为TrueSSO模板配置的安全设置相同。这意味着它已被添加到注册服务器的安全组,并且已授予读取和注册权限。

最后的几个配置任务是基于命令行的,因此在证书服务器的桌面上,启动一个运行对话框。在运行对话框中,输入cmd以打开命令提示符窗口。

你需要做的第一件事是配置 CA 以进行非持久性证书处理。为此,在命令提示符下,输入以下命令:

certutil –setreg DBFlags +DBFLAGS_ENABLEVOLATILEREQUESTS

运行该命令后的输出如下截图所示:

你需要做的第二件事是配置 CA 以忽略离线证书撤销列表CRL)错误。为此,在命令提示符下,输入以下命令:

certutil –setreg ca\CRLFlags +CRLF_REVCHECK_IGNORE_OFFLINE

以下截图显示了命令成功执行的情况:

最后,正如在命令提示符中所述,你需要重启证书服务。为此,在命令提示符下依次运行以下两条命令:

net stop certsvc
net start certsvc

你应该看到类似于以下截图的内容,显示证书服务成功停止并重新启动:

下一步是将证书部署到注册服务器和连接服务器。

证书部署

下一步任务是将Enrollment Agent (Computer)证书部署到注册服务器上。

通过将 Enrollment Agent (Computer)证书部署到该服务器上,你授权该注册服务器作为 Enrollment Agent 并能够代表最终用户生成证书。

如果你正在跟随示例实验,那么在第四章,安装和配置 Horizon 7 - 第一部分中,你应该已经有了一个名为HZN7-ENROL的注册服务器,我们将在该服务器上部署证书。首先需要做的是打开该服务器的远程控制台:

  1. 启动“运行”命令框并在打开框中输入mmc1),以启动 Microsoft 管理控制台,如下图所示:

  1. 在 MMC 控制台屏幕上,点击“文件” (2) 然后点击“添加/删除管理单元…” (3)。

  2. 现在,您将看到添加或删除管理单元屏幕,如下图所示:

  1. 在左侧的可用管理单元部分,点击以高亮显示并选择“证书”条目(4),然后点击“添加 >”按钮(5)。现在,您将看到证书管理单元框出现,如下图所示:

  1. 选择计算机账户单选按钮(6),然后点击“下一步 >”按钮继续。现在,您将看到选择计算机配置框:

  1. 点击本地计算机单选按钮(7),然后点击“完成”按钮。现在,您将返回到添加或删除管理单元屏幕,并且此时显示的证书管理单元已被选中。

  2. 点击“确定”以关闭添加或删除管理单元屏幕。

现在,您可以在管理控制台中看到证书选项,如下图所示:

接下来的任务是请求注册代理(计算机)证书:

  1. 从控制台根目录,展开证书(本地计算机)文件夹,然后选择并右键点击个人文件夹(1)。在上下文菜单中,导航到“所有任务” (2) 然后选择“请求新证书...” (3),如下图所示:

  1. 您现在将看到证书注册屏幕上的“开始之前”部分。点击“下一步”按钮继续。

  2. 接下来,您将看到选择证书注册策略屏幕。点击“下一步”按钮继续。接下来的屏幕是证书注册请求证书屏幕,如下图所示:

  1. 勾选框以选择注册代理(计算机)选项(4),然后点击“注册”按钮请求证书。您应该看到证书已成功注册:

  1. 最后,点击“完成”按钮以完成配置,关闭证书注册对话框,然后关闭证书管理控制台。

接下来的任务是导入注册服务客户端证书,您需要先从连接服务器导出它,然后再将其导入到注册服务器。

从连接服务器部署注册服务客户端证书,将连接服务器与注册服务器配对。如果不这样做,任何发往注册服务器的连接请求都会被拒绝,结果是无法生成证书。连接服务器启动时会自动生成注册服务客户端证书。

让我们从连接服务器开始导出证书:

  1. 打开连接服务器的控制台。在示例实验室中,这是名为HZN7-CS1的服务器。启动 MMC 控制台并添加我们在前面章节中提到的证书管理插件,然后启动证书管理控制台,如下图所示:

  1. 在左侧窗格的控制台根目录部分,导航到VMware Horizon View Certificates文件夹,通过点击箭头展开它,然后点击Certificates文件夹 (1)。

  2. 点击并选择包含友好名称vdm.ec的证书 (2),右键单击,然后从上下文菜单中选择“所有任务” (3),接着选择“导出…” (4) 选项。你将看到证书导出向导的欢迎界面。点击“下一步”按钮继续。

  3. 现在你将看到导出私钥对话框,如下图所示:

  1. 点击“不, 不导出私钥”单选按钮 (5),然后点击“下一步”按钮。

  2. 在导出文件格式对话框中,接受默认选择的格式选项,然后点击“下一步”按钮继续。

  3. 现在你将看到导出文件对话框,如下图所示:

  1. 在文件名框 (6) 中,输入证书的文件名。在示例实验室中,证书被命名为cs-cert,并且为了方便访问,保存在名为cert的共享文件夹中,这个文件夹位于域控制器上,因为在导入时,注册服务器需要能够访问该证书。

  2. 点击“下一步”按钮继续。

  3. 现在你将看到完成证书导出向导的对话框,如下图所示:

  1. 最后,点击“完成”按钮以完成证书导出过程。你将看到一条消息,表示导出成功。

接下来的任务是将证书导入注册服务器:

  1. 打开远程控制台连接到注册服务器。在示例实验室中,这是名为HZN7-ENROL的服务器。启动 MMC 控制台并添加我们之前提到的证书管理插件,然后启动证书管理控制台,如下图所示:

  1. 在左侧面板的控制台根部分,导航到 VMware Horizon View Enrollment Server Trusted Roots 文件夹(1),点击并选择高亮显示它,然后右键单击。从现在显示的上下文菜单中,点击“所有任务”(2),并选择导入...(3)选项。

  2. 你现在将看到“欢迎使用证书导入向导”屏幕。点击“下一步”按钮以继续。你将看到“文件导入”对话框,如下图所示:

  1. 在文件名框(4)中输入你将要导入的证书的文件名。在示例实验室中,这个文件名为 cs-cert,保存在域控制器的共享文件夹中。点击“下一步”按钮以继续。

  2. 在下一个屏幕中,证书存储,你需要选择证书将存储的存储区:

  1. 在证书存储对话框中,点击“将所有证书放入以下存储区”的单选按钮(5),然后确保证书存储设置为 VMware Horizon View Enrollment Server Trusted Roots

  2. 点击“下一步”按钮以继续。

  3. 你现在将看到“完成证书导入向导”对话框,如下图所示:

  1. 最后,点击“完成”按钮以导入证书。你应该看到一条消息,提示导入成功。

导入完成后,你将在证书管理控制台中看到证书,如下图所示:

成功导入证书后,你可以关闭证书管理控制台。在下一步中,我们将配置连接服务器上的 True SSO。

在连接服务器上配置 True SSO

现在你已经将所有必要的证书放到位,下一步是设置连接服务器上的 True SSO 功能。

此设置过程是命令行驱动的,并使用 vdmUtil 命令,因此第一步是打开连接服务器上的命令提示符窗口。

你需要运行的第一个命令是将注册服务器添加到 Horizon View 环境中。这样你就可以查询注册服务器并收集有关域及其他有用信息(如可用模板和 CA 名称)的信息:

  1. 从连接服务器打开命令行对话框,并输入以下命令:
vdmUtil --authAs administrator --authDomain PVOLAB --authPassword password --truesso --environment --add --enrollmentServer hzn7-enrol.pvolab.com

在配置过程中,你将需要这些信息,所以一定要记下来。

你将看到,注册服务器已经成功添加到环境中:

下一个命令将为你提供有关环境中各种 Horizon 组件的详细信息。这将有助于 True SSO 的配置。

  1. 在命令行中,输入以下命令:
vdmUtil --authAs administrator --authDomain PVOLAB --authPassword password --truesso --environment --list --enrollmentServer hzn7-enrol.pvolab.com --domain pvolab.com

你将看到如下输出:

我们现在可以使用这些信息创建 True SSO 连接器。True SSO 连接器指定了要使用的注册服务器、CA 和证书模板的详细信息。当连接服务器收到启动桌面请求时,它将查找用户所属域的 True SSO 连接器,并使用你配置的组件来获取证书。

  1. 在命令行中,输入以下命令:
vdmUtil --authAs administrator --authDomain PVOLAB --authPassword password --truesso --create --connector --domain pvolab.com --template HorizonTrueSSO --primaryEnrollmentServer hzn7-enrol.pvolab.com --certificateServer pvolab-hzn7-certs-ca --mode enabled

你现在会看到连接器已成功创建并启用,如下图所示:

接下来,我们将通过以下步骤检查 True SSO 是否已安装并正常工作:

  1. 登录到 Horizon View 管理控制台。

  2. 在仪表板屏幕上,找到“系统健康”部分,点击箭头展开“True SSO”部分(21),然后点击pvolab.com的链接(22)。

  3. 你将看到 True SSO 域详细信息框,如下图所示:

  1. 点击“确定”按钮关闭窗口,然后退出 View 管理员。

你已经成功配置了 True SSO 的 View 元素。True SSO 功能的真正优势是与 vIDM 配合使用时,允许用户通过 vIDM 门户实现对虚拟桌面或应用程序的单点登录。

总结

在本章中,我们讨论了部署 Horizon View 时的一些安全方面。我们首先描述了什么是 SSL 证书以及为什么 Horizon View 需要它们,然后通过安装和配置根 CA 服务器并配置示例实验室中的 View 组件来实际展示如何使用这些证书。

本章的第二部分探讨了 Horizon View 的 True SSO 功能。同样,我们通过配置证书服务器来使用此功能,并配置 Horizon View 注册服务器和连接服务器,以使它们在用户登录过程中彼此“信任”。

在下一章,我们将把注意力转向虚拟桌面,并开始构建虚拟桌面映像。

第七章:构建与优化虚拟桌面操作系统

在本书前几章中,我们已经构建了 Horizon View 基础设施及其组件,在本章中,我们将把重点放在虚拟桌面上。我们将探讨如何创建和配置虚拟桌面机器的虚拟硬件元素,基于虚拟桌面机器的最佳实践安装桌面操作系统,并配置该操作系统以实现最佳性能。

构建虚拟桌面机器的核心操作系统的步骤与构建物理桌面机器的过程相差无几。然而,我们需要在操作系统中安装一些额外的任务和软件组件,使其成为一个适合 Horizon View 环境的真正虚拟桌面机器,更重要的是适合终端用户使用。本章将更详细地介绍每个步骤,并在过程中构建多个操作系统镜像。我们将使用示例实验室进行操作。构建过程如以下图所示:

我们将为 Windows 7 桌面构建一台虚拟桌面机器。它将配置为浮动桌面分配,使用链接克隆构建,并且第二台运行 Windows 7 的虚拟桌面机器将配置为专用分配,并从完整克隆构建。最后,我们还将研究创建基于 Windows 10 的即时克隆桌面,并在本章结束时研究交付基于 Linux 的虚拟桌面机器。

本章将涵盖以下主题:

  • 创建 Windows 7 虚拟桌面机器

  • 创建 Windows 10 虚拟桌面机器

  • 创建支持 GPU 的虚拟桌面机器

  • 创建 Linux 虚拟桌面机器

  • 准备虚拟桌面以供交付

构建虚拟桌面镜像的最佳实践

在本节中,我们将讨论一些构建虚拟桌面机器镜像的最佳实践和流程。

在物理桌面环境中,有多种方法可以构建和部署操作系统。例如,你可以使用Microsoft 部署工具包MDT)或微软的系统中心配置管理器SCCM)。这两种选项都可以与所有其他可用的工具一起使用,用来构建桌面镜像,当然也包括 VMware 自己的 Mirage 产品。所以,我们刚才讨论了几种可以用来构建桌面镜像的选项,但让我们特别强调一个你不应该使用的选项:物理到虚拟工具P2V),它将物理镜像转化为虚拟镜像。

最佳实践是从零开始构建一个新的虚拟桌面映像,使其从一开始就设计成虚拟机。毕竟,你可能会为新的硬件平台构建一个新的映像,实际上,你正在做的也是这样的事情。然而,有几个原因不建议使用你的物理映像来创建虚拟桌面映像。其中一个原因是映像的大小,这些映像很可能已经膨胀,过去一年中安装了大量的补丁和更新。你希望你的 VDI 映像保持精简和新鲜,仅安装最新且相关的软件。

另一个原因是,映像中可能包含某些硬件驱动程序或其他基于硬件的软件元素,如 Intel 主动管理技术 (AMT) 这样的桌面硬件管理解决方案,它依赖于固件和其他集成在物理机芯片组中的组件。由于你现在使用的是虚拟桌面机,因此这种硬件不存在,因此你不需要它被安装。

最坏的情况是安装这种解决方案,因为它会影响虚拟桌面机的性能。

技术要求

在进入构建过程之前,我们需要从虚拟硬件的角度查看虚拟桌面机的规格,以及我们需要配置的内容。以下截图列出了虚拟桌面机的要求:

你应该能够根据项目开始时收集的评估数据,制定适合你特定环境的要求。需要记住的一点是,如果在调整性能和最终用户体验时需要,你可以很容易地更改配置。

配置虚拟桌面机大小时,另一个重要因素是避免陷入过度配置的陷阱。例如,如果你只需要一个 CPU,那么就只为虚拟桌面机分配一个 CPU。不要诱惑自己去添加不必要的资源,因为这样最终会降低你在服务器基础设施上能够托管的虚拟桌面机数量,从而增加成本和管理负担。你还可能会使虚拟桌面的性能变慢。正如我们之前提到的,这就是为什么你的评估数据至关重要的原因。

VDI 桌面应根据前面表格中列出的硬件规格指南进行配置。

创建 Windows 7 虚拟桌面机

在这一部分,我们将构建一个 Windows 7 虚拟桌面机器。它将作为我们创建虚拟桌面的主映像操作系统。我们将按照本章开头的图示步骤以及第一个图示,优化并准备作为浮动分配的链接克隆虚拟桌面机器的映像。

创建虚拟桌面机器容器

我们需要做的第一件事是在 vCenter 服务器上构建和配置实际的虚拟桌面机器。这将定义虚拟硬件配置。要定义配置,请按照以下步骤操作:

  1. 打开浏览器并登录到 vCenter vcs1.pvolab.com的 vSphere Web 客户端,如下所示:

登录后,你将看到 vSphere 客户端主页,如下图所示:

  1. 在屏幕左侧的导航快捷方式中,点击“虚拟机和模板” (1),如下图所示:

  1. 展开 vCenter vcs2.pvolab.com,然后点击高亮显示你希望创建虚拟桌面机器的数据中心名称。在示例实验室中,数据中心名为 PVO's Datacenter(2)。右键点击它,并从上下文菜单中选择“新建虚拟机…” (3)。此时你将看到“新建虚拟机配置框”,如下图所示:

  1. 第一个任务是选择创建类型。从选项列表中,点击高亮显示“创建新虚拟机” (4),然后点击“下一步”按钮继续。你将看到选择名称和文件夹的屏幕,如下图所示:

  1. 在虚拟机名称框(5)中,输入新虚拟桌面机器的名称。在示例实验室中,名称为Windows 7 Gold Image

  2. 然后,在选择虚拟机位置的部分,点击以高亮显示你希望在其中创建虚拟机的数据中心。在示例实验室中,这台机器将被创建在名为 PVO's Datacenter 的数据中心6)中。

  3. 点击下一步按钮继续。你将看到选择计算资源的屏幕,如下图所示:

  1. 展开名为 PVO's Datacenter 的数据中心,然后点击你希望托管此虚拟桌面所在的 ESX 服务器。在示例实验室中,192.168.1.131(7)是我们将用于托管虚拟桌面机器的主机服务器的 IP 地址。

由于这将是我们的金像/母机或父虚拟桌面机器,相对于生产环境中的实际虚拟桌面机器来说,位置可能不那么重要。因此,在示例实验室中,我们将使用管理区块来托管此虚拟桌面机器。

  1. 点击“下一步”按钮继续。接下来,您将看到“选择存储”屏幕,如下图所示:

  1. 选择存储该虚拟桌面机器的存储数据中心。在示例实验室中,虚拟桌面机器存储在默认存储区 VM Datastore(8)上。点击“下一步”按钮继续。

  2. 现在您将看到“选择兼容性”屏幕。在这里,我们将为虚拟桌面机器选择虚拟机版本。如文中所述,为了获得最佳性能,您应该选择版本 13,这意味着使用 vSphere 6.5 或更高版本作为宿主平台。如果您使用的是其他宿主平台,请选择与您环境相关的版本。然而,请注意,某些功能可能根据您选择的版本而无法使用。例如,如果您希望支持即时克隆和 vGPU 等功能,则至少需要 vSphere 6。

  3. 在下拉菜单(9)中,选择 ESXi 6.5 及以上版本,如下图所示:

  1. 点击“下一步”按钮继续。接下来,您将看到“选择客户操作系统”屏幕,如下图所示:

  1. 下一步是为虚拟桌面机器选择操作系统。在我们的示例中,这是将作为 Windows 7 的金像模板使用的第一台虚拟桌面机器。

  2. 在“客户操作系统家族”框中,点击箭头展开下拉菜单(10),然后选择 Windows。接着,在“客户操作系统版本”框中,点击箭头展开下拉菜单(11),选择 Microsoft Windows 7(64 位)。选择正确的客户操作系统非常重要,因为它决定了安装 VMware Tools 时在虚拟桌面机器上安装的驱动程序。

  3. 点击“下一步”按钮继续。

  4. 现在,您将看到“自定义硬件”屏幕,您可以在此配置虚拟桌面机器的虚拟硬件规格,如下图所示:

  1. 在此配置屏幕上有几个需要更改的地方。首先,这个虚拟桌面机器将拥有两个虚拟 CPU。在 CPU 框中,点击下拉箭头(12),从下拉菜单(13)中选择 2,为此虚拟桌面机器配置两个虚拟 CPU。

  2. 接下来,通过点击箭头(14)展开“新建网络”选项,然后在“适配器类型”框中,点击下拉箭头(15),选择 VMXNET 3(16)选项,如下图所示:

  1. 因为我们正在构建一个新的虚拟桌面机器,所以需要安装操作系统。为此,我们将把安装介质连接到虚拟桌面机器,以便它能够从中启动并开始安装。向下滚动到“新建 CD/DVD 驱动器”选项,如下图所示:

  1. 点击向下箭头 (17),然后在显示的选项列表中点击“数据存储 ISO 文件” (18)。在示例实验室中,我们已经将安装介质的 ISO 镜像上传到主机服务器的数据存储中。

  2. 接下来,您将看到“选择文件”屏幕,如下图所示:

  1. 展开数据存储 (19),然后点击 ISO 镜像 文件夹 (20)。接着,点击选择要安装在该虚拟桌面机器上的操作系统。在本示例中,我们将安装 Windows 7,因此点击 en_windows_7_professional_with_sp1_x64_dvd 选项 (21)。您的 ISO 镜像可能存储在不同的位置,只需根据您的文件夹位置参考此示例。

  2. 点击“确定”按钮返回虚拟硬件屏幕。

  3. 在此屏幕上,最后需要确保刚刚添加的 ISO 文件作为新 CD/DVD 驱动器连接。为此,请勾选“已连接”框 (22),如下图所示:

  1. 在硬件配置的最后部分,您需要更改其中一个启动选项,以便下一次虚拟桌面机器开机并启动时,直接进入 BIOS 设置屏幕。当然,您也可以打开虚拟桌面机器的控制台并在启动时按 F2 键;但是,该屏幕可能闪过得太快,以至于您可能会错过,因此前一种方法要容易得多。您需要选择此选项并进入 BIOS 设置屏幕的原因是,我们需要更改一些配置设置,使得虚拟桌面机器作为虚拟机而非物理桌面 PC 来运行。我们将在稍后启动新创建的虚拟桌面机器时详细介绍这一点。

  2. 要配置启动选项,请点击 VM 选项卡 (23),然后展开“启动选项”箭头 (24)。勾选“强制 BIOS 设置”框 (25)。如下图所示:

  1. 配置完成后,点击“下一步”按钮继续。您将看到“准备完成”屏幕,如下图所示:

  1. 一旦您对配置详情满意,点击“完成”按钮以完成配置。

  2. 如果现在勾选“最近任务”框,您将看到虚拟桌面机器已成功创建,如下图所示:

  1. 在虚拟桌面机器已经构建并配置完毕后,是时候开机并继续构建过程了。导航到虚拟桌面机器所在的清单中。你应该能看到一个名为 Windows 7 Gold Image 的条目。

  2. 高亮显示虚拟桌面机器 Windows 7 Gold Image(26),右键点击它,然后在显示的上下文菜单中,点击电源(27),接着点击开机(28),如以下截图所示:

  1. 虚拟桌面机器现在将开机并进入 BIOS 设置屏幕,因为我们配置了在下一次启动时执行此操作。安装操作系统后,随后的启动将正常进入操作系统。

在下一部分中,我们将对虚拟桌面机器的 BIOS 设置进行配置更改。

更新虚拟桌面机器的 BIOS

在虚拟桌面机器已开机并启动到 BIOS 设置屏幕后,我们将启动远程控制台屏幕,以便你执行配置步骤。为此,请执行以下步骤:

  1. 在清单部分中,高亮显示 Windows 7 Gold Image 虚拟桌面机器,然后在摘要选项卡下,点击启动远程控制台链接(1),如以下截图所示:

  1. 你现在将看到虚拟桌面机器的 PhoenixBIOS 设置工具屏幕,如以下截图所示:

  1. 首先,你需要做的是禁用软盘驱动器。在 BIOS 设置屏幕的主界面中,使用光标键向下移动,高亮显示 Legacy Diskette A:(2)选项,然后按Enter键。

  2. 现在你将看到一个弹出框,显示软盘选项。再次使用光标键高亮显示禁用选项(3),然后按Enter键。

  3. 接下来,你需要导航到 BIOS 设置屏幕的高级选项卡。为此,按右箭头光标键横向移动到顶部的选项卡,直到高级选项卡被高亮显示(4),如以下截图所示:

  1. 使用下箭头光标,向下移动到 I/O 设备配置(5)选项并按Enter键。你现在将看到高级配置屏幕,如以下截图所示:

  1. 将光标移到串口 A: 的条目上并按Enter键。从弹出框中,选择禁用(6)选项。

  2. 按照相同的步骤禁用串口 B:、并行端口: 和软盘控制器: 等选项,直到所有选项都设置为禁用。完成这些配置更改后,按F10键保存并退出。你将看到设置确认框,如以下截图所示:

  1. 通过选择“是”(7),然后按 Enter 键确认配置更改。BIOS 更改现已保存,虚拟桌面机器将自动重新启动。

你已经成功配置了 BIOS。接下来的步骤是安装操作系统。

操作系统安装选项

你可以选择几种方式来为虚拟桌面机器构建操作系统。第一种方式是使用像 MDT、SCCM 或 VMware 自家的 Mirage 产品(用于完整克隆桌面)之类的工具,部署你已经为 VDI 构建的镜像,但在这个示例实验室中,我们将使用不同的方式,即通过使用安装介质手动构建镜像,展示你需要执行的不同任务,以优化镜像以适应 VDI。

这个构建过程与在 vSphere 上构建其他虚拟机没有区别,因此我们将简要回顾其中的一些内容,以便那些已经熟悉 vSphere 平台的用户能快速复习,并详细讲解,以便那些新接触该技术的用户能够迅速构建他们的第一个虚拟桌面机器镜像。

安装客户操作系统

由于在构建虚拟桌面机器时,我们作为配置的一部分连接了一个 ISO 镜像,因此当虚拟桌面机器启动时,ISO 镜像会被挂载,Windows 7 安装将自动开始。

我们不会详细讲解如何安装 Windows 7,因此请继续进行基本安装,或根据你希望如何配置操作系统给最终用户。一旦安装完成,确保应用任何 Windows 更新和补丁,然后将虚拟桌面机器加入域。

你需要将 VDI 桌面加入域的原因——即使这台机器实际上是模板——是为了确保机器上所有需要的组件、DLL 文件等,都已经准备好,以便能够成功加入域。否则,当你从这个父镜像创建联动克隆并尝试将其加入域时,虚拟桌面机器会要求插入安装介质。对于一两台桌面机器和测试环境来说,这没问题,但在生产环境中,数千台机器就不行了。

一旦你确认父镜像的操作系统已经打了补丁并加入了域,你就可以开始安装一些特定于 VMware 的虚拟机工具和 Horizon View 组件,首先是 VMware Tools。

安装 VMware Tools

VMware Tools 增强了虚拟桌面机器的可用性。它安装了 VMware 特定的设备驱动程序,使虚拟桌面机器能够像物理硬件一样运行,并替代物理硬件的等效物。VMware Tools 的安装是通过 vSphere 客户端启动的:

  1. 在 Windows 7 Gold Image 虚拟机及其概览标签中,点击“安装 VMware Tools”(1),如下所示:

  1. 从 vSphere Web Client 启动安装将有效地将 VMware Tools 安装媒体挂载为虚拟 CD 驱动器,在虚拟桌面机器上显示安装 VMware Tools 对话框,如以下截图所示:

  1. 点击 MOUNT 按钮 (2) 挂载 VMware Tools 安装媒体,然后返回虚拟桌面机器的控制台。

  2. 你将看到自动播放对话框,显示 VMware Tools DVD 驱动器已挂载,并且安装程序可供启动,如以下截图所示:

  1. 点击运行 setup64.exe (3) 启动 VMware Tools 安装程序。

  2. 如果看到用户帐户控制框弹出,警告你有关对计算机进行更改的操作,点击是(Yes)按钮忽略它。

  3. 现在你将看到 VMware Tools 安装向导的欢迎对话框。

  4. 点击 Next > 按钮继续安装。你将看到 Choose Setup Type 对话框,如下图所示:

  1. 选择 Custom (4) 单选按钮,然后点击 Next > 按钮继续。你也可以选择 Typical 选项,它将安装一组标准驱动程序;然而,出于本书的目的,并为了描述所有可用的选项,我们将选择自定义安装。现在你将看到 Custom setup 对话框,如下图所示:

  1. VMware Tools 将安装以下 VMware 设备驱动程序,具体取决于是否选中它们。默认情况下,所有驱动程序都被选中,VMCI 驱动程序除外。下面是这些驱动程序及其功能的描述:

    • Para 虚拟 SCSI:这是针对 PVSCSI 适配器的,旨在增强虚拟化应用程序的性能。

    • 内存控制驱动程序:当虚拟桌面机器在 ESXi 主机上运行时,它可以管理虚拟桌面机器的内存。

    • PS2/USB 鼠标驱动程序:这个虚拟鼠标驱动程序提升了虚拟桌面机器中鼠标的性能。

    • SVGA 驱动程序:这使得 32 位显示、高分辨率和更快的图形性能成为可能。它安装了一个虚拟的 SVGA 驱动程序,替代了标准的 VGA 驱动程序。在 Windows Vista 及更高版本中,还会安装 VMware SVGA 3D(Microsoft – WDDM)驱动程序,增加了对 Windows Aero 的支持。

    • 音频驱动程序:所有 64 位客户操作系统都需要此驱动程序,因为它启用了声音功能。

    • VMXNET3 网卡驱动程序:它提高了网络性能,建议用于虚拟桌面机器。

    • 卷影复制服务:这使得你可以对虚拟桌面机器进行备份或快照。

    • VMCI 驱动程序:这允许虚拟机之间更快的通信。

    • NSX 文件检查驱动程序:这将安装代理程序,以便你可以使用防病毒卸载扫描功能。

  2. 此对话框中的其他选项包括“浏览...”功能,允许你更改 VMware 工具的安装位置,以及“磁盘使用情况”以检查磁盘空间要求,从而了解 VMware Tools 安装所选选项所需的磁盘空间。

  3. 点击“下一步 >”按钮继续。你将看到“准备安装 VMware Tools”对话框。点击“安装”按钮以开始安装过程。

  4. 完成后,你将看到“完成 VMware Tools 安装向导”对话框。点击“完成”按钮以完成安装过程。

  5. 现在,系统会提示你重启虚拟桌面机器,以便启动 VMware Tools 服务。点击对话框中的“是”按钮以重启。

  6. 一旦虚拟桌面机器重启,点击任务栏并检查 VM 图标 (5) 来确认 VMware Tools 服务是否正常运行,如下面的截图所示:

你也可以从虚拟桌面机器启动服务控制台,并检查服务是否正在运行,具体如下面的截图所示:

你已成功安装 VMware Tools。下一步是安装你希望作为父镜像一部分的核心应用程序。

为父镜像安装应用程序

下一阶段是安装你希望作为父镜像一部分的应用程序。这些通常是你的组织中每个用户都会使用的应用程序。你也可以使用其他技术(如 ThinApp 或 App Volumes)来交付应用程序,因为理想情况下,你希望按需交付应用程序,而不是将它们安装到操作系统镜像中,因为这样会使得它们更难以管理。

在示例实验室中,我们已经在 gold 镜像中安装了 Adobe Reader。

在接下来的步骤中,我们将安装 Horizon Agent,以便将虚拟桌面机器注册到 Horizon 环境和连接服务器。

安装 Horizon Agent

Horizon Agent 安装在每台虚拟桌面机器上,用于 Horizon View 客户端与虚拟桌面机器之间的通信。

它还添加了如 View Persona Management 和 USB 重定向等组件。我们将在本节中更详细地介绍这些不同的组件,随着我们在虚拟桌面机器上安装代理。要安装 Horizon Agent,请按照以下步骤操作:

  1. 打开一个 Windows 7 Gold Image 虚拟桌面机器的控制台,并从桌面导航到 Horizon Agent 的安装文件。为了简便起见,我们在域控制器上创建了一个共享文件夹,以便将所有安装介质保存在其中。

  2. 启动VMware-Horizon-Agent-x86_64-7.6.0-9539447文件开始安装,如果你看到“Open File - Security Warning”消息,点击“Run”按钮继续。你现在将看到“Welcome to the Installation Wizard for VMware Horizon Agent”屏幕。

  3. 点击“Next >”按钮继续。你现在将看到许可协议页面,如下图所示:

  1. 选择“I accept the terms in the license agreement”(1)的单选框。

  2. 点击“Next >”按钮继续。你现在将看到网络协议配置对话框,如下图所示:

  1. 由于本实验室使用的是 IPv4,在选项框中,点击以高亮显示 IPv4(2),然后点击“Next >”按钮继续。你现在将看到自定义设置页面。在自定义设置页面上,你可以选择要安装的 Horizon Agent 功能。并非所有功能都是默认安装的,因此在此页面,你可能需要查看一些功能,并选择/取消选择它们,因你可能不想使用某些功能。如果需要,你可以稍后重新安装这些功能。未默认安装的功能将标有红色 X。这些功能如下图所示:

  1. 你可以选择安装以下功能。请注意,某些功能依赖操作系统,因此可能不会显示为可用选项。

    • 3D RDSH:这启用了 RDSH 会话中的硬件加速 3D 渲染。

    • USB 重定向:这允许将 USB 设备插入终端设备,并将 USB 流量重定向到虚拟桌面机器。

    • VMware Virtualization Pack for Skype for Business:这允许终端用户通过 Skype for Business 进行优化的音频和视频通话,且运行于虚拟桌面机器中。

    • VMware Horizon View Composer Agent:这允许虚拟桌面机器作为关联克隆桌面运行。

    • 实时音视频:这允许你将本地连接的音频和视频设备(如 USB 摄像头)重定向到虚拟桌面机器。

    • VMware Horizon Instant Clone Agent:这允许虚拟桌面机器作为即时克隆桌面运行。

    • 客户端驱动重定向:这允许视图客户端与远程桌面和应用程序共享本地驱动器(仅支持 IPv4)。

    • 虚拟打印:这允许用户无需安装打印机驱动程序即可打印到打印机。

    • vRealize Operations Manager Agent:这允许 vRealize Operations Manager 对虚拟桌面机器进行监控,以便与 Horizon View 集成。

    • VMware Horizon 7 个人档案管理:此功能将用户的个人资料从虚拟桌面机器同步到中央服务器上的存储库,这意味着可以将个人资料传递到浮动分配的桌面,以便为该用户个性化设置,使他们可以访问其个人资料。

    • 扫描仪重定向:此功能允许你将本地扫描仪重定向到虚拟桌面机器。

    • 智能卡重定向:此功能允许用户使用智能卡进行身份验证。

    • 串口重定向:此功能允许用户将本地串口重定向到虚拟桌面机器。

    • VMware 音频:此功能启用本地设备的声音。

    • Flash 重定向:此功能将 Flash 内容的处理卸载到本地设备。

    • HTML5 多媒体重定向:此功能将 Chrome 或 Edge 浏览器中的 HTML5 多媒体内容重定向到客户端,并用于性能优化。

    • 设备桥接 BAS 插件:此功能启用 BAS 系统支持的指纹读取器。

    • SDO 传感器重定向:此功能启用简单设备方向SDO)传感器重定向功能。

    • 地理位置重定向:此功能启用客户端地理位置到远程桌面的重定向。

    • Horizon 性能跟踪器:此功能启用 Horizon 性能跟踪器。此工具在远程桌面中运行,监控显示协议的性能和系统资源的使用情况。

3D RDSH 选项未显示,但在安装 RDSH 主机服务器时将可用。

  1. 当你对选择安装的功能满意时,点击“下一步 >”按钮继续。

  2. 在下一个屏幕上,你将看到远程桌面协议配置对话框。你需要启用远程桌面支持才能使视图代理工作。你可以通过组策略始终启用此功能:

  1. 点击单选按钮以启用此计算机的远程桌面功能(3),如前面截图所示。

  2. 点击“下一步 >”按钮继续。

  3. 现在,你将看到“与 Horizon 7 连接服务器注册”对话框,如下截图所示:

  1. 在(主机名或 IP 地址)框(4)中,输入要将此虚拟桌面机器注册到的连接服务器的名称。在示例实验室中,这就是我们的第一个连接服务器,名为hzn7-cs1.pvolab.com

  2. 在身份验证部分,点击“指定管理员凭据”(5)单选按钮。

  3. 在用户名部分(6)中,输入管理员用户名。在示例实验室中,这就是administrator。请注意,你需要以“域\用户名”的格式输入详细信息,因此在我们的示例中,你将输入pvolab\administrator

  4. 现在,在密码框中输入管理员密码。

  5. 点击“下一步 >”继续。你现在将看到“准备安装程序”屏幕。

  6. 点击“安装”按钮以开始安装。

  7. 安装完成后,您将看到“安装完成”屏幕。

  8. 点击“完成”按钮以关闭安装程序。

最后,系统将提示您重启虚拟桌面机器。点击“是”按钮以重启。您将成功安装 Horizon Agent。

在下一部分,我们将开始优化父镜像,使其能够作为虚拟桌面机器运行。

优化客户操作系统

有多种自动化工具和手动流程可用于优化虚拟桌面操作系统。

之前,优化过程是通过一组脚本进行的,您需要手动执行这些脚本来优化正在用于创建金像的虚拟桌面机器。然而,在本章中,我们将介绍基于 GUI 的 VMware 优化工具,因为该工具可以作为 fling 下载。

在 VMware 的术语中,fling 是供最终用户试用并向 VMware 提供反馈的免费软件。通常,这些产品会作为独立产品投入生产,或者成为已有产品的新功能的一部分。需要记住的一点是,如果您选择在生产环境中使用这些工具,产品 fling 不提供官方支持;然而,您可以找到一些博客,它们可能会对您有所帮助。

下载优化工具并将其保存在共享文件夹中。您可以通过以下链接下载该工具:

labs.vmware.com/flings/vmware-os-optimization-tool

下载完成后,我们将运行优化工具,在新建的 Windows 7 Gold Image 虚拟桌面机器上进行优化。请按照以下步骤操作:

  1. 从用于创建父镜像的 Windows 7 Gold Image 虚拟桌面机器中,导航到共享软件文件夹并找到 VMware OS 优化工具应用程序,如下图所示:

  1. 启动VMwareOSOptimizationTool文件以启动优化工具。如果您看到“打开文件 - 安全警告”消息,请点击“运行”按钮继续。您将看到工具启动,如下图所示:

  1. 在屏幕顶部(1),您可以看到虚拟桌面机器的操作系统和硬件配置详情。

  2. 下一部分是模板(2),在这里您可以选择用于优化的模板。从下拉菜单中选择您希望应用于此镜像的操作系统模板。您还可以通过点击屏幕顶部标签列表中的模板选项卡来使用此工具创建新模板。

  3. 要启动此过程,工具会分析当前虚拟机状态与所选模板中包含的优化之间的差异。单击“分析”按钮(3)以开始此过程。

  4. 该工具将运行分析,并返回一份报告,显示需要优化的组件(4)。在此阶段,您可以选择或取消选择选项,然后再实际执行优化。滚动浏览分析结果,以了解将要进行的更改。

  5. 当您对选项满意时,单击“优化”按钮(5)以开始优化过程。此时,图像将根据您选择的模板中的设置和配置细节进行优化。优化进度如下图所示:

  1. 优化过程完成后,您将自动看到“优化”标签和优化结果,如下图所示:

有关如何优化桌面操作系统以便在虚拟环境中运行的更多详细信息,请查看以下链接,该链接将带您进入 VMware Windows 操作系统优化工具指南:

www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/vmware-view-virtual-desktops-windows-optimization.pdf

完成优化过程后,退出工具。在下一部分中,我们将查看虚拟桌面机器的后续步骤。

优化后的任务

最后需要做的一件事是释放 IP 地址,如果您一直在使用 DHCP,以便当从此父映像创建新的虚拟桌面机器时,它们不会有重复的 IP 地址,从而可以获取新的 IP 地址:

  1. 通过按下 Windows 键和 R 打开命令提示符窗口,然后在运行对话框中输入 cmd

  2. 在打开的命令提示符窗口中,输入以下命令:

ipconfig /release

在关闭虚拟桌面并完成映像构建之前,还有一些其他的清理任务需要执行。

关键的一点是不要忘记整理清理工作。例如,清空回收站,删除任何浏览器历史记录或临时文件。基本上,删除所有不属于父映像的内容。一旦您确认映像已按照您的具体要求进行了优化,便可以关闭虚拟桌面机器。

随着 Windows 7 映像构建的完成,我们将最终准备此映像,使其准备交付。

创建 Windows 10 虚拟桌面机器

对于示例实验室,我们将重复构建和优化过程,构建第二个父镜像,但这次我们将构建一个 Windows 10 虚拟桌面机器。

构建完成后,这个 Windows 10 父镜像将用于创建即时克隆虚拟桌面机池。

我们将不再逐步显示每个屏幕,而是列出创建 Windows 7 父镜像时我们所遵循的步骤,并通过一些截图来突出显示差异。您可以参考前面的部分以获取更多细节。

创建虚拟桌面机器容器

和创建之前的虚拟桌面机器一样,首先我们需要做的是在 vCenter 服务器上构建和配置实际的虚拟桌面机器。这将定义虚拟硬件配置。正如我们之前提到的,整个过程与 Windows 7 的构建步骤完全相同,所以我们将覆盖任务并突出显示不同的截图:

  1. 按照之前描述的 Windows 7 构建步骤,直到到达 选择名称和文件夹 的步骤,如下所示截图:

  1. 虚拟机名称 框中 (1),输入新虚拟桌面机器的名称。在示例实验室中,这个名称为 Windows 10 Gold Image

  2. 然后,在选择虚拟机位置的部分,点击并高亮显示您希望创建虚拟机的数据中心。在示例实验室中,这台机器将被创建在名为 PVO's Datacenter (2) 的数据中心。

  3. 点击 NEXT 按钮继续。继续执行之前在 Windows 7 构建过程中描述的步骤,直到您看到 选择客机操作系统 屏幕,如下所示截图:

  1. 下一步是选择虚拟桌面机器的操作系统。在这个示例中,这是第二台虚拟桌面机器,将作为 Windows 10 的金像模板。

  2. 客机操作系统系列 下拉框中,点击箭头 (10),选择 Windows。然后,在 客机操作系统版本 下拉框中,点击箭头 (11),选择 Microsoft Windows 10 (64-bit)。选择正确的客机操作系统非常重要,因为它决定了安装 VMware Tools 时哪些驱动程序将被安装到虚拟桌面机器上。

  3. 点击 NEXT 按钮继续执行 Windows 7 构建过程中的步骤,直到显示 选择文件 屏幕,如下所示截图:

  1. 展开数据存储区(5),然后点击 ISO Images 文件夹(6)。接着,点击选择将要安装在此虚拟桌面机上的操作系统。在此示例中,我们将安装 Windows 10,因此点击 engb_windows_10_enterprise_version_1511_x64_DVD_7224923.iso 选项(7)。你的 ISO 镜像可能存储在其他位置,请根据自己的文件夹位置进行选择。

  2. 点击“确定”按钮返回到虚拟硬件屏幕,然后继续执行 Windows 7 构建过程中的步骤。

  3. 现在虚拟桌面机已经构建并配置完成,是时候启动它并继续构建过程了。导航到库存中的虚拟桌面机。你应该看到一个名为 Windows 10 金色镜像的条目。

  4. 选中虚拟桌面机 Windows 10 金色镜像,右键点击它,在弹出的上下文菜单中点击“电源”,然后点击“开启电源”。

  5. 虚拟桌面机现在将启动并进入 BIOS 设置屏幕,因为这是我们配置的下一次启动时发生的情况。随后的启动将正常进入操作系统,一旦操作系统安装完毕。

在下一节中,我们将对虚拟桌面机进行配置更改。

完成 Windows 10 构建

与 Windows 7 虚拟桌面机类似,你需要启动新创建的 Windows 10 虚拟桌面机并完成配置。此过程包括需要完成的以下任务:

  • 更新虚拟桌面机 BIOS

  • 安装来宾操作系统(Windows 10)

  • 安装 VMware Tools

  • 为父镜像安装应用程序

  • 安装 Horizon Agent

  • 优化来宾操作系统

  • 完成优化后的任务

现在我们已经完成了所有的构建任务,剩下的就是释放 IP 地址,然后清理临时文件、浏览器历史记录等。完成这些后,关闭虚拟桌面机电源,它已经准备好作为虚拟桌面机模板来准备镜像。

创建支持 GPU 的虚拟桌面机

在本节中,我们将构建第二个 Windows 10 虚拟桌面机,但这次是用于配备专用硬件的 NVIDIA GPU 卡。如前所述,有三种提供高端图形的方式。在接下来的示例中,我们将设置一个虚拟桌面机来使用 NVIDIA GRID vGPU。

创建虚拟桌面机容器

第一步,和我们之前讨论的 Windows 10 构建过程一样,是构建虚拟机本身。我们将按照本章中之前描述的步骤构建一个 Windows 10 虚拟桌面机,直到我们需要在此时添加 NVIDIA GRID vGPU 时配置不同的虚拟硬件。

在编写本书时,由于我们使用的是 vSphere 6.5 作为托管平台,因此你还需要使用基于 Flash 的旧版 vSphere 客户端来配置 vGPU 设置。

  1. 按照上一部分 创建 Windows 10 虚拟桌面机器 中描述的步骤,直到到达“自定义硬件”部分,如下图所示:

  1. 在“虚拟硬件”选项卡下,点击内存(1)的下拉箭头,并勾选“预留所有客户内存(全部锁定)”(2)复选框。

如果你没有配置内存预留,那么虚拟桌面机器将无法启动,因为它无法确保内存可用。

  1. 接下来,在框的底部,在“新设备”部分,点击下拉箭头(3),然后从选项列表中选择共享 PCI 设备(4),如下图所示:

  1. 现在,点击“添加”按钮(5)以添加新 PCI 设备,如下图所示:

  1. 现在,你将看到 NVIDIA GRID vGPU 已作为设备(6)添加。该设备在配置 ESXi 主机服务器时已为 PCI 直通进行配置,详细信息见 第四章,安装和配置 Horizon 7 - 第一部分。如下图所示:

  1. 如果你点击 GPU 配置框(7)上的下拉箭头,你将看到支持的 GRID 配置文件列表,你可以根据虚拟桌面机器的图形需求和用户来选择所需的配置文件:

完成这些步骤后,你可以继续执行构建步骤,以在安装客户操作系统并进行优化之前更新 BIOS 设置。

为启用 GPU 的桌面安装操作系统

在示例实验室中,我们将构建一台 Windows 10 虚拟桌面机器,以提供高端图形功能。要安装操作系统,请按照本章 创建 Windows 10 虚拟桌面机器 部分下的 安装客户操作系统 部分中描述的步骤进行,但有一个区别。

安装 Horizon Agent 后,你需要在虚拟桌面机器上安装 NVIDIA 驱动程序。驱动程序可以从以下链接下载:www.nvidia.com/Download/index.aspx?lang=en-us

从这里,你可以根据需要选择正确的显卡,如下图所示:

需要注意的是,当你安装 NVIDIA 驱动程序软件时,确保选择安装所有组件,而不是使用快速选项。快速选项会遗漏一些需要在虚拟桌面机器中运行的关键组件。

一旦你安装了驱动程序,完成操作系统设置并安装了任何附加应用程序,之后执行优化步骤,最好检查显卡是否正确安装。通过查看虚拟桌面机器的设备管理器来完成此操作,如下图所示:

现在你应该已经准备好了一个启用了 GPU 的虚拟桌面镜像,可以为最终用户交付做准备。

完成 GPU 启用的桌面构建

在操作系统已经构建并安装了 NVIDIA 组件后,你可以继续完成剩余的任务以完成构建。所有这些任务在前面的章节中都有介绍,并列出如下:

  • 安装 VMware Tools

  • 为母镜像安装应用程序

  • 安装 Horizon View Agent

  • 优化客操作系统

  • 优化后的任务

完成这些任务后,你将拥有三个虚拟桌面机器,作为母镜像使用,准备创建新的虚拟桌面机器并交付给最终用户。

在查看最终准备步骤之前,我们将创建一个最后的虚拟桌面机器,这次使用基于 Linux 的操作系统。

创建 Linux 虚拟桌面机器

我们要构建的最后一台虚拟桌面是用于 Linux 操作系统的,本例中使用的 Linux 发行版是 CentOS。

该过程与安装 Windows 操作系统几乎相同;但是,在安装 Horizon Agent 时会有一些差异。过程从创建虚拟桌面机器本身开始。

和创建之前的虚拟桌面机器一样,我们首先需要在 vCenter 服务器上构建和配置实际的虚拟桌面机器。这将定义虚拟硬件配置。

如我们之前提到的,过程与我们为 Windows 7 和 Windows 10 所遵循的相同,因此我们将介绍任务并仅突出显示不同的截图:

  1. 按照我们之前描述的 Windows 7 构建步骤进行,直到你进入“选择名称和文件夹”步骤,如下图所示:

  1. 在虚拟机名称框 (1) 中,输入新虚拟桌面机器的名称。在示例实验室中,这台机器被称为 CentOS Linux Desktop

  2. 然后,在选择虚拟机位置的部分,点击突出显示你希望创建此虚拟机的机房位置。在本示例实验室中,这台机器将被创建在名为 PVO's Datacenter(2)的机房中。

  3. 点击 NEXT 按钮继续构建过程,按照 Windows 7 构建中描述的步骤,直到你到达选择来宾操作系统界面,如下图所示:

  1. 下一步是为虚拟桌面机器选择操作系统。在本例中,这是第二台虚拟桌面机器,将用作 Windows 10 的金像模板。

  2. 在“来宾操作系统系列”框中,点击下拉菜单的箭头(10)并选择 Linux。然后,在“来宾操作系统版本”框中,点击下拉菜单的箭头(11)并选择 CentOS 7(64 位)。正确选择来宾操作系统非常重要,因为它决定了 VMware Tools 安装时将安装哪些驱动程序。

  3. 点击 NEXT 按钮继续构建过程,按照 Windows 7 构建中描述的步骤,直到你到达选择文件界面,如下图所示:

  1. 展开 datastore1(5),然后点击ISO Images文件夹(6)。接着,点击选择将要安装到此虚拟桌面机器上的操作系统。在本例中,我们将安装 Windows 10,因此点击 CentOS-7-x86_64-DVD-1511.iso 选项(7)。你可能将 ISO 镜像存储在其他位置,因此请按照此示例操作,并根据你的文件夹位置进行选择。

  2. 点击“OK”按钮返回虚拟硬件屏幕,并继续之前描述的构建过程。现在虚拟桌面机器已经构建并配置完成,是时候启动它并继续构建过程了。进入虚拟桌面机器的清单中。你应该会看到一个名为 CentOS Linux Desktop 的条目。

  3. 高亮选择名为 CentOS Linux Desktop 的虚拟桌面机器,右键单击它,在弹出的上下文菜单中点击“电源”,然后点击“开机”。

  4. 现在虚拟桌面机器将启动并进入 BIOS 设置界面,因为这是我们配置的下一次启动行为。一旦操作系统安装完成,后续启动将正常进入操作系统。

在接下来的部分,我们将对虚拟桌面机器进行配置更改。

完成 Linux 虚拟桌面构建

与 Windows 7 和 Windows 10 虚拟桌面机器一样,你需要启动新创建的 Linux 虚拟桌面机器并完成配置。此过程包括以下任务:

  • 更新虚拟桌面机器的 BIOS

  • 安装来宾操作系统(Windows 10)

  • 安装 VMware Tools

  • 为母镜像安装应用程序

  • 安装 Horizon Agent(见下文)

  • 优化客户操作系统

  • 完成后优化任务

现在我们已经完成了所有的构建任务,剩下的就是释放 IP 地址,然后清理临时文件、浏览器历史记录等。完成这些后,关闭虚拟桌面机器,它已经准备好,可以作为我们的虚拟桌面机器模板进行使用。

安装 Horizon Agent

现在,我们可以安装 Horizon View Agent。安装过程与之前的安装略有不同,因为这是基于 Linux 的操作系统:

  1. 您可以通过使用 Linux 桌面从 VMware 下载网站下载 Linux 安装程序,或者从示例实验室下载,因为安装程序已经通过 WinSCP 复制到 Linux 桌面上。

  2. .tar 文件 VMware-horizonagent-linux-x86_64-7.0.0-3617131.tar.gz (1) 被复制并提取,以获取安装程序,如下图所示:

  1. 提取完软件后,接下来的任务是运行安装脚本。

  2. 从 Linux 虚拟桌面的桌面,点击应用程序 (3),收藏 (4),然后选择终端 (5) 打开一个终端会话,如下图所示:

  1. 打开终端会话后,切换到 VMware Agent 软件提取目录,如下图所示:

  1. 接下来,使用以下语法和选项启动安装脚本:
./install_viewagent.sh -b hzn7-cs1.pvolab.com -d pvolab.com -u administrator -p xxxxxxxx
  1. 切换选项如下:

    • -b:要注册的连接服务器的完全限定名称

    • -d::您的域名

    • -u:具有注册权限的帐户用户名

    • -p:帐户密码

  2. 当安装脚本启动时,您将首先看到 EULA 信息。在屏幕底部,您将看到 Are you sure you want to install linux agent y/n? 提示,如下图所示:

  1. 输入 Y 然后按 Enter。完成后,您将看到以下截图:

Horizon Agent for Linux 现在已经成功安装。请重启虚拟桌面机器以完成安装。

优化客户操作系统

与基于 Windows 的操作系统不同,Linux 系统没有自动优化工具可用;然而,您仍然应考虑通过关闭占用不必要资源的任务或应用程序来优化镜像,例如磁盘 I/O 或 CPU 周期。您还需要确保配置操作系统以与 Active Directory 身份验证兼容。

现在镜像已经构建完成,我们可以准备这些镜像以便将其交付给最终用户。

准备虚拟桌面以便交付

现在我们已经拥有了完全优化的虚拟桌面机器父镜像,可以供 Horizon View 使用,下一阶段是将这些镜像准备好以交付给最终用户。

桌面准备有两种不同的方式,取决于你是使用完整克隆桌面,还是使用链接/即时克隆桌面。完整克隆将使用虚拟机模板来创建虚拟桌面机器,而链接/即时克隆将使用快照来创建虚拟桌面机器。

池设计——快速概览

我们将在第八章中更详细地介绍桌面池的创建,配置和管理桌面池 - 第一部分,但现在,我们先快速概览一下池设计的基础知识,以及我们在本章中创建的镜像将如何使用。

通常,你会为每种类型的虚拟桌面机器创建一个桌面池,通常按使用场景或部门分类。在本章中,我们已构建了几种不同类型的虚拟桌面机器,这些虚拟桌面机器将在以下桌面池中使用:

  • Windows 7:这将作为非持久性的链接克隆构建的桌面使用

  • Windows 10:这将作为带硬件启用 GPU 的专用完整克隆使用

  • Windows 10:这将作为非持久性的即时克隆构建的桌面使用

  • CentOS 7:这将作为持久性的 Linux 桌面使用

由于我们有链接克隆、完整克隆和即时克隆桌面,每种桌面的准备方法不同。我们将在接下来的章节中介绍这些内容。

为链接克隆创建快照

我们将为交付准备的第一台虚拟桌面机器是 Windows 7 非持久性链接克隆虚拟桌面机器。为了准备这个镜像进行交付,我们需要使用 vCenter 和 vSphere Web Client 对虚拟桌面机器进行快照。完成快照后,View 管理员可以使用它创建一个新的桌面池,虚拟桌面机器将基于链接克隆构建。它将用于在 View Composer 中创建副本:

  1. 要创建快照,请登录 vSphere Web Client,导航至 Windows 7 金像机虚拟桌面机器(1)),确保在操作之前该虚拟机已关闭。

  2. 单击虚拟桌面机器以选中它,右键单击它,在弹出的菜单中选择“快照”(2),然后选择“创建快照…”(3)选项,如下图所示:

  1. 现在你将看到“为 Windows 7 金像机创建虚拟机快照”对话框,如下图所示:

  1. 在名称框(4)中输入此快照的名称。在示例实验室中,我们将其命名为 Windows 7 Gold Image。最佳实践是给它起一个容易识别的名称,因为你将在配置桌面池时,在视图管理员中搜索这个快照。在描述框(5)中,输入描述,以更详细地说明该快照的目的。

  2. 当你准备好创建快照时,点击“确定”按钮。

  3. 要检查是否已拍摄快照,请导航至快照管理器。

  4. 为此,在 vSphere Web 客户端中,选中 Windows 7 Gold Image 虚拟桌面机器(6)。右键点击它,在弹出的菜单中点击“快照”(7),然后选择“管理快照”选项(8),如下所示的截图:

  1. 现在你将看到 Windows 7 Gold Image 的管理快照对话框,在这里你可以看到刚刚拍摄的快照,如下图所示:

  1. 你还将能够看到已经拍摄了多少快照,并且能查看它们的创建时间。这有助于对父镜像进行版本控制。

  2. 点击“完成”关闭管理快照屏幕。

你现在已经成功拍摄了一个快照,可以作为从中创建的所有虚拟桌面机器的基础镜像。我们将在第八章中看到如何使用这个快照交付链接克隆虚拟桌面机器,配置与管理桌面池——第一部分

创建即时克隆的快照

下一个要准备交付的镜像是 Windows 10 镜像。由于它将用于即时克隆桌面池,因此基础镜像再次从父镜像的快照开始。

要创建该快照,请按照前一节中描述的过程创建新快照,但这次使用 Windows 10 Gold Image 虚拟桌面机器来创建快照。

创建完全克隆的模板

对于第二个 Windows 10 虚拟桌面机器(启用 GPU),以及 CentOS Linux 虚拟桌面机器,我们将创建持久的完全克隆虚拟桌面机器。为此,我们将按照本节中描述的任务进行操作。

要将这些虚拟桌面机器用作完全克隆虚拟桌面的父虚拟桌面机器,你需要先将它们转换为虚拟机模板,或使用 vCenter 和 vSphere 客户端的克隆到模板功能。

一旦完成,你可以使用视图管理员基于虚拟桌面机器创建新的桌面池(一个用于 Linux,另一个用于 Windows 7 GPU),并为每个桌面池使用这些模板。

在示例实验中,我们将使用 Windows 7 镜像。创建 Linux 虚拟桌面机器的过程完全相同,因此请重复这些步骤,为该操作系统创建模板。然而,每个模板的池配置会有所不同,正如我们在第八章《配置和管理桌面池 - 第一部分》中所看到的,配置和管理桌面池 - 第一部分

  1. 要创建快照,请登录 vSphere Web Client,并导航到 Windows 10 Gold Image 虚拟桌面机器(1),确保该机器已关闭电源。

  2. 点击虚拟桌面机器以突出显示它,右键单击,从弹出的菜单中点击 Clone(2),然后选择 Clone to Template…(3)选项,如下图所示:

  1. 现在,您将看到 Windows 10 Gold Image – Clone 虚拟机到模板的配置对话框。

  2. 在虚拟机模板名称框(4)中,输入模板的名称。在示例实验中,此模板称为 Windows 10 Gold Image Template。

  3. 然后,在选择模板的位置部分,点击以突出显示您希望创建虚拟机的那个数据中心(6)。在示例实验中,这台机器将被创建在名为 PVO's Datacenter 的数据中心,如下图所示:

  1. 点击 NEXT 按钮继续。

  2. 您现在将看到选择计算资源屏幕。展开名为 PVO's Datacenter 的数据中心,然后点击您希望托管此模板的 ESXi 主机服务器。在示例实验中,esx-1.pvolab.com 将作为托管服务器。

  3. 点击 NEXT 按钮继续。

  4. 您现在将看到选择存储屏幕。选择存储此模板的数据存储库。在示例实验中,模板存储在 VM Datastore 上。

  5. 点击 NEXT 按钮继续。您现在将看到“准备完成”屏幕。

  6. 点击 FINISH 按钮以完成配置,并创建 Windows 10 的虚拟桌面机器模板。

您已成功创建一个模板,可以作为父镜像用于创建新的虚拟桌面机器。重复相同的过程,为 Linux 桌面虚拟机创建模板,并将该模板命名为 CentOS Linux Desktop Template。完成后,如果您导航到 vCenter 中的虚拟机和模板视图,您将看到以下内容:

我们将在第八章《配置和管理桌面池 – 第一部分》中使用这些模板,创建桌面池时。

总结

在本章中,我们已构建了多个虚拟桌面机器镜像,这些镜像将作为所有虚拟桌面机器的父镜像。

为了构建和配置虚拟桌面机器,我们制定并遵循了一个流程。这个流程从创建虚拟硬件容器、安装客户操作系统、安装特定于 Horizon 的组件、优化它们以作为 Horizon 虚拟桌面机器运行开始,最后通过创建模板或快照来准备它们,这些模板或快照将用于创建将交付给最终用户的虚拟桌面机器。

在下一章,我们将开始了解如何配置和管理桌面池。

第八章:配置与管理桌面池 - 第一部分

现在您已经在上一章中准备了多个桌面镜像,下一步是配置桌面池,将这些桌面提供给最终用户。因此,在本章中,我们将介绍如何在 Horizon View 中创建和管理桌面池。

总结一下,桌面池是一个或多个具有相似属性的虚拟桌面机器的集合。这里的“相似属性”指的是它们具有相同的操作系统版本、应用程序、内存、CPU 或其他配置。

本章将涵盖以下主题:

  • 自动化桌面池

  • 创建手动桌面池

  • 管理链接克隆桌面池

  • 部署后审查基础设施

桌面池类型

不同的桌面池也可以以不同方式构建和分配。例如,一个池可能使用链接克隆技术构建,另一个池可能使用专用用户分配。可用的桌面池类型如下:

  • 自动化桌面池

  • 手动桌面池

  • RDS 桌面池

那么,让我们花点时间来描述每种桌面池的用途。

自动化桌面池是由 Horizon View 根据快照或虚拟机模板自动创建的一组桌面。自动化池中的桌面可以按需创建,也可以提前构建。它们还可以在注销时被删除或刷新。自动化池通常是 Horizon View 部署中最广泛使用的池,因为它们为管理提供了极大的灵活性。

手动桌面池提供对现有桌面的访问,不论它是虚拟的还是物理的,只要它上面安装了 View Agent。手动池由于管理开销较大,通常用于特殊用途场景。此外,您通常会使用图像管理工具,如 VMware Mirage 或 SCCM,来简化这些机器的管理。

最后,RDS 桌面池是一种为任务工作者提供高度整合的绝佳方式,适用于您的 Horizon View 环境。RDS 桌面池适合的一个示例是呼叫中心用户,这些用户使用一两个简单的应用程序,并不需要完整的桌面。在第十八章中,我们将介绍 RDS 桌面,《通过 Horizon 7 提供发布的桌面》

在接下来的部分中,我们将使用上一章中创建的示例实验室和父桌面镜像来配置不同的池选项。我们将构建以下桌面池:

  • 以下是自动化桌面池的内容:

    • Windows 7 专用,链接克隆桌面池

    • Windows 7 专用,完整克隆桌面池

    • Windows 7 浮动型,链接克隆桌面池

    • Windows 7 浮动型,完整克隆桌面池

    • Windows 10 浮动型,瞬时克隆桌面池

  • 手动桌面池

我们还将向您展示如何使用 Horizon View 管理员经典控制台以及新的网页客户端风格 Horizon 控制台来构建桌面池。

自动化桌面池

自动化桌面池将是我们 Horizon View 环境中的最大使用案例,因此我们将首先学习如何创建和管理它们。

在您开始运行配置向导以创建自动化桌面池时,系统会问您一些问题,进一步定义用户如何使用桌面池。其中第一个问题是,桌面将如何分配给最终用户?

第一个选项是创建专用桌面分配。与此选项一起,您将有自动分配的选择。专用桌面通常用于用户桌面中存储或配置了对该用户重要的内容,或者由于应用程序特定的差异(例如,要求使用特定 MAC 地址的许可限制)。这意味着每次用户想要连接到桌面时,他们总是会得到相同的桌面。

可以使用完整克隆、链接克隆或即时克隆构建专用桌面。

使用链接克隆构建的专用虚拟桌面,您还可以为虚拟桌面添加一个持久磁盘,以保存用户使用桌面时所做的所有更改。如果之后需要刷新或重组桌面操作系统,用户将不会丢失桌面上的自定义设置或个人数据,因为它们存储在单独的磁盘上。然而,您需要注意的是,持久磁盘没有简单的备份方法,因此,您可能决定使用其他工具来保护和更新这些桌面。

创建专用的链接克隆桌面池

在本节中,我们将通过配置向导创建第一个桌面池,构建一个使用链接克隆的专用 Windows 7 桌面,并使用前一章创建的 Windows 7 金像快照作为父镜像,从而创建虚拟桌面。

要创建桌面池,我们将首先通过 Horizon View 管理员控制台操作,之后再使用新的 Horizon 控制台。

使用 Horizon View 管理员控制台

使用 Horizon View 管理员设置桌面池,请执行以下步骤:

  1. 从工作站打开浏览器,输入 View 连接服务器的地址。在示例实验室中,连接服务器的地址是 https://hzn7-cs1.pvolab.com/admin。别忘了在末尾加上 /admin,否则您会进入 Horizon 客户端页面。

  2. 现在您将看到 View 管理员登录界面,如下图所示:

  1. 使用为 View 管理员设置的管理员账户登录。你现在将看到 Horizon View 管理员仪表盘屏幕,如下图所示:

  1. 从 Horizon View 管理员界面中,点击展开“目录”选项(1),然后点击“桌面池”(2)。然后在现在显示的桌面池窗格中,点击“添加...”按钮(3)。

  2. 你现在将看到“添加桌面池”屏幕,从类型部分开始,在这里我们选择你想要创建的桌面池类型:

  1. 选择“自动化桌面池”单选按钮(4)。在选择各种桌面池类型时,右侧的描述将发生变化,提醒你不同桌面池类型之间的区别以及每种桌面池所支持的功能。

  2. 现在点击“下一步 >”按钮继续。

  3. 你现在将看到用户分配屏幕,如下图所示:

  1. 选择“专用”单选按钮(5)。默认情况下,“启用自动分配”选项(6)将被选中。这意味着桌面将根据用户的登录顺序按先到先得的原则分配。如果由于某种原因,你需要确保某个用户分配到特定桌面,那么你需要取消选中此框,并手动为他们分配一个虚拟桌面机。

  2. 点击“下一步 >”按钮继续配置。接下来,你将配置如何使用与此连接服务器关联的 vCenter 服务器构建虚拟桌面机,如下图所示:

在此配置屏幕中,你可以选择构建即时克隆、View Composer 链接克隆或完整虚拟机。

  1. 对于第一个桌面池,我们将使用链接克隆,因此选择“View Composer 链接克隆”单选按钮(7)。

  2. 接下来,你需要从列表中选择相关的 vCenter 服务器。在示例实验室中,显示了 vCenter 192.168.1.178,以及我们为 View 设置的 vCenter 用户账户(8)。

  3. 点击“下一步 >”按钮继续配置。下一个配置屏幕是桌面池标识如下面的截图所示:

  1. 在“ID”框(9)中,输入此桌面池的 ID。在示例实验室中,我们输入了 Win7-dedicated-lc 的 ID。

你只能在池 ID 中使用字符 a-zA-Z0-9-_

  1. 在“显示名称”框(10)中,输入此池的名称。请记住,显示名称是向最终用户展示的内容,因此确保给它起一个非技术性的名称,用户能够理解。

  2. 最后,在描述框(13)中,输入描述详细描述桌面池及其用途。

  3. 单击“下一页>”按钮以继续配置。现在您将看到桌面池设置配置屏幕,如以下截图所示:

此配置页面是我们开始配置定义虚拟桌面机器在桌面池内行为方式的设置页面。它提供了用户连接前、使用虚拟桌面机器时以及断开连接后的配置选项。

在此屏幕上有多个配置选项,因此我们将它们分解为单独的部分。

常规设置

我们将首先通过以下步骤来配置“常规”设置:

  1. 首先,在“常规”部分,您可以配置桌面池的状态。从下拉菜单中选择“启用”选项(12)以启用此池,这意味着有资格使用它的用户将可以使用其中的任何虚拟桌面机器,并且将在池内配置和提供给最终用户使用。如果将状态设置为已禁用,则不会配置虚拟桌面机器,并且不会向最终用户提供。如果您正在为用户预配置新的池,然后确认配置正确后再启用它,可能需要将状态设置为禁用

  1. 在“常规”部分下的第二个选项是连接服务器限制,您可以选择与连接服务器关联的标签,以限制用户可以从哪里连接。单击“浏览…”按钮以配置这些限制。如果您希望允许从任何连接服务器访问此桌面池,则应单击“无限制”(13)的单选按钮。如果您单击“限制为这些标签”(14)的单选按钮,则会看到已配置标签的列表。只需从列表中突出显示所需标签,然后单击“确定”。

  2. 常规部分下的最后一个设置是类别文件夹。此设置允许您将此桌面池的详细信息创建为快捷方式直接放到客户端设备上,以便终端用户可以轻松访问他们的资源。要配置此选项,请点击“浏览...”按钮。第一个单选框选项是禁用(15),用于关闭此功能。要启用该功能,请选择从文件夹列表中选择类别文件夹(16)。然后,您可以从列表中选择类别文件夹,或者通过在新文件夹框(17)中输入您想创建的文件夹名称来创建一个新的文件夹。输入名称后,点击“添加”按钮。最后,您可以选择快捷方式的位置(18)。您可以选择放置快捷方式的客户端设备的开始菜单/启动器或桌面。

  3. 配置完选项后,点击“确定”按钮。

接下来需要配置的部分是远程设置。

远程设置

这些设置定义了虚拟桌面机器的电源状态,以及终端用户连接和断开连接时发生的情况。设置选项如下所示:

接下来,您可以配置以下远程设置选项:

  1. 第一个选项是远程机器电源策略选项,用于定义用户连接和断开连接时虚拟桌面机器的电源状态。点击下拉菜单(19),您将看到以下选项:

    • 不采取任何电源操作:虚拟桌面机器将保持在最后的状态。例如,如果桌面保持开机状态,则它将继续保持开机。

    • 确保机器始终开机:虚拟桌面机器在被终端用户或管理任务关闭后,始终会恢复为开机状态。

    • 挂起:当用户注销时,虚拟桌面机器将被挂起。注意,挂起功能在使用 NVIDIA GRID vGPU 桌面时不可用。

    • 关机:当用户注销时,虚拟桌面机器将关机。

在配置电源策略时,最重要的是理解您的使用场景并选择合适的选项。例如,如果您有 200 个用户,计划在早上 9:00 的 10 分钟内登录,而桌面处于关闭或挂起状态,这可能会导致桌面恢复或开机时出现延迟并造成较大的性能峰值。或者,如果您使用的是基于班次的工作模式的专用桌面,并选择始终保持桌面开机,那么可能会导致桌面资源分配过多,甚至可能拥有比实际需要或使用更多的操作系统和软件应用许可。

  1. 下一个设置是“断开连接后自动注销”(20)。此选项允许你定义当用户仅从桌面断开连接而未选择注销时发生的情况。点击下拉菜单查看以下可用选项:

    • 立即:当用户从虚拟桌面机器断开连接时,立即注销。

    • 永不:当用户从虚拟桌面机器断开连接时,绝不会注销。

    • 等待...:当用户从虚拟桌面机器断开连接时,在设定的时间后注销。你可以选择在多少分钟后桌面会被注销。

再次强调,如何配置此设置将很大程度上取决于用户如何使用桌面。你很少会选择在用户仅暂时断开桌面连接或因网络连接故障而被断开连接的情况下立即注销桌面。你应该至少给他们 5 到 10 分钟的时间窗口,以便他们重新连接,而不是直接注销他们。

  1. 接下来的设置是配置“允许用户重置/重启他们的机器”(21)选项。如果此选项设置为“是”,则表示用户可以有效地使用重置按钮来硬重置他们的虚拟桌面机器。这是一个有用的功能,可以让最终用户在没有 IT 帮助的情况下执行故障排除步骤。然而,当最终用户认为他们只是重置终端设备时,而实际上他们是在重置虚拟桌面机器时,这可能会引起一些混淆。如果这是一个联接克隆桌面,那么他们可能最终会得到一个全新的虚拟桌面机器,这可能导致他们丢失任何当前的工作。

  2. 本节的最后一个设置是“注销后刷新操作系统磁盘”(22)。由于此池将使用联接克隆镜像创建,因此此选项定义了当用户注销时,联接克隆的操作系统磁盘行为。

  3. 要配置此选项,请点击下拉菜单查看以下可用选项:

    • 永不:操作系统磁盘永远不会自动刷新;这将导致联接克隆随着时间的推移不断增长,特别是如果在本向导的后期阶段没有配置持久磁盘和/或一次性磁盘的话。通过刷新操作系统磁盘,磁盘会刷新到创建桌面时拍摄的快照。如果没有持久磁盘、重定向的个人资料等,所有用户设置/数据将会丢失。

    • 始终:每次用户注销时,桌面都会被刷新。

    • 每...:允许你定义在多少天后桌面将被刷新。

    • 在...:允许你设置在操作系统磁盘使用率达到多少百分比时,桌面应被刷新。

再次,与其他配置设置一样,如何配置这些设置将很大程度上取决于你的使用案例和用户的工作方式。

本配置屏幕的下一个部分是配置远程桌面协议

远程桌面协议设置

这些设置定义了虚拟桌面机器的交付协议的行为及任何用户可配置的选项。设置选项如下图所示:

接下来,您可以配置远程显示协议的以下选项:

  1. 远程显示协议部分的第一个选项是选择默认显示协议。从下拉菜单中(23),您有 Microsoft RDP、PCoIP 或 VMware Blast 的选项。请注意,某些基于显示的功能取决于您选择的协议。例如,会议协作仅在使用 Blast 协议时可用。

  2. 接下来,您有权限允许用户选择协议(24)。如果将此设置为“是”,则最终用户可以选择协议。通常,您会将 PCoIP 或 VMware Blast 作为默认协议,并且不允许最终用户更改,除非有特定的使用案例决定需要使用其他协议。例如,如果需要超过四个屏幕,则使用 RDP 协议,因为这是支持此功能的协议,或者最终用户可能处于一个非常严格的出站防火墙后面,阻止了 PCoIP 端口4172,因此无法查看其虚拟桌面机器。在这些使用场景中,允许最终用户更改默认协议意味着他们可以继续工作。

  3. 然后,您可以选择桌面池希望使用的 3D 渲染器模型(25)。点击下拉箭头选择所需的 3D 渲染器。您有以下选项:

    • 使用 vSphere Client 进行管理:当您选择此设置时,配置 3D 客户机的 VRAM最大显示器数量单个显示器的最大分辨率配置设置在 Horizon 管理员中不可用。这些设置会通过 vSphere Web Client 进行管理。

    • 自动:启用 3D 渲染并由主机服务器管理,主机服务器会自动选择最佳模型进行使用。例如,主机服务器会在虚拟桌面机器启动时优先预留 GPU 资源。如果在虚拟桌面机器启动时没有可用的 GPU 资源,主机服务器将回退到使用基于软件的渲染。在灾难恢复(DR)场景中,此设置非常有用,因为灾难恢复站点的主机服务器未配置任何硬件 GPU 资源。这允许用户回退到软件渲染,从而继续工作。

    • 软件:主机服务器将始终使用软件 3D 图形渲染。

    • 硬件:主机服务器将根据先到先得的原则,在虚拟桌面机开启时保留 GPU 硬件资源。如果主机服务器有可用的硬件资源,则虚拟桌面机将无法启动。

    • NVIDIA GRID VGPU:主机服务器将根据先到先得的原则,在虚拟桌面机开启时保留 GPU 硬件资源。如果用户登录并连接到一台虚拟桌面机,而 GPU 硬件资源已经分配给同一主机服务器上的另一台虚拟桌面机,则连接服务器会尝试将虚拟桌面机迁移到同一集群中的另一台主机服务器,并在获得资源后启动该虚拟桌面机。选择NVIDIA GRID VGPU选项后,你将无法使用“配置VRAM 供 3D 客户机使用”、“最大显示器数量”和“任意一台显示器的最大分辨率”设置。你还需要确保配置父虚拟桌面机或虚拟桌面机模板,以保留所有内存。

    • 禁用:关闭 3D 渲染。

  4. 当选择一个有效的 3D 渲染器选项时(不适用于NVIDIA GRID VGPU使用 vSphere 客户端管理),你会发现选择的模型旁边的“配置...”按钮已被激活。点击此按钮后,你将看到“配置 VRAM 供 3D 客户机使用”框,可以指定一个视频内存量,最大为 512 MB如下面的截图所示:

  1. 下一个选项是选择最大显示器数量。如果点击下拉箭头,你可以选择 1、2 或 4 个显示器。请注意,此设置仅适用于 PCoIP 和 Blast 协议。当 3D 被禁用时,最大显示器数量和任意一台显示器的最大分辨率设置将决定分配给桌面池中虚拟桌面机的 VRAM 数量。值越大,关联的 ESXi 主机服务器将消耗的内存越多。

如果 3D 被禁用,在 Windows 7 客户操作系统上支持最多三个显示器,分辨率为 3,840 x 2,160,且 Aero 效果已禁用。对于其他操作系统或启用了 Aero 效果的 Windows 7,仅支持一个显示器在该分辨率下工作。当 3D 启用时,支持一个显示器,分辨率为 3,840 x 2,160。多个显示器最好在较低分辨率下使用。

  1. 下一个选项是设置任意一台显示器的最大分辨率(26)。点击下拉箭头选择所需的分辨率,注意参考第 3 点中的讨论。

  2. 接下来,你可以选择启用 HTML 访问(27)。要启用 HTML,勾选该框。请注意,连接服务器需要安装 HTML 访问才能正常工作。

  3. 最后,你可以选择允许会话协作(28)。要启用此功能,请勾选复选框。会话协作允许此桌面池的用户邀请其他用户加入他们的会话。请注意,此功能仅适用于 VMware Blast 协议。

此配置屏幕的下一个部分是配置会话的 Adobe Flash 设置。

Adobe Flash 设置

这些设置定义了 Adobe Flash 在虚拟桌面机器会话中的行为。设置选项如下图所示:

Adobe Flash 设置(会话)的配置选项详细描述如下:

  1. 在 Adobe Flash 质量选项中,点击下拉菜单(29)选择可用选项:

    • 不控制:这允许网页决定最佳设置

    • 低(默认):低质量意味着较少的带宽消耗

    • :中等质量意味着适中的带宽消耗

    • :高质量意味着更多的带宽消耗

  2. 另一个可配置的设置是 Adobe Flash 的限速。Adobe Flash 默认通过计时器服务更新屏幕,以确定更新间隔。通过更改该时间间隔设置,可以控制屏幕更新的帧率,从而减少带宽需求。点击下拉菜单(30)选择可用选项:

    • 禁用:关闭限制

    • 保守:更新间隔设置为 100 毫秒

    • 适中:更新间隔设置为 500 毫秒

    • 激进:更新间隔设置为 2,500 毫秒

此配置屏幕的最后部分是配置 Mirage 设置。这些设置定义了 VMware Mirage 如何与虚拟桌面机器映像交互。设置选项如下图所示:

Mirage 设置在此处描述:

  1. 这里唯一的选项是覆盖全局 Mirage 设置(31)。要启用覆盖功能,请勾选复选框。

  2. 然后,在 Mirage 服务器配置框(32)中,输入你想使用的 Mirage 服务器的地址。想了解更多关于 VMware Mirage 的解决方案,可以阅读 Packt 出版的《Learning VMware Mirage》一书。

此设置仅适用于当前部署 Mirage 的用户,因为 Mirage 现已停止维护。

完成此屏幕上的配置设置后,点击下一步 > 按钮继续到下一个配置屏幕。下一个屏幕是配置Provisioning Settings(预配设置),如下图所示:

如之前所做,我们将把此屏幕分解为不同的配置部分,从基本部分开始,如下图所示:

Provisioning Settings(预配设置)在此处描述:

  1. 基本部分的第一个设置是启用配置。选中启用配置框(33)基本上就是开启配置。此设置意味着虚拟桌面机器可以根据配置设置进行配置。

  2. 下一个设置是错误时停止配置(34)。选中此框表示如果在配置过程中出现错误,配置将停止。这非常重要,因为与其继续配置已经出错的数百台虚拟桌面机器,您可能更希望停止配置,先解决问题后再继续。

下一个配置部分是虚拟机命名,如下图所示:

在此部分中,有两个选项用于配置新建虚拟桌面机器的命名方式,手动或自动。我们这里提到的名称是机器名称,稍后也会作为计算机账户出现在活动目录中。考虑到这一点,选择合适的命名规范是值得的。

在第一个示例中,我们将先查看手动选项,然后再配置命名模式方法,因为除非有特殊原因需要为虚拟桌面机器指定唯一的非连续名称,否则该方法是命名虚拟桌面机器的推荐方式。要做到这一点,请执行以下步骤:

  1. 点击“手动指定名称”单选按钮(35)。

  2. 现在您将看到“输入机器名称”框。在空白框中(36)输入第一个虚拟桌面机器的名称。在这个例子中,我们将该机器命名为Windows-7-001。如果该机器将用于专用分配,您还可以为其添加用户名。因此,在这个实验室例子中,我们可以将该机器名称输入为Windows-7-001,pvolab.com\peter

  3. 根据需要继续输入机器名称,然后点击“下一步 >”(37),当您输入完所有想要添加的机器名称后。

  4. 现在您将看到已输入的名称列表(38)。您可以选择返回继续输入更多名称,或者如果已完成输入名称,点击“完成”按钮(39)。

  5. 最后,您将返回到虚拟机命名屏幕,在那里您将看到现在显示已输入 1 个名称(40),以显示手动输入了多少台机器名称。

  6. 在手动部分下,您还可以进行其他几个配置选项。您可以启用“以维护模式启动机器”,这允许在用户登录之前手动自定义虚拟桌面机器。此模式必须手动退出。您还可以选择配置“未分配的机器保持开启”。这允许您保持虚拟桌面机器的开机状态,即使它们尚未分配给最终用户。此选项可以让您快速分配已经构建和定制好的机器,从而加快过程。

现在我们已经了解了如何手动输入机器名称,接下来我们将看看使用命名模式的选项,如下图所示:

使用以下设置配置虚拟机命名:

  1. 单击“使用命名模式”(41)的单选按钮。

  2. 在命名模式框(42)中,输入虚拟桌面机器的名称。在本示例实验室中,对于这个池,我们将输入 Win7-VM-{n}。这样,虚拟桌面机器将命名为 Win7-VM-1Win7-VM-2 等,直到你指定的要构建的机器数量为止。通过在机器名称中使用 {n},Horizon View 将在所需位置为名称添加一个数字。如果添加 {n:fixed=2},则允许使用两位数字,{n:fixed=3} 用于三位数字,以此类推。这将确保桌面按数字顺序排列。

接下来的部分是桌面池大小部分。

桌面池大小

在本节中,你可以指定已创建和配置的虚拟桌面机器数量,如下图所示:

使用以下设置配置桌面池大小:

  1. 在最大机器数量框(43)中,输入该桌面池中可以配置的最大机器数量。这将设置此桌面池中虚拟桌面机器的数量限制。

  2. 接下来是备用(开机)机器数量的设置。在框中(44),输入应保持开机状态并等待用户连接的机器数量。

  3. 最后,在本节中是“视图编排器维护操作期间的最小准备(已配置)机器数量”选项。你可以在此输入希望在维护操作期间仍然可用的虚拟桌面机器数量(45)。例如,如果你启动了重新编排操作,Horizon View 可以确保仍有最少数量的虚拟桌面机器供最终用户登录。

配置这些选项的方式对你在视图解决方案中的池成功至关重要。你需要确保有足够的虚拟桌面机器可供用户在需要时使用。这也意味着,即使在维护操作期间,你也能确保满足用户需求。

最后需要配置的部分是“配置时间”。你可以选择按需配置机器,即用户登录并请求时配置机器,或者提前预配置机器,如下图所示:

让我们从配置开始:

  1. 要按需配置,请点击“按需配置所有机器”的单选按钮(46)。这意味着虚拟桌面机器将在预先准备好并能够让用户连接和登录的状态下创建和配置。你可以在“最小机器数量”框中选择需要的机器数量(47)。如果选择按需配置,那么你需要确保已经预先配置了足够的桌面,以满足用户需求而不造成长时间延迟。这就是确保预先配置的桌面数量与剩余的备用桌面数量之间的平衡。

  2. 在示例实验室中,我们将预先配置,所以点击“预先配置所有机器”的单选按钮(48)。如果你打算预先配置所有虚拟桌面机器,你需要确保在增加虚拟桌面机器数量导致性能提升的同时,不会对终端用户产生影响。

完成此屏幕上的配置设置后,点击“下一步 >”按钮继续到下一个配置屏幕。由于这个桌面池将使用从链接克隆创建的虚拟桌面机器,因此下一个配置屏幕是 View Composer 磁盘配置屏幕,如下图所示:

在这个配置界面中,有两个选项。一个是操作系统用于配置持久磁盘,另一个是可丢弃文件重定向。你需要仔细考虑是否在桌面池架构中需要使用这些设置,并且还要根据是否计划使用额外的 VMware 或第三方解决方案来提供相同功能。

第一个要配置的部分是持久磁盘(),如下面的截图所示:

使用持久磁盘时,Windows 配置文件将被重定向到一个专用磁盘,即使操作系统磁盘在 View Composer 操作中被刷新,该磁盘仍会保留。这是保护用户配置的一个很好的方式。然而,你也可能希望调查其他解决方案,如 VMware View Persona Management、VMware UEM 或 Liquidware ProfileUnity,它们能够提供类似的功能,甚至更强大:

  1. 要配置此设置,请点击“将 Windows 配置文件重定向到持久磁盘”的单选按钮(49)。

  2. 在“磁盘大小”框中(50),输入持久磁盘的大小。

  3. 最后,在驱动器字母下拉框中(51),你可以为这个持久磁盘选择一个驱动器字母。

  4. 要禁用配置文件重定向,或者如果你正在使用其他配置文件管理工具,请点击“不要重定向 Windows 配置文件”的单选按钮(52)。

下一个要配置的部分是一次性文件重定向。一次性磁盘包含所有页面和临时文件,并在每次桌面重启后刷新。这是减少桌面刷新之间链接克隆大小的好方法。一旦配置好一次性文件重定向,相关设置将显示在以下截图中:

要配置一次性文件重定向设置,请执行以下步骤:

  1. 点击单选按钮,将 Windows 配置文件重定向到持久磁盘(53)。

  2. 在磁盘大小框(54)中,输入持久磁盘的大小。

  3. 最后,在驱动器字母下拉框中,您可以为该持久磁盘选择一个驱动器字母。如果您点击箭头(55),您将看到驱动器字母选项(56)。分配给一次性磁盘驱动器的字母不一定会显示给最终用户。

  4. 要禁用一次性文件重定向功能,请点击不重定向一次性文件(57)的单选按钮。

在配置这些时,确保根据您的使用场景设置适当的大小。这里的 POC 或桌面评估将帮助您了解这些磁盘的大小需求。诸如是否使用 Outlook 本地缓存等因素,可能会大幅影响持久磁盘的大小。

  1. 完成此屏幕上的配置设置后,点击“下一步 >”按钮,继续到下一个配置屏幕。

下一个配置屏幕是存储优化。在此屏幕上,您可以配置有关存储管理和操作系统、持久磁盘及副本磁盘放置的高级选项。您可以选择为此桌面池中虚拟桌面创建的各种磁盘的位置。Horizon View 有效地允许您分层存储,因此,根据您的存储设计,您可能希望将副本映像放置在更快的本地 SSD 存储上,将操作系统磁盘放置在另一层存储上,如机械硬盘。

这些配置选项显示在以下截图中:

要配置存储策略管理设置,请执行以下步骤:

  1. 此屏幕上的唯一选项是配置存储策略管理,从 VMware Virtual SAN 开始。要启用 VSAN,点击使用 VMware Virtual SAN(58)的单选按钮。由于我们在示例实验室中未配置该项,因此我们将点击不使用 VMware Virtual SAN(59)的单选按钮。

  2. 接下来,您可以配置不同类型磁盘的存储位置。这里有两个选项。第一个是为持久磁盘和操作系统磁盘选择不同的数据存储(60)。这允许持久磁盘和操作系统磁盘存储在不同的数据存储中。第二个选项是为副本磁盘和操作系统磁盘选择不同的数据存储(61)。建议为这些镜像选择高性能的数据存储,如基于闪存的阵列。根据您的硬件配置,将副本磁盘存储在单独的数据存储上可能会创建单点故障。

  3. 勾选相关框以配置要存储不同磁盘的位置,或者保持框未选中以使用单一数据存储来存储所有磁盘。由于示例实验室只有一个数据存储,我们将保持未选中状态。

下一个配置屏幕是vCenter 设置配置屏幕。

vCenter 设置

vCenter 设置屏幕上,我们将选择用于构建虚拟桌面机器的父虚拟机,然后选择将要运行它们的位置和资源。因此,配置选项分为三类。默认镜像、虚拟机位置和资源设置如下图所示:

首先要配置的是将作为父镜像创建虚拟桌面机器的默认镜像的详细信息,用于该桌面池。此部分如下图所示:

那么,我们从配置开始:

  1. 在第一个框,父虚拟机上,点击浏览...按钮(62)。现在您将看到选择父虚拟机框,如下图所示:

  1. 现在,您将看到一个有效的父虚拟机列表。有效的意思是这些将是包含快照并已安装 Horizon View Agent 的虚拟机。默认过滤掉的虚拟机包括运行在 ESX/ESXi 主机上的版本低于 4.0 的虚拟机、没有快照的虚拟机、不支持的客户操作系统的虚拟机、已经被其他桌面池使用的虚拟机以及 View Composer 副本。您可以通过点击显示所有父虚拟机按钮将这些虚拟机添加到配置中。但是,如果它们不兼容,您将无法选择它们。

  2. 使用示例实验室显示的镜像是我们之前创建的黄金镜像。由于我们正在构建 Windows 7 桌面池,因此我们将使用 Windows 7 父机器,所以选择 Windows 7 黄金镜像(63)条目。

  3. 一旦选择了要使用的父虚拟机,请点击确定以继续。

  4. 您现在将返回到 vCenter 设置屏幕,在那里我们可以配置“默认映像”部分的第二个选项。您还将看到“父虚拟机”框(64)现在已填入 Windows 7 金像版详细信息,如下图所示:

  1. 由于这是一个链接克隆虚拟桌面机器,下一个配置任务是配置从父映像创建的快照的详细信息。

  2. 在快照框上,单击“浏览...”按钮(65)。现在您将看到“选择默认映像”框,如下图所示:

  1. 您首先可以看到父映像的详细信息(66)。

  2. 下面,您将看到从此父虚拟机创建的快照列表。在这种情况下,我们只有一个快照,即 Windows 7 金像版的快照,我们将点击选择(67)。如果您有多个此映像的快照,则所有这些快照都将列出,以便您选择正确的一个。

  3. 当您单击快照时,您将看到“快照详细信息”按钮(68)现在可供单击。如果您单击此按钮,则将显示快照的完整详细信息,如所示。单击“确定”关闭“快照详细信息”框。

  4. 单击“选择默认映像”框上的“确定”以完成配置。

  5. 您现在将看到快照已添加,如下图所示:

vCenter 设置的下一部分是虚拟机位置设置,如下面的屏幕截图所示:

要继续,请执行以下步骤:

  1. 在 VM 文件夹位置框中,单击“浏览...”按钮(69)。

  2. 您现在将看到“选择存储 VM 的文件夹”框,如下图所示:

  1. 单击箭头(70)扩展 PVO 的数据中心,然后选择要创建虚拟桌面机器的文件夹。在示例实验中,此文件夹已命名为 Horizon Desktops(71)。

您可能希望考虑为虚拟机创建文件夹结构,以帮助管理;否则,您可能会创建成百上千个不同的虚拟桌面机器,这些机器位于不同的池中,但都在同一个文件夹中。

  1. 单击“确定”继续。

  2. 您将返回到 vCenter 设置屏幕,现在可以看到已添加 VM 文件夹位置,如下图所示:

下一个配置部分是用于托管和运行池中虚拟桌面机器的资源:

显示的选项如下:

  1. 首先,在“主机或集群”框中,单击“浏览...”按钮(72)。

  2. 然后,您将看到 Host 或 Cluster 框出现,列出了可用的主机资源。主机资源就是可用的 ESXi 服务器。在此示例中,我们可以看到示例实验室 ESXi 服务器的 IP 地址。

在生产环境中,本部分配置所使用的托管基础设施将是桌面块托管基础设施的一部分。

  1. 点击 IP 地址 192.168.1.131 (73)。

  2. 点击 OK 继续。

  3. 您现在将返回到 vCenter 设置界面,在那里您会看到 Host 或 Cluster 已被添加,如下图所示:

  1. 接下来,我们将配置此桌面池的资源池以供使用。

  2. 在 Resource pool 框中,点击 Browse... 按钮 (74)。您现在将看到选择一个资源池以供此桌面池使用的框,您可以从中选择资源池,如下图所示:

  1. 示例实验室的资源池再次是 ESXi 主机服务器,因此点击 IP 地址 192.168.1.131 从列表中选择此项 (75)。

  2. 点击 OK 继续。

  3. 您现在将返回到 vCenter 设置界面,在那里您会看到资源池已被添加,如下图所示:

本节中的最终配置选项是 Datastores。在示例实验室中,我们使用的是单一数据存储,它是在 Storage Optimization 设置界面中选择的。如果您选择将不同的磁盘放置在不同的数据存储上,那么现在您将看到配置操作系统磁盘数据存储、持久磁盘数据存储和副本磁盘数据存储的位置选项:

  1. 在 Datastores 框中,点击 Browse... 按钮 (76)。

  2. 您现在将看到 选择链接克隆数据存储 配置界面,显示所有可用的数据存储,如下图所示:

  1. 勾选 VM Datastore 框 (77)。然后,您可以选择配置存储超分配。超分配级别表示乘以完整桌面容量的乘数,从而确定要在数据存储中允许的数量。

  2. 要配置超分配,点击下拉菜单 (78),然后您可以从以下选项中选择:

    • None: 不允许超分配

    • Conservative: 允许四倍超分配

    • Moderate: 允许七倍超分配

    • Aggressive: 允许 14 倍超分配

    • Unbounded: 没有任何限制

  3. 例如,如果您的完整桌面大小为 10 GB,且您有 100 GB 的数据存储,那么选择 None 将允许您配置 10 个桌面,Conservative 将允许您配置 40 个桌面,Moderate 将允许您配置 70 个桌面,Aggressive 将允许您配置 150 个桌面,而 Unbounded 则没有任何限制。

在选择如何配置过度提交设置时需要小心,唯一真正判断的方法是通过在 POC 期间监控链接克隆的增长情况。

  1. 配置完成后,点击 OK 按钮。您将返回到 vCenter 设置 配置屏幕,在该屏幕上,您将看到已输入的链接克隆数据存储详细信息,显示文本 1 selected (79)如以下截图所示:

  1. vCenter 设置配置完成后,点击 Next > 按钮继续进入下一个配置屏幕。

下一个配置屏幕是 高级存储选项

高级存储选项

在下一个屏幕中,我们将配置 高级存储选项,如以下截图所示:

在此配置屏幕的第一部分,您可以配置视图存储加速器以及如何管理磁盘空间。视图存储加速器允许您配置桌面池,以使 ESXi 主机(vSphere 5.x 或更高版本)缓存虚拟机磁盘数据。此功能使用 ESXi 主机服务器的 基于内容的读取缓存 (CBRC) 功能。视图存储加速器(或 VSA)减少了磁盘 IOPS,从而提高了启动风暴期间的性能。

启动风暴发生在大量虚拟桌面机同时启动并启动时,它们会同时进行病毒扫描。当管理员或用户频繁加载应用程序或数据时,此功能也非常有益:

  1. 要启用视图存储加速器,请选中“使用视图存储加速器”框 (80),如以下截图所示:

  1. 在磁盘类型部分,您可以选择希望视图存储加速器应用于哪些特定磁盘。在下拉菜单中 (81),您可以选择操作系统磁盘或操作系统和持久磁盘。在示例实验室中,我们将选择操作系统磁盘选项。

  2. 在启用再生存储加速器后,您可以指定何时重新生成已缓存的数据的时间限制。这基本上是清除缓存并重新构建它。默认情况下,这个时间设置为7天。

  3. 如果您选中其他选项框 (82),这里有两个选项。第一个,在示例实验室中为灰色显示,是用于 使用本地 NFS 快照 (VAAI)。VAAI 或 vStorage API for Array Integration 是集成到特定硬件阵列中的硬件功能。它使用本地快照技术提供链接克隆功能。只有在您有支持 VAAI 的硬件设备时,才会选择此选项。在示例实验室中它是灰色显示的,因为我们没有支持的设备。

  4. 本节中的下一个选项是回收虚拟机磁盘空间。托管在 vSphere 5.x 及更高版本上的虚拟桌面机器可以配置为使用一种节省空间的磁盘格式,该格式支持回收未使用的磁盘空间(例如删除的文件)。启用此选项(通过点击单选按钮)会回收每台虚拟机上未使用的磁盘空间,并且当估算的已用磁盘空间超过此设置中指定的磁盘大小时,回收操作会被触发。默认情况下,此阈值设置为1 GB。

  5. 高级存储选项下的下一个设置是配置缓存重建和空间回收的停机时间。此设置应确保这些操作不会安排在工作时间进行,避免影响用户。停机时间配置框如下图所示:

  1. 点击“添加...”按钮(83)以添加停机时间。

  2. 接下来,你将看到“设置停机日期”配置框。在这里,你可以通过勾选框来选择你不希望运行重建或空间回收任务的日期。你还可以选择特定的时间段不运行这些任务。

  3. 配置好停机日期和时间后,点击“确定”。你将返回到停机时间配置框,在此框中会显示你配置的时间,如下图所示:

  1. 在这个例子中,我们已配置了工作日的停机时间,时间为08:0019:00。你还可以添加额外的停机时间,或删除和编辑现有的配置。

高级存储选项下的最后一个设置是配置透明页共享范围(Transparent Page Sharing Scope),如下图所示:

什么是透明页共享(TPS)?TPS 是一种用于虚拟化解决方案的内存管理技术。在桌面虚拟化中,你可能在运行成千上万的相同操作系统副本,它们都消耗内存并使用完全相同的内存页面。TPS 会将主机服务器上冗余的内存页面减少到单一页面。ESXi 虚拟化程序会查找这些重复的页面,如果它在同一主机服务器上的多个虚拟机(VM)中发现相同的内存页面,它会共享这单一页面给虚拟桌面机器,并设置内存指针来回指向该页面。这是更加高效的内存使用方式,并释放空间以允许更多的虚拟桌面运行。

  1. 从下拉菜单中(84),选择 TPS 的作用范围。你可以选择在虚拟机之间、桌面池中的虚拟桌面机器、一个 Pod 中的虚拟桌面机器,或全局范围内共享内存。

  2. 配置完高级存储选项后,点击“下一步”按钮。

下一个配置屏幕是访客自定义如下图所示:

在此配置屏幕上,您可以配置虚拟桌面机器在 Active Directory 中的位置,并定制访客操作系统:

  1. 在域部分,在下拉菜单中 (85),选择您希望机器帐户所在的域。在示例实验室中,这是我们的pvolab.com域。

  2. 接下来,您可以选择您希望机器帐户所在的 AD 容器。默认设置为计算机容器,因此您会看到CN=Computers。要更改此设置,请点击浏览...按钮 (86)。

  3. 您现在将看到 AD 容器框。如果您展开域,您将看到所有容器,因此请选择您希望存储通过此桌面池创建的虚拟桌面的适当容器。例如,这个桌面池可能用于技术部门,因此您可能在 AD 中有一个反映这一点的容器。值得创建一个反映您组织结构的文件夹/容器结构,使得管理虚拟桌面机器更容易,而不是将它们全部放在标准计算机容器中。

  4. 点击以突出显示您想要使用的容器,然后点击确定。

  5. 您现在将返回到访客自定义屏幕。

  6. 勾选允许重用现有计算机帐户的复选框。这允许您重用现有的 AD 计算机帐户,如果新创建的链接克隆的虚拟桌面机器名称与现有计算机帐户名称匹配。这在创建非持久桌面时特别有用。

  7. 接下来,点击使用 QuickPrep 的单选按钮 (87)。QuickPrep 将允许您比 Sysprep 更快速地准备桌面。然而,它不会创建唯一的 SID。Sysprep 会创建一个新的 SID,但每个桌面的准备时间会更长。您选择使用哪个将取决于您的使用场景。建议您在 POC 期间测试配置。作为 QuickPrep 的一部分,您还可以指定附加脚本以及您希望用于这些脚本的任何参数。

  8. 最终选项是使用 SysPrep 而不是 QuickPrep。要使用此功能,请点击使用自定义规范(SysPrep)的单选按钮。这将利用来自 vCenter 服务器的现有脚本。在以下示例中,我们使用了一个名为虚拟桌面自定义的预构建脚本:

  1. 要使用此脚本,请点击以高亮显示它。在示例实验室中,我们将使用 QuickPrep,因此请确保选择此选项。

  2. 配置完成后,点击下一步按钮。

  3. 您现在将看到最后一个屏幕,即“准备完成”屏幕,如下图所示:

审查您的配置设置,然后点击完成按钮以创建桌面池。

你还可以选择勾选“向用户授权此向导完成后”框(88),这样会自动启动授权配置屏幕,方便你将虚拟桌面机器的访问权限分配给终端用户。不过,在示例实验室中,我们将在稍后,创建一些额外的桌面池后再进行此操作。

现在你会看到桌面池已经创建,如下图所示:

你还将在 vCenter Server 上看到,链接克隆的文件夹结构已经设置完毕。你会看到在 Horizon Desktops 文件夹下,出现了一个名为 Win7-dedicated-lc 的新文件夹,其名称反映了你为池输入的 ID。将要构建的虚拟桌面机器将存放在这个文件夹中。如图所示:

在下一部分,我们将向你展示如何创建另一个桌面池,但这次我们将使用 Horizon 控制台,而不是 View 管理员。

Horizon 控制台方法

除了当前的 Horizon View 管理员管理控制台外,还有一个新的基于 Web 的控制台。这个控制台叫做 Horizon 控制台。然而,在撰写本书时,Horizon 控制台还不支持一些功能,包括以下内容:

  • 自动化、浮动分配的完整虚拟机池

  • 自动化链接克隆桌面池

  • 自动化链接克隆池

  • 克隆自动化桌面池

  • 云端集群架构配置

  • 手动桌面池

  • ThinApp 应用程序

在这一部分,我们将创建与之前相同的桌面池,但这次使用 Horizon 控制台。我们将通过截图和配置选项进行讲解,但有关每个配置选项的更多详细信息,请参阅前一部分。

第一步是启动 Horizon 控制台。可以通过两种方式来完成。第一种方式是登录到经典的 View 管理员,并点击 Horizon 控制台的链接(1),如下图所示:

另一种方式是通过浏览器直接访问连接服务器的 URL,但这次需要在 URL 后添加 /newadmin。例如,在实验室中,你可以输入 https://hzn7-cs1/newadmin。然后你将看到登录界面,如下图所示:

输入用户名和密码,确保从下拉菜单中选择正确的域,然后点击绿色的登录按钮。现在你已经登录,接下来将看到 Horizon 控制台 主屏幕,如下图所示:

我们现在将通过以下步骤配置桌面池:

  1. 与经典的 View Administrator 控制台不同,在 Horizon Console 中,桌面池属于桌面类别,因此,在左侧菜单选项中,展开“库存”,然后点击“桌面”(2)。您现在将看到桌面池配置屏幕,如下图所示:

  1. 点击添加按钮(3)。您现在将看到“添加池”屏幕,第一部分会被高亮显示为类型如下图所示:

  1. 点击“自动化桌面池”(4)。请记住,目前没有配置手动桌面池的选项。

  2. 点击“下一步”以继续。

  3. 现在,您将进入列表中的下一个项目:vCenter 服务器 如下图所示:

  1. 点击即时克隆单选按钮(5)。请记住,本示例实验室中使用的 Horizon Console 版本当前不支持链接克隆配置。

  2. 接下来,从列表中选择您希望用于创建即时克隆的 vCenter 服务器。在示例实验室中,vCenter 服务器是通过其 IP 地址列出的,因此点击192.168.1.178(6),然后点击“下一步”以继续。您现在将看到用户分配配置,如下图所示:

  1. 点击专用单选按钮(7),并确保勾选启用自动分配框。

  2. 点击“下一步”以继续。接下来,您将看到存储优化选项,如下图所示:

  1. 点击单选按钮选择是否使用 VMware 虚拟 SAN。在示例实验室中,此选项未被配置。在此配置屏幕上,您还可以选择是否使用单独的数据存储来存放副本和操作系统磁盘。

  2. 点击“下一步”以继续。

  3. 您现在将看到桌面池标识屏幕,如下图所示:

  1. 在 ID 框(8)中,输入一个名称用于标识此桌面池。在本示例中,我们将其命名为Win-7-Desktop-IC

  2. 接下来,在显示名称框(9)中,输入最终用户将看到的名称,用于标识此桌面池。在本示例中,我们将其命名为Windows 7 Desktop

  3. 如果您已经配置了访问组 则可以通过点击下拉菜单从中选择。

  4. 最后,在描述框(10)中,输入一个描述,用于说明此桌面池的功能。

  5. 点击“下一步”以继续。

  6. 您现在将看到配置设置屏幕,如下图所示:

  1. 在“基本”部分,选中启用配置框(11)和出错时停止配置框(12)。

  2. 然后,在虚拟机命名框(13)中,输入你希望为构建的虚拟桌面机器命名的名称。在示例实验室中,我们输入的名称是Win7-IC

  3. 在预配时机部分,点击“预配所有机器”(14)单选按钮。

  4. 最后,在桌面池大小部分,在最大机器数框(15)中,输入你希望在该桌面池中的最大机器数量,然后在备用虚拟桌面机器数量框(16)中输入你希望有多少备用(开机)虚拟桌面机器。

  5. 点击下一步以继续。

  6. 你现在将看到 vCenter 设置界面,如下图所示:

  1. 第一个任务是从我们已经创建的金牌镜像中选择默认镜像。为此,点击父虚拟机框旁边的浏览按钮(17)。你将看到选择父虚拟机的界面,如下所示的截图:

  1. 在本示例中,我们将使用 Windows 7 操作系统创建一个桌面池,因此从可用镜像列表中选择 Windows 7 Gold Image 选项,然后点击提交按钮。

  2. 现在你将返回到 vCenter 设置界面,在这里我们可以配置快照的下一个选项。你还会看到父虚拟机框(19)已被填充,如下图所示:

  1. 下一个默认镜像设置是配置使用哪个快照。点击快照框旁边的浏览按钮(20)。你将看到 vCenter 中的父虚拟机界面,如下所示的截图:

  1. 在此镜像的快照列表中,选择你想要使用的快照。在示例实验室中,我们只有一个已创建的快照,所以从列表中点击 Windows 7 Gold Image 选项(21)。

  2. 点击提交按钮以继续。你将返回到 vCenter 设置界面,此时你会看到快照已添加到配置中(22),如下图所示:

  1. 接下来,我们将配置虚拟机位置的下一个选项。点击虚拟机文件夹位置框旁边的浏览按钮(23)。你将看到选择存储虚拟机的文件夹界面,如下图所示:

  1. 选择你希望存储将要创建的虚拟桌面机器的文件夹。在示例实验室中,展开 PVO 数据中心的条目,然后点击 Horizon Desktops 文件夹(24)。

  2. 点击提交按钮继续。你将返回到 vCenter 设置界面,在这里你将看到虚拟机文件夹位置已被添加到配置中,如下图所示:

  1. 下一组配置选项是资源设置(Resource Settings),如下图所示:

  1. 首先,我们将配置哪个集群将托管此桌面池中的虚拟桌面机器。点击集群框旁边的浏览...按钮(25)。你现在将看到选择集群界面,如下图所示:

  1. 在示例实验室中,展开 PVO 数据中心的条目,然后点击 PVO 桌面集群选项(26)。接下来点击提交按钮。你将返回到 vCenter 设置界面,在这里你将看到集群27)的详细信息已被添加到配置中,如下图所示:

  1. 接下来,我们将选择资源池。点击资源池框旁边的浏览...按钮(28)。你现在将看到选择用于此桌面池的资源池界面,如下图所示:

  1. 从列表中点击你要使用的资源池。在示例实验室中,点击 PVO 桌面集群的条目(29)。

  2. 点击提交按钮继续。你将返回到 vCenter 设置界面,在这里你将看到资源池的详细信息已被添加到配置中(30),如下图所示:

  1. 接下来要配置的是存储虚拟桌面机器的 datastore。点击 Datastores 框旁边的浏览...按钮(31)。你现在将看到选择 Datastore 界面,如下图所示:

  1. 从列表中勾选你要使用的 datastore。在示例实验室中,这是 VM Datastore(32)。

  2. 点击提交按钮。

  3. 在示例实验室中,由于我们使用的是本地 datastore,你将看到以下警告信息:

  1. 点击确定以确认警告信息并关闭该框。

  2. 你将返回到 vCenter 设置界面,在这里你将看到 Datastore 部分现在显示已选择了一个 datastore(33),如下图所示:

  1. 最后需要配置的是网络部分,它允许你配置这个桌面池中的虚拟桌面机器将连接到哪个虚拟网络。

  2. 默认情况下,这会配置为与父虚拟机相同的虚拟网络。要更改网络配置,请点击“浏览...”按钮(34),然后选择相关网络。在示例实验中,我们将保持默认配置设置。

  3. 点击“下一步”继续到下一个配置选项。现在你将看到桌面池配置界面,如下图所示:

  1. 配置的第一步是启用桌面池,以便用户可以访问桌面池中的虚拟桌面机器。在“状态”框(35)中,从下拉菜单中确保选择了“启用”。

  2. 然后,你可以配置连接服务器限制和类别文件夹。

  3. 接下来,在“断开连接后自动注销”框(36)中,从下拉菜单中选择适当的操作。在此示例中,我们选择了“从不”,这样用户在断开与虚拟桌面机器的连接时不会自动注销。

  4. 然后,在“允许用户重启/重置机器”框(37)中,从下拉菜单中选择适当的操作。在此示例中,我们选择了“否”,因此用户不能重启或重置他们的虚拟桌面机器。

  5. 点击“下一步”继续。你现在将看到远程显示设置配置界面,如下图所示:

  1. 首先,在“默认显示协议”框(38)中,从下拉菜单中选择你希望此桌面池使用的显示协议。在示例实验中,我们选择了 PCoIP。

  2. 接下来,在“允许用户选择协议”框(39)中,从下拉菜单中选择是否允许用户更改默认协议。在示例实验中,我们选择了“是”。

  3. 在 3D 渲染器框(40)中,选择适用于此桌面池的相关 3D 渲染模型。

  4. 最后,勾选“启用”框以启用 HTML 访问(41)以及允许会话协作(42)。请注意,会话协作需要 VMware Blast 协议。

  5. 点击“下一步”继续到下一个配置选项。现在你将看到“客户机自定义”界面,如下图所示:

  1. 在此配置屏幕上,你可以选择虚拟桌面机器在 Active Directory 中的位置。在“域”框(43)中,从下拉菜单中选择它们所在的域名。在示例实验中,这个域名是pvolab.com

  2. 接下来,在“AD 容器”框中,点击“浏览...”按钮,然后选择虚拟桌面机器将要存放的相关容器。在示例实验中,这是默认设置CN=Computers

  3. 点击“下一步”继续到“准备完成”界面,如下图所示:

  1. 此界面上的唯一选项是勾选框(45),用于选择在本向导完成后是否授权用户。我们将在本章稍后部分介绍如何使用经典的 View 管理员控制台和新的 Horizon 控制台配置授权。

您现在已经成功使用 Horizon 控制台配置了一个桌面池。在下一节中,我们将创建其他桌面池,以反映不同类型的池。

创建专用的完全克隆桌面池

创建专用的完全克隆桌面池的过程与我们在上一节中配置专用链接克隆桌面池的过程几乎相同。不过,还是有一些变化,因为我们正在配置一个完全克隆虚拟机,它将使用模板来创建虚拟机,而不是使用快照。我们将在本节中详细介绍不同的配置选项,并通过截图加以说明,而对于我们之前已覆盖的任务,我们将通过文字描述。您可以参考上一节的截图。

使用 Horizon View 管理员设置桌面池,执行以下步骤:

  1. 从工作站打开浏览器,输入 View 连接服务器的地址。在示例实验室中,连接服务器的地址为 https://hzn7-cs1.pvolab.com/admin。不要忘记末尾的 /admin,否则您将进入 Horizon 客户端页面。

  2. 您现在将看到 View 管理员登录界面。使用管理员账户登录。

  3. 您现在将看到 Horizon View 管理员仪表盘界面。

  4. 从 Horizon View 管理员界面,点击展开“目录”选项,然后点击“桌面池”。接着在显示的桌面池面板中,点击“添加...”按钮。

  5. 您现在将看到“添加桌面池”界面,首先是“类型”部分,您可以在此选择要创建的桌面池类型。

  6. 点击“自动化桌面池”的单选按钮。在选择可用的桌面池类型时,右侧的描述将发生变化,提醒您各类型之间的差异。

  7. 现在点击“下一步 >”按钮继续。

  8. 您现在将看到用户分配界面。

  9. 点击“专用”单选按钮。默认情况下,启用“自动分配”选项。这意味着桌面将在用户登录时,按先到先得的方式分配。如果由于某种原因您需要确保某个用户分配到特定桌面,则需要取消选中此框,并手动为其分配虚拟桌面。

  10. 点击“下一步 >”按钮继续配置。在 vCenter 服务器界面上,您将配置如何使用与此连接服务器关联的 vCenter 服务器构建虚拟桌面,如下图所示:

在此配置屏幕上,您可以选择构建即时克隆、视图组合链接克隆虚拟桌面机器或完整克隆虚拟桌面机器。

  1. 对于这个第二个池,我们将使用完整虚拟机,因此单击“完整虚拟机”单选按钮(1)。

  2. 接下来,您需要从列表中选择相关的 vCenter 服务器。在示例实验中,显示了 vCenter 192.168.1.178,以及我们为 View 设置的 vCenter 用户帐户。点击以突出显示并选择此 vCenter 服务器(2)。

  3. 单击“下一页 >”按钮继续配置。接下来的配置屏幕是用于桌面池识别的,如下截图所示:

  1. 在 ID 框(3)中输入此桌面池的 ID。在示例实验中,我们输入了Win7-dedicated-full的 ID。

请记住,您只能在池 ID 中使用字符 a-zA-Z0-9-_

  1. 在显示名称框(4)中,输入此池的名称。请注意,显示名称是显示给最终用户的,因此请确保给出一个非技术性的名称,用户能够理解。

  2. 最后,在描述框(5)中,输入一个更详细的描述,描述这个桌面池。

  3. 单击“下一页 >”按钮继续配置。您现在将看到桌面池设置配置屏幕。

  4. 此配置页面是我们开始为最终用户定义桌面在桌面池内运行方式的设置。配置您希望应用于此池的设置,然后单击“下一页 >”按钮继续。

  5. 现在您将看到供应设置屏幕。

  6. 基本部分的第一个设置是启用供应。勾选“启用供应”框以打开供应。这意味着可以根据配置设置来提供虚拟桌面机器。

  7. 接下来的设置是停止在错误时进行供应。通过选中此框,如果在供应过程中发生错误,将停止供应。

  8. 下一部分的配置是关于虚拟机命名的,如下截图所示:

  1. 单击“使用命名模式”单选按钮,然后在命名模式框(6)中输入您想要使用的命名模式。在示例实验中,我们称其为Win7-VM-Full-{n}。这将导致虚拟桌面机器被命名为Win7-VM-Full-1Win7-VM-Full-2,依此类推,直到您指定要构建的机器数量。

  2. 接下来,在最大机器数框中,输入可以在此桌面池中进行供应的最大机器数量。这设置了此桌面池中虚拟桌面机器的数量限制。

  3. 接下来是备用(开机)机器数量的设置。在框中输入应当开机并等待用户连接的机器数量。

  4. 下一步要配置的是提供时间选项。可以选择单击“按需提供机器”单选按钮,然后输入最小机器数量,或者选择“预先提供所有机器”单选按钮。

  5. 下一项配置是虚拟设备,因为我们正在配置完整克隆的虚拟桌面机器。相关选项是为虚拟机添加受信任的平台模块 (vTPM) 设备,如下图所示:

  1. TPM(受信任的平台模块)用于保护加密处理器。它的基本设计目的是借助集成的加密密钥来保护硬件。TPM 通常以专用微控制器或微芯片的形式安装在物理机的主板上。虚拟 TPM 依赖于虚拟机管理程序(在 vCenter 6.7 版本中提供)为虚拟桌面机器提供一个隔离的执行环境,并将其隐藏在虚拟桌面机器中运行的软件之外。此功能通过保护虚拟桌面机器中的代码,为其提供了类似于固件基础 TPM 的安全级别。

  2. 点击“下一步 >”按钮以继续到下一个配置屏幕。

下一个配置屏幕是用于存储优化:

  1. 此屏幕上的唯一选项是配置存储策略管理,从 VMware 虚拟 SAN 开始。要启用 VSAN,请选择“使用 VMware 虚拟 SAN”单选按钮。由于我们在示例实验室中没有配置此项,因此我们将选择“不要使用 VMware 虚拟 SAN”单选按钮。

  2. 点击“下一步 >”按钮以继续到下一个配置屏幕。

下一个配置屏幕是 vCenter 设置配置屏幕。在这个屏幕上,我们将选择用于构建虚拟桌面机器的父虚拟机,并指定将要运行虚拟桌面机器的位置和资源。因此,配置选项分为三类:虚拟机模板、虚拟机位置和资源设置,如下图所示:

让我们看看所有的配置选项:

  1. 首先需要配置的是用于作为父镜像的虚拟机模板的详细信息,通过该模板创建虚拟桌面池中的虚拟桌面机器。此部分内容如以下截图所示:

  1. 在模板框中,点击“浏览...”按钮(7)。

  2. 现在你将看到选择模板的屏幕,如下图所示:

  1. 在此屏幕中,你将看到所有在 vCenter 中创建的模板列表。因为我们要为该池构建一个 Windows 7 虚拟桌面机,所以通过点击并高亮显示,选择 Windows 7 Gold Image Template(8)选项。

  2. 点击确定以接受并关闭选择模板屏幕。

  3. 你现在将返回 vCenter 设置屏幕,我们现在可以配置第二个选项。这是关于虚拟机位置的配置。你还会看到“模板”框(9)现在已填充 Windows 7 Gold Image Template 的详细信息,如下图所示:

  1. 在虚拟机位置部分,点击虚拟机文件夹位置框中的浏览...按钮(10)。

  2. 你现在将看到“选择存储虚拟机的文件夹”屏幕,如下图所示:

  1. 通过点击下拉箭头展开 PVO 的数据中心,然后选择你想要创建虚拟桌面机的文件夹。在示例实验室中,此文件夹被命名为Horizon Desktops11)。

别忘了为虚拟机考虑一个文件夹结构,以便于管理;否则,你可能会在不同的池中创建数百个虚拟桌面机,而它们都存储在同一个文件夹中。

  1. 点击确定以继续。

  2. 你将返回 vCenter 设置屏幕,你将看到“虚拟机文件夹位置”已被添加:

下一个配置部分是用于托管和运行池中虚拟桌面机的资源:

  1. 首先,在“主机或集群”框中,点击浏览...按钮。

  2. 接下来,你将看到“主机或集群”框出现,列出可用的主机资源。这些主机资源是可用的 ESXi 服务器。在此示例中,我们可以看到示例实验室 ESXi 服务器的 IP 地址。点击 IP 地址192.168.1.131

  3. 点击确定以继续。

  4. 你现在将返回 vCenter 设置屏幕,你将看到“主机或集群”已被添加。

  5. 接下来,我们将配置此桌面池要使用的资源池。

  6. 在资源池框中,点击浏览...按钮。你现在将看到“选择用于此桌面池的资源池”框,你可以在此框中选择资源池。示例实验室的资源池再次是 ESXi 主机服务器,因此点击 IP 地址192.168.1.131,从列表中选择它。

  7. 点击确定以继续。

  8. 你现在将返回 vCenter 设置屏幕,你将看到“资源池”已被添加。

本节的最终配置选项是数据存储区。在示例实验室中,我们使用的是单一数据存储区,它是从存储优化设置屏幕中选择的:

  1. 在数据存储区框中,点击浏览...按钮。

  2. 您现在将看到选择数据存储的配置屏幕,它显示所有可用的数据存储,如下图所示:

  1. 此配置屏幕上的第一个选项是选择数据存储类型 (12)。在这里,您可以选择个人数据存储或存储 DRS。DRS(分布式资源调度器)对存储资源进行负载均衡,并将存储工作负载迁移到其他可用数据存储,而不是使用同一个。在示例实验室中,选择个人数据存储选项。

  2. 勾选 VM 数据存储 (13),因为这是我们将用于存储此桌面池中虚拟桌面机器的数据存储。

  3. 配置完成后,点击“确定”按钮。您将返回到vCenter 设置配置屏幕,此时您将看到通过显示文本“已选择 1 个”来输入了链接克隆数据存储的详细信息。

  4. vCenter 设置配置完成后,点击下一步 >按钮继续到下一个配置屏幕。

下一个配置屏幕是高级存储选项:

  1. 要启用视图存储加速器,请勾选“使用视图存储加速器”复选框。

  2. 将“重新生成存储加速器后选项”保持为默认值 7 天。

  3. 如果您想配置停机时间,请在“停机时间”下点击“添加...”按钮。

  4. 高级存储选项中的最终设置是配置透明页面共享范围。将此选项保留为虚拟机的默认设置。

  5. 完成高级存储选项配置后,点击“下一步 >”按钮继续。

下一个配置屏幕是来宾自定义,如下图所示:

屏幕显示以下选项:

  1. 此屏幕上的第一个配置选项是“无 - 自定义将手动完成 (14)”。如果您希望手动配置每台虚拟桌面机器,请点击单选按钮选择此选项。

  2. 在前一个选项下,您可以选择“创建后不打开虚拟机”。勾选此框可防止在虚拟桌面机器创建后自动启动它们。如果您打算手动配置机器,那么选择此选项是有意义的,因为没有必要启动尚未配置的机器。

  3. 接下来,您可以选择使用此自定义规范 (15)。此选项允许您从 vCenter 选择一个预构建的 SysPrep 脚本。在示例实验室中,我们创建了一个名为虚拟桌面自定义 (16) 的脚本。点击此选项以高亮并选择它。在此选项下,您还可以配置使用现有计算机帐户的功能。要启用此选项,只需勾选允许重用现有计算机帐户的复选框。

  4. 完成来宾自定义配置后,点击“下一步 >”按钮。

  5. 你现在将看到最终的屏幕,即准备完成屏幕,如下图所示:

审核你的配置设置,然后点击“完成”按钮以创建桌面池。

你还可以选择勾选屏幕顶部的“在向导完成后授权用户”框,这样会自动启动授权配置屏幕,让你可以为最终用户提供访问该桌面池中虚拟桌面机器的权限。然而,在这个示例实验中,我们将在稍后进行此操作,等我们创建一些额外的桌面池后再处理。

你现在将看到桌面池已经创建,如下图所示:

你还将在 vCenter Server 上看到桌面池的各种文件夹结构已设置完毕,第一台虚拟桌面机器 Win7-VM-Full-1 已创建并已启动,准备供最终用户登录,如下图所示:

你现在已经成功创建了一个专用的完整克隆桌面池。

总结

在本章中,我们已配置 Horizon View 管理员通过创建桌面池来交付虚拟桌面机器。我们已经构建并配置了一个专用的完整克隆桌面池和一个专用的链接克隆桌面池。在桌面池配置过程中,我们学习了如何使用经典的 Horizon View 管理员控制台以及新的网页客户端风格的 Horizon 控制台来创建这些桌面池。

在下一章中,我们将学习如何使用链接克隆和即时克隆来构建多个浮动桌面池。我们还将配置一个手动桌面池,然后继续查看使用链接克隆桌面池时需要执行的一些关键管理任务,最后为最终用户分配访问权限到新创建的桌面池。

第九章:配置和管理桌面池 - 第二部分

接着 第八章,《配置和管理桌面池 - 第一部分》,在该部分中我们配置了专用桌面池,本章中,我们将创建多个浮动桌面池,使用链接克隆、即时克隆以及手动桌面池。然后,我们将为最终用户授予这些桌面池的使用权限,从而允许他们连接到虚拟桌面。

我们还将了解在部署链接克隆桌面池时需要执行的一些管理任务,最后看看如何审查部署。

本章将涉及以下主题:

  • 创建浮动的链接克隆桌面池

  • 创建浮动的完全克隆桌面池

  • 创建浮动的即时克隆桌面池

  • 创建手动桌面池

  • 添加最终用户权限

  • 管理链接克隆桌面池

  • 部署后审查基础架构

创建浮动的、链接克隆桌面池

与我们之前创建的其他池一样,创建浮动的链接克隆桌面池的过程基本上与我们在上一节中讲解的相同,只是做了一些更改,以反映该池具有浮动分配。因此,在本节中,我们将仅重点介绍不同的配置选项:

  1. 在工作站上,打开浏览器并输入视图连接服务器的地址。在示例实验室中,连接服务器的地址是 https://hzn7-cs1.pvolab.com/admin。不要忘记在末尾加上/admin,否则您将进入 Horizon 客户端页面。

  2. 现在您将看到视图管理员登录界面。

  3. 在 Horizon View 管理员中,点击展开目录选项,然后点击“桌面池”。然后在现在显示的桌面池面板中,点击“添加...”按钮。

  4. 现在您将看到“添加桌面池”界面,首先是类型部分,在此选择您要创建的桌面池类型。在本示例中,我们创建的是自动化池。

  5. 点击“自动化桌面池”单选框。

  6. 现在点击“下一步 >”按钮继续。

  7. 现在您将看到用户分配界面。

  8. 对于此池,我们将点击“浮动”单选框(1),如下图所示:

  1. 点击“下一步 >”按钮继续。

  2. 对于此池,我们将使用链接克隆虚拟机,因此点击“视图作曲器链接克隆”单选框,并从列表中选择相关的 vCenter 服务器。在示例实验室中,显示了 vCenter 192.168.1.178,以及我们为视图设置的 vCenter 用户帐户。点击并选中该 vCenter 服务器。

  3. 点击“下一步 >”按钮继续配置。下一个配置界面是桌面池标识,如下图所示:

  1. 在 ID 框(2)中,输入此桌面池的名称。在示例实验室中,我们为此池命名为Win7-Floating-lc

  2. 在显示名称框(3)中,输入此桌面池的名称,最终用户将看到该名称。在示例实验室中,我们将其命名为Windows 7 Floating Linked Clone

  3. 最后,在描述框(4)中,输入描述以说明此桌面池的功能。

  4. 点击“下一步 >”按钮继续。

  5. 现在您将看到桌面池设置屏幕。

  6. 配置您希望应用于此桌面池的设置,然后点击“下一步 >”按钮继续。

  7. 现在您将看到配置设置屏幕。

  8. 基本部分的第一个设置是启用配置。勾选“启用配置”框以开启配置。此设置意味着可以根据配置设置来提供虚拟桌面机器。

  9. 下一个设置是错误时停止配置。勾选此框表示如果在配置过程中出现错误,配置将停止。

  10. 下一个配置部分是虚拟机命名

  11. 选择“使用命名模式”单选按钮,然后在命名模式框(6)中输入您要使用的命名模式。在示例实验室中,我们将其命名为W7-Float-lc-{n}。这将导致虚拟桌面机器被命名为W7-Float-lc-1W7-Float-lc-2,依此类推,直到您指定的构建机器数量,如下所示:

  1. 接下来,在最大机器数量框中,输入此桌面池中可以配置的最大机器数量。这设置了此桌面池中虚拟桌面机器的数量上限。

  2. 接下来是备用(已开机)机器的数量设置。在框中输入应该开机并等待用户连接的机器数量。

  3. 下一个配置选项是配置“按需提供机器”的时间。请选择“按需提供机器”单选按钮,然后输入最小的机器数量,或选择“提前提供所有机器”的单选按钮。

  4. 点击“下一步 >”按钮继续。

  5. 现在您将看到视图组合器磁盘屏幕和一次性文件重定向配置设置。

  6. 要配置此设置,请选择“将一次性文件重定向到非持久性磁盘”单选按钮(7),如下所示:

  1. 在磁盘大小框中,输入持久性磁盘的大小,在驱动器字母下拉框中,选择此持久性磁盘的驱动器字母。

  2. 要禁用一次性文件重定向功能,请点击“不重定向一次性文件”单选按钮(8)。

  3. 点击“下一步 >”按钮继续。下一个配置屏幕是存储优化。

  4. 此屏幕上唯一的选项是配置存储策略管理,首先从 VMware Virtual SAN 开始。要启用 VSAN,请点击“使用 VMware Virtual SAN”单选按钮。由于在本示例实验室中未配置此功能,因此我们将选择“不要使用 VMware Virtual SAN”。接下来,您可以选择是否为副本和操作系统磁盘使用不同的数据存储。要启用此选项,请勾选“为副本和操作系统磁盘选择不同的数据存储”框。

  5. 点击“下一步 >”按钮以继续到下一个配置屏幕。

  6. 现在,您将看到 vCenter 设置页面。

  7. 首先,选择父虚拟机,在本例中是我们的 Windows 7 Gold 镜像,然后在快照框中选择要使用的 Windows 7 Gold 镜像虚拟桌面机的快照。

  8. 在“虚拟机位置”部分,在虚拟机文件夹位置下,选择您要存储这些新虚拟桌面机的文件夹。在本实验室示例中,我们将使用Horizon Desktops文件夹。

  9. 最后,在“资源设置”部分,选择运行虚拟桌面机的主机或集群、资源池和数据存储。

  10. 点击“下一步 >”按钮以继续到下一个配置屏幕。

  11. 现在,您将看到高级存储选项配置屏幕。保留默认设置并点击“下一步 >”按钮继续。

  12. 您将看到来宾自定义配置屏幕。保留默认设置并点击“下一步 >”按钮。

  13. 现在,您将看到“准备完成”屏幕。检查您的配置设置,然后点击“完成”按钮以创建桌面池。

  14. 现在,您将看到池已成功创建,如下图所示:

在下一部分,我们将创建另一个自动化桌面池,但这次我们将创建一个带有浮动分配的池,并且使用全克隆虚拟桌面机构建。

创建浮动的全克隆桌面池

与之前我们创建的池相同,创建一个浮动的全克隆桌面池的过程基本上与之前所述相同,唯一的区别是此次池具有浮动分配。因此,在本节中,我们将重点介绍配置选项中的主要区别:

  1. 在工作站上,打开浏览器并输入 View 连接服务器的地址。在本实验室示例中,连接服务器的地址是https://hzn7-cs1.pvolab.com/admin。请记得在末尾加上/admin,否则您将进入 Horizon 客户端页面。

  2. 现在,您将看到 View 管理员登录屏幕。

  3. 在 Horizon View 管理员中,点击展开“目录”选项,然后点击“桌面池”。然后在当前显示的桌面池面板中,点击“添加...”按钮。

  4. 现在您将看到添加桌面池屏幕,首先是“类型”部分,在此部分中选择要创建的桌面池类型。在本例中,我们正在创建一个自动化池。

  5. 点击“自动化桌面池”单选按钮。

  6. 现在点击“下一步 >”按钮继续。

  7. 现在您将看到用户分配屏幕。

  8. 对于此池,我们将选择“Floating”单选按钮。

  9. 点击“下一步 >”按钮继续。您将看到 vCenter Server 屏幕。

  10. 对于此池,我们将使用全克隆虚拟机,因此选择“全虚拟机”单选按钮,然后从列表中选择相关的 vCenter 服务器。在示例实验室中,显示了vCenter 192.168.1.178,以及我们为 View 设置的 vCenter 用户帐户。点击突出显示并选择此 vCenter 服务器。

  11. 点击“下一步 >”按钮继续配置。下一个配置屏幕是桌面池标识,如下图所示:

  1. 在 ID 框 (1) 中,输入此桌面池的名称。在示例实验室中,我们将该池命名为Win7-Floating-fc

  2. 在显示名称框 (2) 中,输入此桌面池的名称,最终用户将看到该名称。在示例实验室中,我们将其命名为Windows 7 Floating Full Clones

  3. 最后,在描述框 (3) 中,输入描述以说明此桌面池的功能。

  4. 点击“下一步 >”按钮继续。

  5. 现在您将看到桌面池设置屏幕。在“远程设置”部分,显示了一些新的配置选项,如下图所示:

  1. 前三个配置选项已在之前描述过,但现在我们有了“允许用户从不同客户端设备发起独立会话”选项 (4)。如果此选项设置为“是”,那么如果用户从不同的客户端设备连接到同一桌面池,他们将获得一个不同/新的桌面会话。用户只能通过使用原始会话启动的相同客户端设备重新连接到现有会话。当此选项设置为“否”时,无论使用何种客户端设备,用户都将重新连接到他们的现有会话。

  2. 最后的配置设置是“注销后删除机器” (5)。如果此选项设置为“是”,则当用户注销时,虚拟桌面机器将被删除。如果此选项设置为“否”,则注销时虚拟桌面机器不会被删除。此功能仅支持使用手动命名的桌面池,因为不支持虚拟桌面机器的动态创建和删除。

  3. 配置剩余的桌面池设置,使其适合您的环境;在示例实验室中,我们将保持默认设置。

  4. 点击“下一步 >”按钮继续。

  5. 你现在将看到配置屏幕。

  6. 基本部分中的第一个设置是启用配置。勾选启用配置框以打开配置。

  7. 接下来,勾选“错误时停止配置”复选框。

  8. 接下来要配置的部分是虚拟机命名

  9. 点击“使用命名模式”单选按钮,然后在命名模式框中(6),输入你希望使用的命名模式。在示例实验中,我们将其命名为W7-Float-fc-{n}。这将导致虚拟桌面机器被命名为W7-Float-fc-1W7-Float-fc-2,依此类推,直到你指定的要构建的机器数量,如下图所示:

  1. 完成其余设置,使其适应你的环境,或者在示例实验中,我们将保留默认设置。

  2. 点击“下一步 >”按钮继续。

  3. 你现在将看到存储优化配置屏幕。保留默认设置并点击“下一步 >”。

  4. 你现在将看到 vCenter 设置。

  5. 首先,在虚拟机模板部分,选择你要使用的模板。在本例中,我们将使用 Windows 7 Gold Image 模板。

  6. 在虚拟机位置部分,在虚拟机文件夹位置下,选择你希望存储这些新虚拟桌面机器的文件夹。在示例实验中,我们将使用Horizon Desktops文件夹。

  7. 最后,在资源设置部分,选择运行虚拟桌面机器的主机或集群、资源池,然后选择数据存储。

  8. 点击“下一步 >”按钮继续到下一个配置屏幕。你现在将看到高级存储选项配置屏幕。保留默认设置,然后点击“下一步 >”按钮继续。

  9. 你现在将看到客户定制配置屏幕。保留默认设置并点击“下一步 >”按钮。

  10. 最后,你将看到准备完成的屏幕。审查你的配置设置,然后点击“完成”按钮来创建桌面池。

  11. 你现在将看到池已创建,如下图所示:

创建自动化桌面池的最后部分,我们将创建另一个自动化桌面池,但这次我们将创建一个具有浮动分配的池,现在通过即时克隆虚拟桌面机器构建。

创建浮动的即时克隆桌面池

在本节中,我们将创建一个自动化桌面池,该池具有浮动分配,并使用即时克隆构建。此配置有两个步骤。首先,我们需要配置一个域管理员,然后再配置实际的桌面池。

配置即时克隆域管理员

在你能够使用即时克隆配置桌面池之前,必须先添加一个即时克隆域管理员。此账户用于执行创建新虚拟桌面所需的 Active Directory 任务。它类似于在 View Composer 中使用的服务账户,但由于即时克隆不使用 Composer,因此需要在视图管理员中添加该账户。此账户需要以下权限:

  • 创建计算机对象

  • 删除计算机对象

  • 写入所有属性

要配置即时克隆域管理员,请完成以下任务:

  1. 从工作站打开浏览器,输入视图连接服务器的地址。在示例实验室中,连接服务器的地址是https://hzn7-cs1.pvolab.com/admin。别忘了在地址末尾加上/admin,否则你会进入 Horizon 客户端页面。

  2. 现在你会看到视图管理员登录页面。

  3. 要添加账户,在视图管理员控制面板中,从左侧窗格的“库存”菜单展开“视图配置”选项,然后点击“即时克隆域管理员”(1)选项。

  4. 然后点击“添加...”按钮(2),如以下截图所示:

  1. 然后你会看到添加域管理员的框。

  2. 在“完整域名”部分,点击下拉箭头(3),选择域名。在示例实验室中,这是我们的pvolab.com域。

  3. 在“用户名”框(4)中,输入具有本节开始时所述权限的用户名。

  4. 最后,在“密码”框(5)中,输入你刚才输入的用户名账户的密码。

  5. 当你完成所有细节时,点击确定。

  6. 现在你会看到域管理员账户已经添加,如下截图所示:

你现在已经成功配置了即时克隆的域管理员账户。接下来我们可以继续创建即时克隆桌面池的过程。

创建即时克隆桌面池

与我们之前创建的其他池一样,创建浮动的即时克隆桌面池的过程基本与上一节所讲的一致,唯一的不同是此池是通过即时克隆技术构建的。因此,在本节中,我们将仅突出配置选项中的主要差异:

  1. 从工作站打开浏览器,输入视图连接服务器的地址。在示例实验室中,连接服务器的地址是https://hzn7-cs1.pvolab.com/admin。别忘了在地址末尾加上/admin,否则你会进入 Horizon 客户端页面。

  2. 现在你会看到视图管理员登录页面。

  3. 在 Horizon View 管理员界面中,点击展开目录选项,然后点击桌面池。接着,在现在显示的桌面池窗格中,点击“添加...”按钮。

  4. 现在,您将看到添加桌面池屏幕,首先是类型部分,我们选择要创建的桌面池类型。在此示例中,我们正在创建一个自动化池。

  5. 点击自动桌面池的单选按钮。

  6. 现在点击“下一步 >”按钮继续。

  7. 现在,您将看到用户分配屏幕。

  8. 对于此池,我们将点击“浮动”单选按钮。

  9. 点击“下一步 >”按钮继续。您将看到 vCenter 服务器屏幕,在此屏幕上,您将配置虚拟桌面机器的构建方式。在此示例中,点击“即时克隆(1)”的单选按钮,如下图所示:

  1. 点击并选择 vCenter 服务器(2),然后点击“下一步 >”按钮继续。

  2. 下一个配置屏幕是桌面池标识,如下图所示:

  1. 在 ID 框(3)中,输入此桌面池的名称。在示例实验室中,我们将此池命名为Win10-Floating-ic

  2. 在显示名称框(4)中,输入一个桌面池的名称,最终用户将看到此名称。在示例实验室中,我们将其命名为Windows 10 Instant Clone

  3. 最后,在描述框(5)中,输入一个描述来说明此桌面池的功能。

  4. 点击“下一步 >”按钮继续。

  5. 现在,您将看到桌面池设置屏幕。根据您的需求设置配置细节,然后点击“下一步 >”按钮继续。

  6. 下一个配置部分是虚拟机命名

  7. 点击“供应设置”的单选按钮。确保选中“启用供应”框以及“错误时停止供应”框。

  8. 在命名模式框(6)中,输入您希望使用的命名模式。在示例实验室中,我们将其命名为W10-Float-ic-{n}。这将导致虚拟桌面机器的名称为W10-Float-ic-1W10-Float-ic-2,依此类推,直到您指定要构建的机器数量,如下图所示:

  1. 完成剩余的设置,以使其适应您的环境,或者在示例实验室中,我们将保持默认设置。

  2. 点击“下一步 >”按钮继续。

  3. 现在,您将看到存储优化配置屏幕。保留默认设置并点击“下一步 >”按钮继续。接下来,您将看到 vCenter 设置。

  4. 下一个配置屏幕是 vCenter 设置配置屏幕。在此屏幕上,我们将选择用于构建虚拟桌面机器的父虚拟机,然后选择运行它们的位置和资源,如下图所示:

  1. 配置的第一步是设置默认镜像的详细信息,该镜像将作为创建虚拟桌面机器的父镜像用于此桌面池。此部分如以下截图所示:

  1. 在第一个框中,vCenter 中的父虚拟机,单击浏览... 按钮(7)。您将看到选择父虚拟机框,如以下截图所示:

  1. 对于此桌面池,我们将使用 Windows 10 作为虚拟桌面机器的操作系统,因此请选择 Windows 10 Gold Image(8)。

  2. 选择好要使用的父虚拟机后,单击确认继续。

  3. 您将返回到 vCenter 设置屏幕,在这里我们可以配置默认镜像部分中的快照选项。您还将看到父虚拟机框(9)已被填充 Windows 10 Gold Image 的详细信息,如以下截图所示:

  1. 由于这是一个 Instant Clone 虚拟桌面机器,接下来的配置任务是设置从父镜像创建的快照的详细信息。

  2. 在快照框中,单击浏览... 按钮(10)。您将看到选择默认镜像框,如以下截图所示:

  1. 单击以高亮显示要使用的快照(11),然后单击确认。现在,您将看到该快照已被添加,如以下截图所示:

vCenter 设置的下一个部分是虚拟机器位置设置,如以下截图所示:

  1. 在 VM 文件夹位置框中,单击浏览... 按钮(12)。

  2. 现在,您将看到选择存储虚拟机的文件夹框。通过单击箭头展开 PVO 的数据中心,然后选择您希望创建虚拟桌面机器的文件夹。在示例实验室中,该文件夹名为 Horizon Desktops

  3. 单击确认继续。

  4. 您将返回到 vCenter 设置屏幕,在此屏幕中,您将看到 VM 文件夹位置已被添加,如以下截图所示:

下一个配置部分是为将托管和运行虚拟桌面机器的资源设置:

  1. 首先,在集群框中,单击浏览... 按钮(13),如以下截图所示:

  1. 现在,您将看到集群框,列出了可用的集群资源,如以下截图所示:

  1. 单击并高亮显示您要在其上运行此 Instant Clone 桌面池的集群。在示例实验室中,该集群名为 PVO Desktop Cluster(14)。

配置该配置的资源设置部分时,需要注意的是,你必须配置一个主机集群和资源池。你不能为即时克隆桌面池使用独立主机。

  1. 点击“确定”继续。

  2. 你现在将返回到 vCenter 设置屏幕,在这里你将看到集群已被添加。

  3. 接下来,我们将为该桌面池配置资源池。

  4. 在“资源池”框中,点击“浏览...”按钮。你将看到“选择一个资源池以供该桌面池使用”框,在这里你可以选择运行桌面池的资源池。此示例实验室的资源池依然是集群,因此请从列表中点击并高亮选择 PVO 桌面集群。

  5. 点击“确定”继续。

  6. 你现在将返回到 vCenter 设置屏幕,在这里你将看到资源池已被添加。

  7. 本部分的下一个配置选项是数据存储。在“数据存储”框中,点击“浏览...”按钮。

  8. 你现在将看到选择即时克隆数据存储配置屏幕,其中显示了所有可用的数据存储。

  9. 勾选 VM 数据存储框,然后点击“确定”按钮。你将返回到 vCenter 设置配置屏幕,届时会看到即时克隆数据存储的详细信息已经通过显示文本“1 个已选择”添加

  10. 最后,在 vCenter 设置屏幕的即时克隆配置中,你可以配置网络,如下图所示:

  1. 在“网络”框中,点击“浏览...”按钮(15)。然后你将看到选择网络框。这里,你可以使用当前在虚拟桌面机器镜像中配置的网络,或者从列表中选择另一个网络。点击“确定”继续并返回到 vCenter 设置屏幕。

  2. 现在点击“下一步 >”按钮继续到下一个配置屏幕。

  3. 你现在将看到“客户定制”配置屏幕。保持默认设置,点击“下一步 >”按钮继续。

  4. 最后,你将看到“准备完成”屏幕。检查你的配置设置,然后点击“完成”按钮以创建桌面池。

  5. 你现在将看到桌面池已经创建,如下图所示:

你还可以在 vCenter Server 的文件夹视图中看到,即时克隆的文件夹结构已经创建,如下图所示,文件夹名以 ClonePrep 开头:

你现在已经成功配置了一个用于即时克隆虚拟桌面机器的桌面池,运行的是 Windows 10 系统。在接下来的部分,我们将逐步讲解如何创建一个手动桌面池。

创建手动桌面池

在前面的部分中,我们讨论了如何创建自动桌面池。Horizon View 还具有从已存在的虚拟桌面机器甚至物理桌面机器创建桌面池的能力。

创建手动桌面池的过程与我们之前讨论的自动桌面池的过程相似,因此,在接下来的部分中,我们将创建一个手动池并突出显示过程中的不同之处:

  1. 从工作站打开浏览器,输入 View 连接服务器的地址。在示例实验室中,连接服务器的地址是https://hzn7-cs1.pvolab.com/admin。不要忘记结尾的/admin,否则你将进入 Horizon 客户端页面。

  2. 现在你将看到 View 管理员登录屏幕。使用管理员帐户登录。

  3. 登录后,从 Horizon View 管理员中,点击展开“目录”选项,然后点击桌面池。接着,在现在显示的桌面池窗格中,点击“添加...”按钮。

  4. 现在你将看到添加桌面池屏幕,从“类型”部分开始,在这里我们选择要创建的桌面池类型。在这个示例中,我们正在创建一个手动池。

  5. 单击单选按钮选择手动桌面池(1),如下面的截图所示:

  1. 现在单击“下一步 >”按钮继续。

  2. 现在你将看到用户分配屏幕。选择是否需要使用自动分配的专用分配或浮动分配。在示例实验室中,我们将单击单选按钮选择专用选项,并勾选启用自动分配的复选框。

  3. 单击“下一步 >”按钮继续。

  4. 接下来,您将看到机器源屏幕,如下所示的截图:

  1. 在此配置屏幕上,有两个选项。第一个选项是选择由 vCenter 管理的虚拟桌面机器,但这些机器并非通过某种克隆技术创建。由于我们要使用的虚拟桌面机器位于 vCenter 服务器上,因此在示例实验室中,点击选择 vCenter 虚拟机的单选按钮(2)。

  2. 第二个选项是其他来源(3)。此选项适用于非 vCenter 管理的桌面,您希望用户通过 Horizon View 连接。例如,这可能是位于数据中心的刀片式或机架式工作站机器,您希望用户通过能够支持高性能图形的协议远程连接。您需要确保在这些机器上安装了 Horizon Agent。

  3. 单击“下一步 >”按钮继续。

  4. 现在你将看到 vCenter 服务器配置屏幕。通过点击选择示例实验室的 vCenter 服务器,然后单击“下一步 >”按钮继续。

  5. 接下来,您将看到桌面池 ID 屏幕,如下所示的截图:

  1. 在 ID 框(4)中,输入该桌面池的名称。在示例实验室中,我们将该池命名为Win7-Manual

  2. 在显示名称框(5)中,输入终端用户将看到的该桌面池名称。在示例实验室中,我们将其命名为Windows 7 Manual Desktop**。

  3. 最后,在描述框(6)中,输入描述,说明该桌面池的功能。

  4. 点击“下一步 >”按钮继续。

  5. 现在,您将看到桌面池设置屏幕。根据您的需求完成配置详情,然后点击“下一步 >”按钮继续。

  6. 接下来的配置部分是虚拟机器,我们将添加希望作为该桌面池一部分的虚拟桌面机器,如下图所示:

  1. 在第一个表格中,您将看到可用虚拟机器的列表。此表格不包括已属于其他桌面池的虚拟桌面机器。

  2. 点击并高亮您想要包含在桌面池中的虚拟桌面机器。在示例实验室中,这台虚拟桌面机器叫做Windows 7 Manual Desktop(7)。

  3. 现在点击“添加”按钮(8)。

  4. 现在,您将看到虚拟桌面机器已添加到下方的表格中,意味着它已经被选中并添加到桌面池(9)中。如果您想删除它,只需点击并高亮表格中的机器,然后点击“删除”按钮。

  5. 点击“下一步 >”按钮继续。

  6. 现在,您将看到高级存储选项配置屏幕。保留默认设置,然后点击“下一步 >”按钮继续。

  7. 最后,您将看到“准备完成”屏幕。检查您的配置设置,然后点击“完成”按钮以创建桌面池。

  8. 现在,您将看到桌面池已经创建,如下图所示:

您现在已经成功配置了一个使用现有、预构建的运行 Windows 7 的虚拟桌面机器的手动桌面池。

现在,我们已经配置了多个桌面池并创建了虚拟桌面机器,在接下来的部分中,我们将通过步骤将终端用户授权到桌面池。

添加终端用户授权

现在,您已经创建了包含虚拟桌面机器的多个桌面池,下一步是允许用户访问这些池和虚拟桌面机器。

我们将先通过 Horizon View 管理员,然后通过新的 Horizon Console 基于 Web 的客户端,了解如何授权终端用户。

使用 Horizon View 管理员经典控制台添加用户授权

要通过 Horizon View 管理员授权终端用户到桌面池,我们将按照以下步骤进行:

  1. 从工作站打开浏览器,输入 View 连接服务器的地址。在示例实验室中,连接服务器的地址是https://hzn7-cs1.pvolab.com/admin。别忘了地址末尾的/admin,否则您将进入 Horizon 客户端页面。

  2. 现在,您将看到 View 管理员登录页面。使用管理员账户登录。

  3. 登录后,在 Horizon View 管理员界面中,点击左侧“库存”窗格中的“用户和组”(1),如以下截图所示:

  1. 现在点击“授权...”按钮(2)。从下拉菜单中选择“添加桌面授权”(3)。您将看到如下所示的“添加桌面授权”页面:

  1. 在此页面上,我们可以从 Active Directory 中搜索并添加用户。第一个选项是类型。您可以选择搜索用户、组或未认证用户。勾选相应的框来选择搜索类型。

  2. 接下来,您可以选择要搜索的域。在“域”框中,点击下拉箭头(4),从列表中选择相关的域。在示例实验室中,我们将从列表中选择pvolab.com

  3. 您可以选择按名称、用户名或描述进行搜索。您还可以选择通过包含以...开始完全匹配等条件进行筛选。在示例实验室中,我们将搜索一个特定用户,因此在名称/用户名框中,从下拉菜单中选择包含,然后输入用户名peter,最后点击“查找”按钮。

  4. 结果显示在下表中。在示例实验室中,您将看到输入的用户的详细信息(7)。

  5. 完成添加用户和组的授权后,您需要添加桌面池,然后点击“下一步 >”按钮。现在,您将看到如下所示的“选择桌面池进行授权”页面:

  1. 在示例实验室中,点击并高亮表格中 Win7-Manual 的条目(8)。如果您希望将此用户授权给多个桌面池,可以按住Ctrl键同时点击要授权的池。

  2. 添加完用户和桌面池后,点击“完成”按钮。

  3. 现在,您将返回到“用户和组”页面,页面将显示已授权的用户,如以下截图所示:

另一种将用户授权给桌面池的方式是从桌面池页面进行,如以下截图所示:

  1. 高亮您想授权的桌面池。在示例实验室中,我们将再次使用 Windows 7 手动池,因此点击并选择表格中的 Win7-Manual(9)。

  2. 然后点击“权限...”按钮(10),然后从菜单选项中选择“添加权限...” (11)。你现在将看到如下截图所示的“添加权限”框:

  1. 现在点击“添加...”按钮(12)。

  2. 现在你会看到“查找用户或组”框,这与在第4点中添加桌面权限时的框相同。输入你要授权的用户和/或组,然后点击“确定”。接着,在“添加权限”框中再次点击“确定”,以完成对用户的桌面池授权。

还有一种方式可以展示如何将用户授权到桌面池,这在我们创建桌面池时已经看过。这就是在“准备完成”屏幕上的选项,如下面的截图所示:

在这个向导完成后,勾选“添加用户权限”框(12),一旦你完成桌面池配置,添加桌面权限将会自动显示。

你已经成功为用户分配了桌面池权限。如果现在以已经授权的用户身份登录 Horizon View,你将看到桌面池可以从 Horizon Client 中选择并连接。我们将在第十二章中更详细地讲解如何连接虚拟桌面机器,Horizon Client 选项

在下一节中,我们将学习如何从新的 Horizon 控制台为用户分配权限。

使用新的 Horizon 控制台添加用户权限

在这一节中,我们将重复之前的任务,但这次将使用 Horizon 控制台来配置用户权限,按照下述步骤进行:

  1. 从工作站上,打开浏览器并输入 View 连接服务器的地址。在示例实验室中,连接服务器的地址是 https://hzn7-cs1.pvolab.com/admin

  2. 你现在会看到 View 管理员登录界面。使用管理员账户登录。

  3. 登录后,从 Horizon View 管理员中,点击下面截图中显示的“Horizon 控制台”选项:

  1. 或者,你可以直接通过浏览器访问 Horizon 控制台,使用连接服务器的 URL https://hzn7-cs1.pvolab.com/newadmin。然后使用管理员账户登录。

  2. 你现在会看到 Horizon 控制台界面。

  3. 在屏幕左侧的菜单选项中,点击“用户和组”(2),如下面截图所示:

  1. 现在显示的是“用户和组”界面。点击“权限”按钮(3),然后从下拉菜单中选择“添加桌面权限”(4)。

  2. 现在你将看到“添加桌面权限”界面,以及如下截图中显示的用户配置选项:

  1. 首先,选择是否要授权给单个用户或组(来自 AD),通过勾选相关框(5)。

  2. 接下来,在“域”框中,点击下拉箭头(6)并选择用户或组所在的域。在示例实验室中,这是 pvolab.com 域。

  3. 你可以选择通过名称或描述来搜索用户或组。在本例中,我们将搜索用户名,因此在“名称/用户名”框中,我们将输入用户名的第一部分,即 peter。我们还将选择“包含”筛选选项。

  4. 现在点击“查找”按钮(8)。

  5. 搜索结果将显示出来。你会看到我们的用户已经被找到,因此勾选框(9)以选择该用户,然后点击“下一步”继续。

  6. 现在你将看到“桌面池配置”选项,我们可以选择该用户将访问的桌面池,如下图所示:

  1. 勾选你希望授权给该用户的桌面池。在示例实验室中,这是 Windows 7 手动桌面池,所以勾选 Win7-Manual(10)的框。

  2. 点击“提交”按钮以完成授权配置。

  3. 现在你将返回到“用户和组”屏幕,在那里你会看到该用户已被授权访问桌面池。你将在表格的“桌面授权”列中看到该用户实际上已被授权访问两个桌面池,如下图所示:

你现在已经成功地使用 Horizon 控制台为用户授权了桌面池。

在本章的下一部分,我们将更深入地了解管理链接克隆桌面池所需的一些管理任务。

管理链接克隆桌面池

使用链接克隆桌面池时,一旦创建并授权桌面池,系统将首先创建副本,然后创建链接克隆虚拟桌面机。你将需要执行一些管理任务,我们将在本节中介绍。在执行这些任务之前,最好先检查桌面池的状态:

  1. 为了做到这一点,在 Horizon View 管理员仪表盘屏幕中,在左侧面板的“库存”部分,展开“目录”部分,然后点击桌面池(1)。你现在将看到以下截图:

  1. 从显示的桌面池列表中,你现在可以通过点击选择一个桌面池。在示例实验室中,我们将选择链接克隆桌面池,因此点击 Win7-Floating-lc2)条目。你将看到以下截图:

  1. 从顶部的选项卡中,点击“库存”选项卡(3)。你可以查看桌面池的状态(4)。

总共有 24 种不同的状态报告,适用于 Linked Clone 虚拟桌面机器。您可以查看所有状态的细分,信息来自 Horizon View 文档:

  • 配置中:虚拟机正在进行配置。

  • 自定义中:自动化池中的虚拟机正在根据配置进行自定义。

  • 删除中:虚拟机已标记为删除,但尚未删除。一旦过程完成,它将被删除。

  • 等待代理:View 连接服务器正在等待与手动池中虚拟桌面机器上运行的 Horizon 代理建立通信。

  • 维护模式:虚拟机处于维护模式。这意味着它不可用,因此最终用户无法登录或使用虚拟桌面机器。

  • 启动中:Horizon 代理已在虚拟桌面机器上启动,但其他必需的服务,如显示协议,仍在启动过程中。

  • 代理禁用:此状态可能在两种情况下出现。首先,在启用了登出后删除或刷新机器,或登出后删除机器设置的桌面池中,桌面会话已注销,但虚拟机尚未刷新或删除。其次,View 连接服务器在发送关闭虚拟桌面机器的请求之前禁用了 Horizon 代理。此状态确保在虚拟桌面机器上无法启动新的桌面会话。

  • 代理无法访问:View 连接服务器无法与虚拟桌面机器上运行的 Horizon 代理建立通信。

  • 无效 IP:虚拟桌面机器的子网掩码注册设置已配置,但没有活动的网络适配器在配置的范围内获得 IP 地址。

  • 代理需要重启:View 组件已升级,虚拟桌面机器必须重启,以便 Horizon 代理与升级后的组件一起运行。

  • 协议失败:显示协议在 Horizon 代理启动期间未能启动。

  • 域失败:虚拟桌面机器遇到访问域的问题。域服务器无法访问,或者域认证失败。

  • 已被使用:在启用了登出后删除或刷新机器,或登出后删除机器设置的桌面池中,虚拟桌面机器上没有会话,但会话未注销。如果虚拟桌面机器意外关闭,或最终用户在会话中途重置机器,可能会发生此情况。

  • 配置错误:未启用显示协议。

  • 配置错误:配置过程中发生错误。

  • 错误:虚拟桌面机器发生了未知错误。

  • 未分配用户连接:在专用桌面池中,其他用户(不是分配的用户)已登录虚拟桌面机器。

  • 未分配用户已断开连接:除分配用户外,其他用户登录并与专用桌面池中的虚拟机断开连接。

  • 未知:虚拟桌面机器状态未知。

  • 已配置:虚拟桌面机器已经构建,但已关闭或挂起。

  • 可用:虚拟桌面机器已开机,且准备好供终端用户连接。

  • 已连接:虚拟桌面机器已经有用户会话正在运行并连接到 Horizon 客户端。

  • 已断开连接:虚拟机正在会话中使用,但已与 Horizon 客户端设备断开连接。

  • 进行中:虚拟机在维护操作过程中处于过渡状态。

你还可以在桌面池中的每个虚拟桌面机器上完成许多任务。通过右键点击表格中列出的任何桌面,你可以在该桌面上执行多个任务。你可以选择以下选项,如下图所示:

这些选项在下列列表中有更详细的描述:

  • 重启桌面:重启该虚拟桌面机器。

  • 重置虚拟机:将对桌面执行硬重置,适用于系统死机的情况。这也将把虚拟桌面机器重置为原始快照状态。

  • 移除:将虚拟桌面机器从池中移除。

  • 刷新、重新组合和重新平衡:这些选项已在第二章中描述,理解 Horizon 7 架构和组件,可以在个人桌面上完成,而无需在整个池中执行。我们将在下一部分中更详细地讨论这些内容。

  • 取消任务:取消该虚拟机上的任何未完成任务。

  • 分配用户:可用于将桌面分配给特定用户。

  • 取消分配用户:将用户从该桌面的分配中移除。

  • 进入维护模式:将桌面置于一种状态,在维护过程中,用户无法分配到该桌面或连接到该桌面。

  • 退出维护模式:将桌面返回到池中。

  • 断开会话:断开当前连接的用户与池的连接,但不注销他们。

  • 注销会话:注销用户。

  • 发送消息:向任何给定的用户发送消息。

  • 导出表格内容:将包含虚拟桌面机器详细信息的表格导出为 CSV 文件。

  • 刷新表格内容:更新表格以显示最新信息。

在下一部分,我们将查看管理桌面池时一些更常见的、专门针对链接克隆的任务,从重新组合桌面池开始。

重新组合链接克隆桌面池

你可能需要执行的一个常见任务是重新组合桌面池,以更新基础镜像中的操作系统或应用程序,或者替代地,添加新的应用程序。始终建议拥有测试池,以便在将更新发布给最终用户之前先进行测试。

在这个示例中,我们将重新组合一个示例桌面池,但你也可以在单个虚拟桌面上执行重新组合操作:

  1. 要重新组合桌面池,从 Horizon View 管理员仪表盘屏幕,在左侧窗格的“库存”部分,展开“目录”选项,然后点击“桌面池”。双击你想要执行重新组合操作的桌面池。在示例实验室中,我们将选择名为 Win7-Floating-lc 的链接克隆桌面池。现在你将在所选桌面池的“摘要”选项卡中看到桌面池的详细信息,如下图所示:

  1. 点击“视图组合器”按钮 (1),然后从显示的菜单选项中,点击“重新组合” (2)。

  2. 你现在将看到重新组合屏幕和镜像选项,如下图所示:

  1. 在这里,你可以通过点击“更改...”按钮 (3) 来更改父虚拟机。然后,你可以选择一个新的父虚拟机来进行重新组合。接下来,你会在表格中看到与新选择的父虚拟机相关的快照 (4),然后点击它以选择。

  2. 你可以选择当前镜像的新快照。这将反映出你从中创建新快照的现有镜像的更新版本。为此,点击你想要使用的快照 (4)。

  3. 点击“下一步”> 继续。

  4. 你现在将看到调度屏幕,在这里你可以配置重新组合操作的时间,以及如果用户在重新组合时已连接,发生的情况。如下图所示:

  1. 第一个选项是设置你希望重新组合操作开始的日期和时间 (5)。

  2. 接下来,你可以选择等待用户注销后再开始重新组合。要启用此选项,点击“等待用户注销”单选按钮 (6)。或者,你也可以点击“强制用户注销”单选按钮 (7),这将强制用户注销。然而,他们可能会在实际被注销前获得一个宽限期,以便保存任何工作。

  3. 接下来,你有选项勾选“在第一次错误时停止”框 (8)。勾选此框可以在出现任何错误时停止重新组合。如果有任何问题,这将防止重新构建池中的所有虚拟桌面机器。

  4. 如果我们回顾一下强制用户注销选项,你还可以配置一个宽限期,用户在注销之前的等待时间。可以在全局设置部分进行编辑,如下图所示:

  1. 要编辑全局设置,从左侧的清单窗格中,展开“视图配置”选项,然后点击“全局设置”(10)。接着点击“编辑...”(11),在“常规设置”框中向下滚动至高亮部分(12)。然后,你可以配置消息和宽限期。

  2. 在重新组合屏幕上,点击“下一步 >”继续。

  3. 现在,你将看到“准备完成”框,如下图所示:

  1. 检查配置设置,然后点击“完成”按钮。

  2. 重新组合操作将根据配置的开始时间以及是否等待用户注销来启动。

现在,你已经成功地在示例实验室中的一个联机克隆桌面池上执行了重新组合操作。在下一节中,我们将讨论刷新操作。

刷新联机克隆桌面池

你可能还会执行的另一个任务是刷新桌面池。通过刷新联机克隆虚拟桌面或桌面池,实际上你是将它们恢复到初始状态,即在原始快照创建之后的自定义阶段完成时的状态。仅操作系统磁盘会被刷新,其他磁盘不受影响:

  1. 要重新组合桌面池,在 Horizon View 管理员仪表板屏幕的左侧窗格中,在清单部分下,展开“目录”选项,然后点击“桌面池”。双击你想要执行刷新操作的桌面池。在示例实验室中,我们将选择名为Win7-Floating-lc的联机克隆桌面池。你现在将看到所选桌面池的摘要标签中的桌面池详细信息。

  2. 点击“查看组合器”按钮,然后在显示的菜单选项中点击“刷新”。

  3. 你现在将看到调度屏幕,你可以在其中配置重新组合操作的时间,以及如果用户在刷新时连接时会发生什么。如下图所示:

  1. 点击“下一步 >”按钮继续。

  2. 现在,你将看到“准备完成”框,如下图所示:

  1. 检查配置设置,然后点击“完成”按钮。

  2. 刷新操作将根据配置的开始时间以及是否等待用户注销来启动。

现在,你已经成功地在示例实验室中的一个联机克隆桌面池上执行了刷新操作。在下一节中,我们将讨论重新平衡操作。

重新平衡一个联机克隆桌面池

你将执行的最后一个任务是重新平衡桌面池。View Composer 中的重新平衡操作用于将链接克隆虚拟桌面机器均匀分布到环境中的多个数据存储中。

如果你的某个数据存储空间快满了,而其他存储还有充足的空间,你将执行此任务:

  1. 要重新平衡桌面池,在 Horizon View 管理员仪表盘屏幕上,在左侧面板的库存部分,展开目录选项,然后点击桌面池。双击你要执行重新平衡操作的桌面池。在示例实验室中,我们将选择名为 Win7-Floating-lc 的链接克隆桌面池。现在,你将看到所选桌面池的详细信息,显示在摘要选项卡中。

  2. 点击 View Composer 按钮,然后从显示的菜单选项中点击“重新平衡”。

  3. 你现在将看到以下信息框:

  1. 点击“下一步 >”按钮继续。

  2. 你现在将看到调度界面,你可以在其中配置重新平衡操作的时间,以及如果用户在重新平衡操作时已连接,将会发生什么。这与我们之前看到的刷新和重新组合操作的界面相同。

  3. 点击“下一步 >”按钮继续。

  4. 你现在将看到如下截图所示的“准备完成”框:

  1. 在“准备完成”框中,这时你将看到将显示给用户的注销信息。底部还有一个重要信息框,包含有关桌面池设置和在重新平衡操作过程中可用的虚拟桌面机器数量的内容。

  2. 检查配置设置后,点击完成按钮。

  3. 现在,重新平衡操作将根据你配置的开始时间和是否等待用户注销来启动。

你现在已经成功地对示例实验室中的一个链接克隆桌面池执行了重新平衡操作。在接下来的部分,我们将探讨如何管理由 View Composer 创建的其他磁盘。

管理持久磁盘

在上一部分中,我们讨论了 View Composer 的操作,这些操作主要涉及管理虚拟桌面机器创建时的操作系统部分。在这一部分,我们将查看如何管理非操作系统磁盘或持久磁盘。

持久磁盘可以为每个用户配置一个专用的虚拟硬盘,这样可以在重新组合操作等过程中保留用户数据和设置。关于持久磁盘管理,有许多任务可以执行。

你可以将虚拟磁盘从专用桌面中分离。此操作的主要使用场景可能是因为最终用户离开公司,因此桌面不再需要,但数据需要保留以符合合规或审计要求。也可能是因为桌面出现问题,你需要重新创建桌面而不丢失用户数据。同样,你可以将现有的持久磁盘附加到虚拟桌面机器上,以便访问存储在其中的文件和数据。在接下来的部分中,我们将分别演示附加和分离持久磁盘。

分离持久磁盘

在第一次实例中,我们来看看如何从用户的虚拟桌面机器中分离持久磁盘,按照以下步骤操作:

  1. 从工作站打开浏览器,输入 View Connection 服务器的地址。在示例实验室中,连接服务器的地址是 https://hzn7-cs1.pvolab.com/admin

  2. 你现在将看到 View 管理员的登录界面。使用管理员账户登录。

  3. 你将看到 Horizon View 管理员的仪表盘屏幕。

  4. 在 Horizon View 管理员界面中,点击左侧库存中的目录选项进行展开。从这里,点击桌面池 (1),如下图所示:

  1. 接下来,点击库存标签 (2)。现在你将看到一张列出桌面池中虚拟桌面机器的表格,并且表格顶部有多个可点击的选项。

  2. 点击持久磁盘选项 (3)。

  3. 表格视图随后切换为详细列出附加到这些虚拟桌面机器的持久磁盘。点击并选择其中一个磁盘。在本例中,我们将选择 Win7-VM-1-vdm-user-disk-D (4)。

  4. 现在点击“分离...”按钮 (5)。磁盘现在已经分离,并作为独立磁盘可以附加到其他虚拟机器。此操作的使用场景可能是保存用户数据,以防他们离开你的组织,而你需要出于合规目的保留他们的数据,或者与其他用户共享。

还有另一种方法可以按照以下步骤分离持久磁盘:

  1. 登录 Horizon View 管理员后,从仪表盘中点击左侧库存中的资源选项进行展开。从这里,点击持久磁盘 (6),如下图所示:

  1. 你现在将看到详细列出附加到这些虚拟桌面机器的持久磁盘的表格。点击并选择其中一个磁盘。在本例中,我们将选择 Win7-VM-2-vdm-user-disk-D (7)。

  2. 现在点击“分离...”按钮 (8)。磁盘现在已被分离。

在下一部分,我们将展示反向操作,教你如何附加持久磁盘。

附加持久磁盘

要将持久磁盘附加到用户的虚拟桌面机器,请按照以下步骤操作:

  1. 在工作站上,打开浏览器并输入视图连接服务器的地址。在示例实验室中,连接服务器的地址是 https://hzn7-cs1.pvolab.com/admin

  2. 你现在将看到 View 管理员登录界面。使用管理员帐户登录。

  3. 你现在将看到 Horizon View 管理员仪表板屏幕。

  4. 从 Horizon View 管理员界面,点击左侧库存中的资源选项进行展开。然后点击持久磁盘 (1),如以下截图所示:

  1. 现在点击分离标签 (2)。如果你已经有了一些分离的磁盘,你将会看到它们在表格中列出。在示例实验室中,我们没有分离的磁盘,但如果有的话,你将点击持久磁盘的条目,然后点击附加...按钮。

  2. 下一步是选择一个链接克隆虚拟桌面机器,并将持久磁盘附加到该机器,选择“作为辅助磁盘附加”选项,然后点击完成。

  3. 磁盘现在将对你选择的虚拟桌面机器可用。

你不能将存储在非 VMware 虚拟 SAN 数据存储上的持久磁盘附加到存储在 VMware 虚拟 SAN 数据存储上的虚拟桌面机器。此外,你需要确保你将持久磁盘附加到的虚拟桌面机器与持久磁盘创建所在的虚拟桌面机器使用相同的操作系统。

你还可以选择直接从 vCenter 导入现有磁盘。为此,请按照以下步骤操作:

  1. 点击“从 vCenter 导入...”按钮 (3),如之前的截图所示。你现在将看到如下截图所示的“从 vCenter 导入持久磁盘”配置框:

  1. 首先,在 vCenter 服务器框中,点击下拉箭头并从显示的列表中选择包含你想要导入的虚拟磁盘的 vCenter 服务器。在示例实验室中,这由 IP 地址 192.168.1.178 显示。你还将看到它显示了 vCenter 用户帐户。

  2. 接下来,通过点击下拉箭头并选择虚拟磁盘所在的数据中心,选择数据中心框中的数据中心 (5)。在示例实验室中,这是 PVO 的数据中心选项。

  3. 现在,在链接克隆桌面池框中,点击下拉箭头 (6),并选择虚拟磁盘所在的桌面池。在示例实验室中,这是名为 Win7-dedicated-lc 的桌面池。

  4. 接下来,你需要选择持久磁盘文件。点击浏览...按钮 (7)。你将看到如下截图所示的选择数据存储路径配置框:

  1. 在数据存储框中,点击下拉箭头(9),从列表中选择持久性磁盘所在的数据存储。在示例实验室中,这是名为 VM Datastore 的数据存储。

  2. 然后,从列表中导航到您要导入的虚拟磁盘,并点击“确定”按钮。

  3. 您现在将返回到“从 vCenter 导入持久性磁盘”配置框。最后要配置的是用户选项。

  4. 点击“浏览...”按钮(8)。此时,您将看到如下截图所示的选择数据存储路径配置框:

  1. 在域框(10)中,点击下拉箭头并选择用户所在的域。在示例实验室中,这是pvolab.com域。

  2. 接下来,在名称/用户名框(11)中,输入Peter的用户名,并确保从下拉菜单中选择“包含”作为筛选条件。

  3. 现在点击“查找”按钮(12)。

  4. 在表格中,您现在将看到显示的结果。点击并选择相关用户(13),然后点击“确定”。

  5. 您现在将返回到“从 vCenter 导入持久性磁盘”配置框。

  6. 点击“确定”以完成配置。当相关用户登录时,磁盘将被附加到所选桌面池中的虚拟桌面机器。

您现在已经成功将持久性磁盘附加到现有的虚拟桌面机器上。

部署后审查基础设施

因此,创建了桌面池并且虚拟桌面机器已构建并运行,现在是时候回过头来审查基础设施,确保在添加最终用户并允许他们登录之前,一切都按预期运行。这仅仅是为了确保您的资源配置符合预期,但也为您提供了另一个机会,在用户登录之前调整任何设置,避免错过最佳时机。

理想情况下,您应该将评估数据与您环境中的当前数据进行比较。回到第三章,设计与部署考虑因素,我们将 Liquidware Stratusphere 作为解决方案进行探讨,因为它不仅能够提供评估数据,还能提供关于基础设施性能的数据,并且在下一部分调整最终用户体验时会非常有用。

这将允许您测量 CPU、内存和网络性能,从而快速了解所使用的资源,并识别任何潜在的瓶颈。

摘要

在第八章的第二部分,配置与管理桌面池 - 第一部分,我们探讨了如何创建浮动桌面池,接着我们看了如何授权最终用户访问桌面池及池中的虚拟桌面机器。我们讨论了如何通过 View 管理员控制台以及新 Horizon 控制台进行操作。

然后,我们继续探讨了一些更常见的池管理任务,特别是涉及到管理联接克隆桌面池时的任务。

我们通过了解如何在完成初始部署后审查环境来结束这一章节。

第十章:精细调整最终用户体验

到目前为止,我们已经建立了我们的 Horizon View 基础设施,部署并优化了我们的虚拟桌面操作系统,并通过创建 Horizon View 桌面池配置了用户权限。这意味着我们的最终用户现在可以访问他们的虚拟桌面。

在本章中,我们将讨论如何精细调整最终用户体验,我们所指的是桌面的性能表现,并确定将向用户提供哪些功能。

我们已经讨论过优化虚拟桌面操作系统,并且如何调优操作系统使其像虚拟桌面机器一样工作。现在,我们将讨论如何精细调整和配置一些设置,如交付协议,以及启用和禁用与最终用户如何与虚拟桌面机器交互相关的某些功能。我们所指的配置项包括是否可以在运行客户端的终端设备与虚拟桌面之间进行文本剪切和粘贴。

这些配置选项都是通过 Active Directory 群组策略集中部署和管理的。

在本章中,我们将讨论以下主题:

  • 配置和准备 Active DirectoryAD)以调优虚拟桌面机器

  • 配置 Horizon AD 策略

  • 安装 PCoIP 调优工具来配置和调节交付协议

  • 调优虚拟桌面以获得最佳性能

配置和准备 AD

虚拟桌面机器的行为以及用户如何与其交互是由 AD 策略决定的。正如我们之前提到的,这个策略配置了如图形体验和剪切粘贴选项等内容。

为了简化操作,这些策略的模板已经创建,并作为 Horizon View 软件的一部分随软件下载一起提供,在第四章《安装与配置 Horizon 7 - 第一部分》中可以找到,并保存在名为 VMware-Horizon-Extras-Bundle-4.9.0-9539668 的 ZIP 文件中。

我们需要做的第一件事是解压此文件,并将其保存到文件服务器上的共享软件文件夹中。你会看到它包含了 15 个管理模板(ADMX)文件,如下图所示:

在下一节中,我们将介绍 AD ADMX 和 ADML 模板以及如何导入它们。

导入并应用 Horizon View ADMX 模板

现在你已经解压了模板文件,可以将它们导入。由于我们使用的是 AMDX/ADML 模板,并且正在使用 Windows Server 2016,导入过程非常简单,只需将文件复制到域控制器上的中央位置即可。对于 Windows Server 2019 也是如此。需要复制两组文件,即 ADMX 文件和 ADML 文件:

  1. 首先,将所有 Horizon ADMX 文件复制到域控制器的 C:\Windows\PolicyDefinitions 文件夹中,如下图所示:

  1. 接下来,将 Horizon 的 ADML 文件复制到域控制器的 C:\Windows\PolicyDefinitions\en-US 文件夹,如下图所示:

在接下来的部分,我们将查看部署虚拟桌面机器所需的 AD OU 要求以及在配置和调优环境之前需要具备的条件。

创建组织单位(OU)

首先,您需要为虚拟桌面机器创建一个 组织单位OU)。最佳实践是为虚拟桌面机器创建一个单独的 OU,以确保不会将错误的策略应用于它们,例如那些用于物理机器的策略,这些策略可能包含会影响性能的组件,反之亦然。您不希望将基于 VDI 的策略应用于物理桌面设备。

根据您自己的环境,您可能希望为不同的使用场景创建 OU,例如,您可能希望为组织内的每个不同部门创建一个 OU。这样可以为每个 OU 应用不同的基于 VDI 的策略。例如,某个特定部门可能使用高端图形,这意味着 PCoIP 将被配置为提供比标准办公用户更丰富的体验,或者它可能是一个针对 LAN 用户的特定策略,在该策略中,根据可用带宽来管理行为。

在示例实验室中,我们将在域控制器上创建一个名为 Horizon View Desktops 的 OU,如下图所示:

要配置该策略,请按照以下步骤操作:

  1. 从“活动目录用户和计算机”配置屏幕中,点击高亮显示的域 pvolab.com1),然后右键点击。

  2. 在现在看到的上下文菜单中,将鼠标移到“新建”(2)选项上,然后从下一个上下文菜单中,移到鼠标并点击“组织单位”(3)。

  3. 在“新建对象 - 组织单位”框中,输入指定的名称来命名这个 OU。在示例实验室中,我们将其命名为 Horizon View Desktops(4)。

  4. 点击“确定”。

  5. 您现在将返回到“活动目录用户和计算机”屏幕,您将看到新创建的 OU 已经添加。

接下来,我们将创建策略并将其链接到这个新 OU,以便将 Horizon 特定的虚拟桌面机器应用于此。

为 Horizon View 创建组策略对象(GPO)

现在您已经为虚拟桌面机器创建了一个 OU,您可以创建与该 OU 关联的组策略对象。在示例实验室中,该策略称为 Horizon View 虚拟桌面策略

  1. 要开始配置,双击 Windows 管理工具 图标以启动管理工具。此时,您将看到显示的 Windows 管理工具 屏幕。

  2. 从此屏幕向下滚动,然后双击“组策略管理”选项。你现在将看到组策略管理屏幕,如下图所示:

  1. 展开Forest:pvolab.com (1)、Domainspvolab.com文件夹。点击并高亮显示Horizon View Desktops组织单位 (2),然后右键点击它。

  2. 从出现的上下文菜单中,点击“在此域中创建 GPO,并链接到此处...” (3)。

  3. 现在你将看到“新建 GPO”对话框,如下图所示:

  1. 在名称框中,输入该策略的名称。在示例实验室中,我们将其命名为Horizon View Virtual Desktop Policy

  2. 点击“确定”。

  3. 你现在将返回到组策略管理屏幕,屏幕上将显示新创建的策略,如下图所示:

现在,如果我们编辑新创建的Horizon View Virtual Desktop Policy,你将看到列出的新的 Horizon 特定策略选项:

  1. 要编辑策略,在组策略管理屏幕中点击并高亮显示Horizon View Virtual Desktop Policy (1)。

  2. 右键点击并从出现的上下文菜单中点击“编辑...” (2),如下图所示:

现在你将看到带有 VMware Horizon 特定策略的组策略管理编辑器界面:

在示例实验室中,我们将所有策略模板添加到一个策略中,仅为展示可用的各种选项。在你的环境中,根据设计需求,你可能需要创建不同的策略,并将不同的模板应用于不同的策略。你甚至可能需要创建不同的组织单位。也许这将按部门或不同的使用案例进行,如我们之前提到的那样。这是推荐的方法,因为它使故障排除和策略管理变得更加简单。

在我们查看每个单独的策略选项之前,在下一部分中,我们将完成最后一个 AD 配置任务:配置回环策略。

启用回环策略

在 VDI 模式下,特别是使用浮动桌面分配时,多个用户将访问同一台桌面。为了使用户对某个虚拟桌面机的配置更改应用到所有使用该机器的用户,我们需要启用回环处理功能。如果你在自助服务终端等环境中使用虚拟桌面机,这一点尤为重要。要配置回环模式,请从组策略管理编辑器屏幕完成以下步骤:

  1. 启动组策略管理编辑器屏幕,如下图所示:

  1. 在“计算机配置”部分,展开策略管理模板:策略定义系统文件夹。

  2. 高亮显示组策略 (1)。你将看到右侧窗格中列出的策略选项。

  3. 向下滚动至“配置用户组策略回环处理模式” (2)。点击选中它,然后右键单击。

  4. 在弹出的上下文菜单中,点击“编辑”选项 (3)。

  5. 现在你将看到“配置用户组策略回环处理模式”的配置界面,如下图所示:

  1. 点击“启用”单选按钮 (4),以在 Horizon View 虚拟桌面策略中启用该策略。然后,你可以配置模式操作。

  2. 点击下拉箭头 (5),选择“替换”选项。

选择“替换”选项时,应用的是与计算机相关的用户策略,其他任何用户策略将被忽略。选择合并选项意味着应用的策略既包括用户策略,也包括计算机策略,在发生冲突时,以计算机策略为准。

我们现在已经成功完成了配置 AD 的主要管理员任务。在下一部分中,我们将查看 Horizon View 管理模板中可用的不同策略设置。

配置 Horizon View 策略设置

在本节中,我们将介绍 Horizon View ADMX 模板中可以配置的所有不同策略选项,这些模板已被添加到 AD 中。本节将作为参考指南,展示所有可以配置的不同策略设置。

PCoIP 客户端会话变量

第一组策略设置是关于PCoIP 客户端会话变量的。要查看不同的策略设置,在“计算机配置”下,展开策略管理模板:策略定义选项,然后点击PCoIP 客户端会话变量,如下图所示:

你会看到一个名为可覆盖的管理员默认值的文件夹,里面包含不同的设置。这些设置控制来自客户端会话的 PCoIP 协议行为。要编辑某个设置,双击要配置的设置,然后确保它已启用,接着配置相关的设置。

作为示例,我们使用了“配置 PCoIP 虚拟通道”来演示这一点。从组策略管理编辑器界面,双击“配置 PCoIP 虚拟通道”设置,如下图所示:

要配置此策略,请按照以下步骤操作:

  1. 要启用策略设置,请点击“启用”单选按钮 (1)。

  2. 然后,你可以选择屏幕左侧“选项”部分中的设置。在屏幕右侧,你将看到帮助部分中关于各种可用选项的描述。

  3. 点击“应用”保存设置。

  4. 现在,点击“确定”退出,或点击“下一设置/上一设置”继续浏览其他策略设置。

现在让我们来看一下定义 PCoIP 会话行为的策略设置。

PCoIP 会话变量

下一组策略设置是关于 PCoIP 会话变量,它定义了 PCoIP 在桌面会话中的行为,如下图所示:

我们在此屏幕上突出显示了一个特定设置,那就是“关闭构建到无损功能”设置 (2)。

快速强调此设置的原因是,对于那些使用过以前版本 View 的人。在 View 6 之前,PCoIP 构建到无损的默认选项是启用的,这意味着你需要更多的带宽来支持这种级别的图像细节。从 View 6 起,默认设置是将构建到无损功能设置为禁用。

下一组策略设置是用于控制 VMware Blast 协议的,如果你选择使用该协议而不是 PCoIP。

VMware Blast

下一组策略设置是配置 VMware Blast 传输协议,它允许你定义协议的行为,如下图所示:

下一组策略设置是配置 VMware Horizon 客户端配置

VMware Horizon 客户端配置

下一组策略设置是配置 VMware Horizon 客户端配置,它定义了 Horizon 客户端的行为,如下图所示:

在此特定配置选项下,你可以看到主标题下有一些策略设置。然而,还有一些子文件夹,其中也包含了一些设置,我们将在接下来的部分中列出。

脚本定义

脚本定义 子文件夹中,你将找到以下用于脚本定义的策略设置:

接下来,我们有安全设置的配置选项。

安全设置

安全设置 子文件夹中,你将找到以下用于管理 SSL 和证书管理的安全设置策略:

接下来,我们有 USB 配置选项。

查看 USB 配置

View USB 配置 文件夹中,以及文件夹根目录中的设置外,还包含一个子文件夹,内有其他设置,如下图所示:

代理无法配置的设置文件夹中的政策设置将在下一节中展示。

代理无法配置的设置

代理无法配置的设置文件夹中的政策设置将在下图中展示:

现在,我们已经概述了所有在 VMware Horizon 客户端配置部分中涵盖的政策设置。接下来是关于 URL 重定向的选项,相关内容将在下一节中介绍。

VMware Horizon URL 重定向

VMware Horizon URL 重定向文件夹中,您将找到管理 URL 重定向功能的政策设置,如下图所示:

在下一节中,我们将查看 View Agent 的配置选项。

Horizon View 代理配置

VMware View Agent 配置文件夹中,您将看到根文件夹中只有一个政策设置,其他的都被划分到子文件夹中,如下图所示:

在下一节中,我们将查看VMware View Agent 配置子文件夹中的政策设置选项,首先从代理配置开始。

代理配置

代理配置文件夹中,您将找到代理配置的政策设置,如下图所示:

在下一节中,我们将查看代理安全性子文件夹中的政策设置选项。

代理安全性

代理安全性子文件夹中,您将找到政策设置,如下图所示:

在下一节中,我们将查看协作子文件夹中的政策设置选项。

协作

协作子文件夹中,您将找到政策设置,如下图所示:

在下一节中,我们将查看人物管理子文件夹中的政策设置选项。

人物管理

人物管理子文件夹中,您会看到政策设置被进一步划分为子文件夹,如下图所示:

我们将在接下来的章节中覆盖这些子文件夹中的政策设置。

桌面 UI

桌面 UI子文件夹中,您将找到政策设置,如下图所示:

在下一节中,我们将查看文件夹重定向子文件夹中的政策设置选项。

文件夹重定向

文件夹重定向子文件夹中,您将找到政策设置,如下图所示:

在接下来的部分中,我们将查看日志记录子文件夹中的策略设置选项。

日志记录

日志记录子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看漫游和同步子文件夹中的策略设置选项。

漫游和同步

漫游和同步子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看故障排除子文件夹中的策略设置选项。

故障排除

故障排除子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看扫描仪重定向子文件夹中的策略设置选项。

扫描仪重定向

扫描仪重定向子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看串行 COM子文件夹中的策略设置选项。

串行 COM

串行 COM子文件夹中,您将找到如下截图所示的策略设置,以及另一个子文件夹。

在接下来的部分中,我们将查看PortSettings子文件夹中的策略设置选项。

PortSettings

PortSettings子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看智能卡重定向子文件夹中的策略设置选项。

智能卡重定向

智能卡重定向子文件夹中,您将看到没有实际设置,只有另一个子文件夹,如下截图所示:

在接下来的部分中,我们将查看本地读卡器访问子文件夹中的策略设置选项。

本地读卡器访问

本地读卡器访问子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看True SSO Configuration子文件夹中的策略设置选项。

True SSO Configuration

True SSO Configuration子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看Unity Touch and Hosted Apps子文件夹中的策略设置选项。

Unity Touch and Hosted Apps

Unity Touch and Hosted Apps子文件夹中,您将找到如下截图所示的策略设置:

在接下来的部分中,我们将查看 View Agent Direct-Connection Configuration 子文件夹中的策略设置选项。

查看 Agent 直接连接配置

View Agent Direct-Connection Configuration 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 View RTAV Configuration 子文件夹中的策略设置选项。

查看 RTAV 配置

View ATV Configuration 子文件夹中,您将找到一个策略设置和另一个子文件夹,如下图所示:

在接下来的部分中,我们将查看 View RTAV Webcam Setings 子文件夹中的策略设置选项。

查看 RTAV 摄像头设置

View RTAV Webcam Settings 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 View USB Configuration 子文件夹中的策略设置选项。

查看 USB 配置

View USB Configuration 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 Client Downloadable only Settings 子文件夹中的策略设置选项。

仅客户端可下载设置

Client Downloadable only Settings 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 VMware Client IP Transparency 子文件夹中的策略设置选项。

VMware Client IP Transparency

VMware Client IP Transparency 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 VMware Device Bridge 子文件夹中的策略设置选项。

VMware Device Bridge

VMware Device Badge 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 VMware Flash MMR 子文件夹中的策略设置选项。

VMware Flash MMR

VMware Flash MMR 子文件夹中,您将找到策略设置,如下图所示:

在接下来的部分中,我们将查看 VMware HTML5 Features 子文件夹中的策略设置选项。

VMware HTML5 功能

VMware HTML5 Features 子文件夹中,您将找到两个策略设置和两个额外的子文件夹,如下图所示:

在下一节中,我们将查看VMware Geolocation Redirection子文件夹中的策略设置选项。

VMware 地理位置重定向

VMware Geolocation Redirection子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将查看VMware HTML5 Multimedia Redirection子文件夹中的策略设置选项。

VMware HTML5 多媒体重定向

VMware HTML5 Multimedia Redirection子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将查看VMware Virtualization Pack for Skype for the Business子文件夹中的策略设置选项。

VMware Virtualization Pack for Skype for Business

VMware Virtualization Pack for Skype for Business子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将返回到顶层策略文件夹,并查看VMware View Common Configuration策略设置的选项。

VMware View 通用配置

VMware View Common Configuration子文件夹中,您将找到三个策略设置和三个子文件夹,如下图所示:

在下一节中,我们将查看Log Configuration子文件夹中的策略设置选项。

日志配置

Log Configuration子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将查看Performance Alarms子文件夹中的策略设置选项。

性能警报

Performance Alarms子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将查看Security Configuration子文件夹中的策略设置选项。

安全配置

Security Configuration子文件夹中,您将找到以下截图所示的策略设置:

在下一节中,我们将返回到顶层策略文件夹,并查看VMware View Server Configuration策略设置的最终选项。

VMware View Server 配置

VMware View Server Configuration子文件夹中,您将找到以下截图所示的策略设置:

现在我们已经展示了来自 VMware View ADMX 模板的所有策略配置选项。在接下来的部分中,我们将介绍一种专门用于调优 PCoIP 协议的工具,前提是你选择使用该协议来交付虚拟桌面机器。

PCoIP 调优工具

本章要讲解的最后一件事是如何使用 PCoIP 调优工具动态调整虚拟桌面机器。你可以通过以下链接下载此工具:tinyurl.com/ocqxykn

该调优工具的功能之一是能够动态更改设置,而不是手动编辑策略。这很方便,因为从政策的数量来看,有很多不同的可配置选项。

下载工具后,在你想要调整的虚拟桌面机器上启动它。最好在母版镜像上进行此操作,并且可以让最终用户参与,以便不仅获得他们的反馈,还能让他们接受该解决方案。

启动工具后,你将看到有多个选项可供选择:

  • 激活配置文件

  • 管理配置文件

  • 清除配置文件设置

  • 显示会话统计

  • 显示会话健康

以下截图展示了这些选项:

在接下来的部分中,我们将简要介绍每个选项的配置用途。

激活配置文件

激活配置文件设置允许你激活预设的配置文件。每个配置文件都是基于不同的使用场景构建的,目前已有三个预设配置文件可供选择。一个是默认用户配置文件,一个是基于 WAN 用户的配置文件,另一个是针对任务工作者的配置文件。

通过选择一个预设配置文件,诸如会话带宽、图像质量或帧率等设置将会更新并改变为匹配该特定使用场景的设置。

要激活配置文件,你需要重启虚拟桌面机器。

管理配置文件

“管理配置文件”选项允许你调整特定配置文件的设置。你可以动态更改图像质量、帧率、带宽,并开启无损构建功能。你可以选择预设的配置文件或创建新的配置文件并保存。

清除配置文件设置

清除配置文件设置将清除配置文件设置并将其恢复为默认设置。

显示会话统计

“显示会话统计”选项会显示实时使用统计信息,例如带宽、每秒帧数、延迟和 CPU 利用率,帮助你了解特定虚拟桌面机器的资源消耗。点击此选项后,它会在桌面上显示,便于你进行监控。

显示会话健康

与会话统计选项类似,点击此选项后,您实际上是将其启用,并且它会出现在桌面上。它为 PCoIP 会话提供健康分数,帮助您了解可能存在的问题。例如,延迟分数可能较低,表明客户端与虚拟桌面之间的延迟较高。

如果您需要更深入的性能、容量规划和故障排除概述,值得安装 vRealize Operations for Horizon,它作为 VMware Horizon 企业版产品的一部分,或者考虑使用第三方用户体验监控工具,如 Liquidware Labs 的 Stratusphere UX。

Teradici 的 PCoIP 支持工具

除了 VMware 和其他第三方解决方案外,PCoIP 协议的发明者 Teradici 也提供了一些工具来帮助调优体验,包括网络带宽计算器和 PCoIP 统计视图器。

要访问工具,请访问以下链接:tinyurl.com/qacpzr4

您需要拥有 Teradici 支持帐户才能访问这些工具,您可以免费创建该帐户。

在下一部分,我们将着重介绍监控最终用户体验,以确保其运行在最佳状态。

监控最终用户体验

一旦您调整了桌面的性能,应该考虑部署最终用户体验监控解决方案,以确保初始体验和性能得以维持,并确保解决方案以最佳状态运行。

我们已经提到过 vRealize Operations for Horizon,但该工具更适合监控基础设施组件,而非最终用户体验。

更专注于最终用户体验监控的工具,比如 Liquidware 的 Stratusphere UX,会深入到最终用户的操作,例如应用程序启动时间、应用程序崩溃,并为您提供完整的登录过程分解。以下截图展示了 Stratusphere 仪表盘的一个示例:

Liquidware 解决方案的另一个优势是,Stratusphere UX 基于与评估阶段相同的解决方案。因此,它使您能够将初步基线评估数据(即起点)与生产环境进行对比,并轻松展示在迁移到新环境后所做的改进。

欲了解更多信息,请访问:www.liquidware.com/products/stratusphere-ux

总结

本章中,我们已了解如何开始微调虚拟桌面机器的性能和最终用户体验。

为此,我们已经介绍了如何准备 AD 并使用 Horizon View 特定的策略和管理模板,来定义虚拟桌面机器的行为,以及整体的最终用户体验。

然后,我们展示了每个独立的策略设置。

最后,我们查看了许多可以帮助调优过程的工具,以及如何监控用户体验。我们介绍了如 PCoIP 调优工具、Liquidware Stratusphere 及其 Spotcheck 功能等工具。

在下一章中,我们将探讨如何在 Horizon View 环境中使用 View Persona Management 和 VMware 的用户环境管理UEM)来管理用户配置文件。

第三章:高级功能、故障排除和环境升级

在第三章中,您将了解 Horizon 的额外功能;发布的应用和桌面,以及即时管理平台。然后,我们将介绍故障排除和升级现有环境的相关内容。

本节包括以下章节:

第十一章,使用 Horizon 7 交付发布的应用

第十二章,Horizon 客户端选项

第十三章,升级到新版本的 Horizon

第十四章,JMP 和 VMware Horizon 7 部署注意事项

第十五章,故障排除

第十六章,Horizon 7 的新特性

第十八章使用 Horizon 7 交付发布的桌面(在线章节)

第十二章:使用 Horizon 7 交付发布的应用程序

到目前为止,本书主要集中在虚拟桌面机器的交付上,但 Horizon View 还具有交付远程应用程序或称为发布应用程序的能力,以及基于会话的桌面,所有这些都可以通过同一个平台进行交付。在本章中,我们将深入探讨这一功能,它是 Horizon Advanced Edition 及以上版本的一部分,并查看 Horizon View 如何直接将应用程序发布到 Horizon View 客户端,而无需启动完整的虚拟桌面机器。

一个使用案例可能是呼叫中心工作人员,他们只需要使用几个不同的应用程序。从管理角度来看,直接提供他们所需的应用程序比提供完整的虚拟桌面要简单得多。另一个使用案例是能够通过 View 客户端在通常无法运行该应用程序的设备上启动应用程序。例如,你可以在 iPad 上通过 Horizon View 客户端运行“真实”版本的 Microsoft Word。

这一基础设施要求基于后台运行的 Microsoft 远程桌面服务RDS),而 Horizon View 充当中介,将用户与应用程序或桌面会话连接。由于它是基于 View 的,因此使用 View 协议(如 PCoIP 和 Blast)作为交付协议,利用这些协议所提供的所有功能,正如我们之前讨论的那样。

在本章中,我们将涵盖以下主题:

  • 架构概述

  • RDSH 规模化指南

  • 安装和配置 View 托管应用程序

  • 安装 Horizon View Agent 以支持 RDSH

  • 在 View 管理员中配置发布的应用程序

  • 在 Horizon View 中进行发布应用程序的负载均衡

架构概述

那么,架构是什么样的,当与虚拟桌面机器的调度进行比较时,托管应用程序功能是如何工作的?从架构的角度来看,交付托管应用程序的方式与虚拟桌面机器的管理和调度方式几乎相同。

Horizon View 充当中介,使用相同的连接服务器,但它不再调度运行在 ESXi 主机服务器上的虚拟桌面机器,而是调度运行在 Microsoft Windows 服务器上的应用程序会话,该服务器配置了 RDSH 角色,并安装了应用程序。

以下图表为你提供了交付托管应用程序的架构概览:

那么,托管应用程序功能是如何工作的呢?

首先,与连接到虚拟桌面机器类似,你需要启动 View 客户端并登录到连接服务器。输入你要连接的 View 连接服务器的详细信息(1),输入用户名和密码(2),然后通过 AD 进行身份验证(3)。

一旦身份验证通过,客户端向连接服务器发送 <get-launch-items> 请求,要求列出该用户所有有权限的应用程序会话、应用程序和桌面。响应中包含以下详细信息:

  • <app-sessions><desktops>,和 <applications>

  • 图标的绝对路径

客户端通过 HTTPS 获取任何尚未缓存的图标,使用连接服务器发送响应时提供的路径。

对图标统一资源标识符URIs)的访问需要进行身份验证。连接服务器会执行权限检查,只有当用户有权访问至少一个与图标相关的应用程序时,才会返回图标。对于没有任何图标的应用程序,客户端将提供一个默认图标。

然后,一组有权限的桌面和应用程序池在 View 客户端中显示给最终用户(4)。

最终用户随后双击某个应用程序(或桌面)以启动它(5),建立连接,应用程序在新窗口中打开(6)。

在下一节中,我们将深入探讨连接过程中的发生情况,以便将用户连接到他们请求的应用程序或桌面会话。

应用程序连接顺序

在本节中,我们将连接过程拆分为三个独立的部分,展示当用户启动应用程序时发生的流程。

该过程从最终用户双击启动应用程序开始,并在下图中进行了说明:

现在,我们有一个通过 View 客户端向连接服务器请求启动应用程序的用户。

连接过程的下一阶段是连接服务器与安装在 RDS 主机服务器上的 Horizon Agent 进行通信。

下图说明了该过程的下一部分:

连接过程的下一步是建立与PCoIP 安全网关服务器PSG)的安全连接。

通过与 PSG 通信,RDS 服务器上的 View 代理设置了一个隧道。然后,这个连接的详细信息通过连接服务器转发回客户端。这基本上与连接到托管在 ESXi 主机服务器上的虚拟桌面机器时的过程相同。

该过程在下图中进行了说明,并展示了流程的最后一部分,即将最终用户登录并将其连接到他们请求的应用程序:

我们已经深入探讨了将最终用户连接到远程应用程序的过程。在下一节中,我们将重点介绍 RDS 角色在此环境中的一些具体内容,从尺寸指南开始。

RDSH 尺寸指南

与虚拟桌面机器的 View 大小配置一样,配置 RDSH 服务器的正确规格也至关重要,类似于我们考虑桌面大小配置的方式,我们将查看不同的用户类型。

VMware 对用户工作负载和内存需求的建议显示在下表中:

对于每台 RDSH 服务器的总内存,VMware 建议将配置为 RDSH 服务器的虚拟机分配 64 GB 内存,至于 CPU 要求,VMware 建议为 RDSH 角色创建虚拟服务器,并为每台服务器配置四个 vCPU。确保不要过度分配核心数。

所以,举个例子,如果您有一台配置为 64 GB 内存的虚拟机运行 RDSH 服务器,并且上面托管了大量用户,您将能够在该服务器上最多托管 64 个会话。

对于硬件配置,假设您有一台物理 ESXi 主机服务器,配置了一个 12 核心的 2 插槽 CPU,总共提供 24 个核心。

这将允许最多 6 台 RDSH 服务器,因为我们将为每台有 4 个核心的虚拟机配置 RDSH 角色(每台服务器 24 个核心/每台服务器 4 个核心)。这意味着物理服务器的总内存也需要配置为 384 GB(6 台 RDSH 主机服务器,每台 64 GB)。

这些数字仅作为指导,并基于一些 VMware 推荐的最佳实践。最好对您的环境进行评估,以确定最佳配置。

在接下来的章节中,我们将安装并配置视图托管应用程序功能。

安装和配置视图托管应用程序

现在我们将开始安装过程,从配置将用于托管远程应用程序的服务器开始,方法是向其添加 RDSH 角色。在示例实验室中,已经有一台名为RDSH-Apps的 Windows Server 2016 服务器准备好执行此角色。

安装和配置过程非常直接,可以通过以下示意图来总结:

在接下来的章节中,我们将更详细地介绍这一过程,从配置 RDSH 角色开始。

配置 RDS 服务器角色

我们将要做的第一件事是配置 RDSH 服务器角色,然后配置此服务器来提供远程应用程序。在示例实验室中,我们将配置的服务器名为RDSH-Apps。要配置 RDSH 角色,请执行以下步骤:

  1. 打开到服务器的控制台,然后在服务器管理器和仪表板屏幕中,点击“添加角色和功能” (1),如下图所示:

  1. 您将看到的第一个屏幕是“开始之前”屏幕,如下图所示:

  1. 点击“下一步 >”继续。

  2. 现在你将看到选择安装类型屏幕,如下图所示:

  1. 点击远程桌面服务安装单选按钮,然后点击“下一步 >”继续。

  2. 现在你将看到选择部署类型屏幕,如下图所示:

  1. 点击快速启动单选按钮,然后点击“下一步 >”继续。

  2. 现在你将看到选择部署场景o屏幕,如下图所示:

  1. 点击基于会话的桌面部署单选按钮,然后点击“下一步 >”继续。

  2. 现在你将看到选择服务器屏幕,如下图所示:

  1. 在服务器池框中,点击并高亮你想安装 RDSH 角色的服务器,并点击箭头将其添加到已选择框中。在示例实验室中,这是名为rdsh-apps.pvolab.com的服务器。

  2. 点击“下一步 >”继续。

  3. 现在你将看到确认选择屏幕,如下图所示:

  1. 检查将要安装的服务,然后勾选“如果需要,自动重启目标服务器”复选框。

  2. 点击部署以开始安装。

  3. 现在你将看到安装的进度,如下图所示:

  1. 在安装过程中,服务器将重新启动。重新启动后,重新登录并再次启动服务器管理器以监控其余的安装过程。

  2. 安装完成后,从服务器管理器仪表盘你现在会看到远程桌面服务角色已添加,如下图所示:

你现在已经成功安装了 RDS 角色。

你需要在此服务器上添加并配置远程桌面授权角色。

在接下来的部分,我们将配置一些示例应用程序,这些应用程序将作为远程应用程序提供。

使用标准远程应用程序进行测试

我们将要为基于会话的远程访问配置的第一个应用程序是那些集成到 Windows 操作系统中的应用程序,并且在创建 RDSH 服务器角色时默认配置。这些包括计算器和记事本等应用程序。

我们将通过首先检查这些应用程序是否已配置,然后测试我们是否可以远程访问它们,来测试这些应用程序是否作为远程应用程序工作,之后再配置 Horizon View 组件和任何额外的应用程序:

  1. 在服务器管理器仪表盘屏幕中,点击远程桌面服务(1),如图所示:

  1. 你将看到配置了 RDSH 角色的服务器列表,如下图所示:

  1. 点击突出显示RDSH_APPS服务器,然后点击快速会话集合(3)。

  2. 你将看到“快速会话集合”和“远程应用程序程序”(4)框,如下图所示:

这将显示 WordPad、画图和计算器作为可用的远程应用程序。

既然标准应用程序已经作为远程会话提供给最终用户,我们将尝试通过 RD Web Access Web 门户连接,以测试一切是否正常,然后继续配置。为此,请按照以下步骤操作:

  1. 从你的桌面或服务器本身打开浏览器。最好从远程桌面进行测试,而不是直接从服务器进行测试。

  2. 在浏览器中,输入 RDSH 服务器的 URL。在本实验室中,这个地址是 https://rdsh-apps.pvolab.com/rdweb

  3. 你将看到登录界面,如下图所示:

  1. 在“域\用户名”框中,输入格式为“域\用户名”的用户名。所以,在这个例子中,我们使用pvolab\administrator格式作为管理员登录。然后输入密码。

  2. 现在点击“登录”按钮。你将看到以下“工作资源”网页,显示可用的应用程序:

为了测试应用程序是否启动,双击它。在这个例子中,我们将启动计算器。计算器应该能够成功启动,如下图所示:

现在一切正常,应用程序可以发布和启动,在下一节中,我们将添加一些更多的应用程序。

安装额外的应用程序

在本节中,我们将安装一些额外的远程访问应用程序,从 Microsoft Office 2016 开始。

安装应用程序几乎和在任何其他 Windows 操作系统上安装应用程序一样;但是,由于这是远程会话主机服务器,因此有一些细微的差别。我们将简要介绍这个过程,如以下步骤所示:

  1. 由于我们将要安装 Microsoft Office 2016,首先需要做的是挂载包含安装程序的 ISO 镜像,如下图所示:

现在我们可以开始实际的安装过程了。

  1. 打开控制台并连接到你想要安装应用程序的 RDSH 服务器,然后打开控制面板如下面的截图所示:

  1. 点击“程序”。现在你将看到“程序”对话框,如下图所示:

  1. 点击“在远程桌面上安装应用程序...”。

  2. 现在你将看到“从软盘或 CD-ROM 安装程序”对话框,如下图所示:

在我们继续之前,我们将讨论如何在 RDSH 服务器上安装应用程序。在这个对话框中,突出了一个叫做RD-Install 模式的东西;那么,这是什么意思呢?

要在 RDSH 主机服务器上安装应用程序,需要将其切换到一种名为RD-Install的特殊安装模式,以确保应用程序能够在多用户环境中运行。

一旦你在 RDSH 服务器上安装了应用程序,服务器需要切换回所谓的执行模式,即RD-Execute,以便用户可以远程连接到服务器及其上运行的应用程序。

这也可以通过命令行完成,使用以下命令:

change user /install change user /execute

你可以使用以下命令检查 RDSH 服务器的当前安装模式:

change user /query

安装应用程序最简单的方法是通过控制面板中的“程序”选项,这是我们在本例中将使用的方法。该选项通过自动将服务器切换到 RD-Install 模式、安装程序,并在完成后将服务器切换回 RD-Execute 模式,带你完成整个安装过程。让我们继续安装:

  1. 点击“下一步 >”开始安装。

  2. 现在你将看到“运行安装程序”对话框,如下图所示:

  1. 点击“浏览...”按钮,然后导航到你想要安装的应用程序的安装程序。在示例实验室中,这个安装程序是我们在本节开始时挂载的 ISO 镜像中的setup.exe文件,安装的是 Microsoft Office 2016。

  2. 现在点击“下一步 >”继续。

  3. 你首先看到的是“完成管理员安装”对话框,如下图所示:

现在忽略这个对话框,确保此时不要点击完成按钮。你需要先完成应用程序的安装。

  1. Office 2016 的安装现在将开始,你应该按照通常的方式安装 Office。

  2. 安装完成后,返回“完成管理员安装”框并点击“完成”按钮。

现在 Microsoft Office 2016 已经安装在 RDSH 服务器上,你需要返回并配置哪些单个 Office 套件应用程序将作为远程应用程序提供给用户。为此,请执行以下步骤:

  1. 在“服务器管理器”仪表板屏幕上,点击“远程桌面服务”。

  2. 高亮选择你想要配置的 RDSH 服务器,然后点击“QuickSessionCollection”(1),如下图所示:

    • 向下滚动到 REMOTEAPP PROGRAMS 对话框,然后点击屏幕右上角任务按钮上的下拉箭头,接着点击发布 RemoteApp 程序 (4)。

    • 现在您将看到选择 RemoteApp 程序配置屏幕,如下图所示:

  1. 在这里,您可以选择要发布的应用程序,并使其可以远程访问给终端用户。

  2. 勾选您要添加的应用程序旁边的复选框 (3)。在示例实验室中,我们将勾选以下应用程序:

    • Excel 2016

    • OneNote 2016

    • Outlook 2016

    • PowerPoint 2016

    • Publisher 2016

    • Word 2016

  3. 在这里,您可以选择要发布的应用程序,并使其可以远程访问给终端用户。

  4. 选择您要发布的所有应用程序后,点击“下一步 >”按钮。

  5. 您将看到您选择的应用程序的确认框,如下图所示:

  1. 现在点击“发布”按钮。

  2. 然后您将看到一个进度条,显示应用程序发布的进度,如下图所示:

  1. 完成后,您将看到完成屏幕,如下图所示,显示已成功发布的应用程序:

  1. 点击“关闭”按钮以完成发布过程。

如前所述,我们将测试应用程序是否可以通过 Web 访问门户访问。打开浏览器并访问以下地址:https://rdsh-apps.pvolab.com/rdweb

使用管理员账户登录到门户。

您将看到来自 RD Web 访问门户的以下截图,显示新发布的 Office 2016 应用程序:

如您所见,新发布的 Office 应用程序已对终端用户可用。双击其中一个程序,测试它是否能启动,确认正常运行后,点击“登出”并关闭网页。

在下一部分,我们将安装 Horizon Agent 到 RDSH 服务器。

安装 Horizon Agent 到 RDSH

在接下来的步骤中,我们将把 Horizon View Agent 安装到 RDSH 服务器上。该代理与安装在虚拟桌面机器上的代理完全相同,并将 RDSH 注册到 Horizon Connection Server 上。安装代理,请执行以下步骤:

  1. 打开一个远程控制台,连接到运行应用程序的 RDSH 服务器,进入共享的软件文件夹,然后找到代理安装程序,如下图所示:

  1. 双击启动 VMware-Horizon-Agent-x86_64-7.6.0-9539447。文件名末尾的七位数字表示构建版本,因此根据你使用的构建版本,数字可能不同。

  2. 你将看到“欢迎使用 VMware Horizon View Agent 安装向导”对话框,如下图所示:

  1. 点击“下一步 >”按钮开始安装。

  2. 现在你将看到许可协议对话框,如下图所示:

  1. 选中“我接受许可协议中的条款”的单选按钮,然后点击“下一步 >”按钮继续。

  2. 现在你将看到网络协议配置界面,如下图所示:

  1. 点击 IPv4,然后点击“下一步 >”按钮继续安装。

  2. 你将看到自定义设置界面,如下图所示:

在示例实验中,我们将接受默认选项;不过,如果需要,你可以选择安装 3D RDSH、USB 重定向、View Composer 和 Flash 重定向选项。

如你所见,可以作为 View Agent 安装的一部分安装许多功能。它们列在下面:

  • Core:安装 RDSH 所需的核心功能

  • 3D RDSH:启用 RDSH 会话中的 3D 加速

  • USB 重定向:将 USB 设备从客户端重定向到 RDSH 会话

  • VMware Horizon View Composer Agent:允许使用链接克隆技术从单个父图像构建 RDS 主机服务器,从而轻松部署 RDS 服务器农场

  • 客户端重定向:允许客户端与 RDS 会话共享本地驱动器(在使用 IPv6 时不支持)

  • 虚拟打印:允许从 RDS 会话打印

  • vRealize Operations Desktop Agent:允许部署管理代理,以便使用 vRealize 监控 RDS 会话

  • Flash 重定向:启用 RDS 会话中的 Flash 重定向功能(请注意,在此版本的 Horizon View 中,这是一个技术预览功能)

  1. 点击“下一步 >”按钮继续安装。

  2. 现在你将看到与 Horizon 7 连接服务器注册配置界面,在这里我们将配置 Horizon Agent 以与连接服务器通信。这允许连接服务器从 RemoteApp 目录读取发布的应用程序列表,并允许你在 View 中创建应用程序池。

  3. 在主机名或 IP 地址框中,输入连接服务器的名称。在示例中,这是 hzn7-cs1.pvolab.com

  4. 在身份验证部分,点击“指定管理员凭据”的单选按钮,然后在用户名框中输入你希望用来连接连接服务器的用户帐户。在示例实验中,这是 pvolab\administrator。

确保使用 Domain\user 格式输入用户名,并且账户具有访问连接服务器的正确权限。通常情况下,您会使用服务账户来进行此操作。

  1. 在“密码”框中,输入该账户的密码,如下图所示:

  1. 点击“下一步 >”按钮继续安装。

  2. 现在,您将看到“准备安装程序”界面。点击“安装”按钮开始安装过程。

  3. 安装成功后,您将看到“安装完成”界面。

  4. 点击“完成”退出安装。

  5. 然后,系统会提示您重启服务器。点击“是”以重启。

安装视图代理失败的最常见原因之一是 RDSH 服务器的配置问题。通常,运行 RDSH 角色的 Windows 服务器上没有加载声音驱动程序。如果是这种情况,则代理的安装会失败并自动回滚。如果发生这种情况,建议首先检查这一点。

我们现在已经完成了 Horizon View 配置的第一部分。在接下来的步骤中,我们将把注意力转向“查看管理员”,并配置应用程序池。

在“查看管理员”中配置已发布的应用程序

安装和配置过程的下一阶段是通过“查看管理员”控制台进行的,和标准的 View 设置一样,涉及到创建池和授权。然而,这次我们将配置的是应用程序池,而不是为虚拟桌面机器创建池。

在执行这些操作之前,我们需要做的第一件事是设置一个包含新建 RDSH 服务器的 Farm。请按照以下步骤操作:

  1. 打开浏览器并连接到“查看管理员”。在我们的示例实验室中,“查看管理员”的地址是https://hzn7-cs1.pvolab.com/admin/

  2. 使用管理员账户和密码登录到“查看管理员”。

  3. 现在,您将看到“查看管理员仪表板”,如下图所示:

  1. 从左侧的库存面板中展开“资源”箭头,然后点击“农场”(1)。

  2. 现在点击“添加...”按钮(2)。

  3. 现在,您将看到“添加 Farm”配置界面,如下图所示:

  1. 在“类型”部分,点击“手动 Farm”单选按钮。

  2. 点击“下一步 >”按钮继续。

  3. 现在,您将看到“标识和设置”配置界面,如下图所示:

您需要填写如下信息:

  1. 在“ID”框中,输入一个 ID,用于 View 识别这个 Farm。在示例实验室中,它被命名为Horizon-Published-Apps

您不能为 ID 使用空格,只能使用字母(大写和小写)、数字(0-9),以及(减号)或*_ *(下划线)字符。

  1. 在“描述”框中,输入农场的可选描述,然后从“访问组”下拉菜单中选择一个访问组(如果有)。

  2. 接下来,在“农场设置”下,将默认显示协议设置为 PCoIP,并在“允许用户选择协议”下拉菜单中选择“是”。

  3. 在预启动会话超时设置中,保持默认设置为10分钟。预启动允许应用程序在用户点击启动之前提前加载。此选项配置一个超时设置。

  4. 在空闲会话超时输入一个时间,指定在未使用时会话应超时的时长,然后在超时发生时框中,从下拉菜单中选择超时后发生的操作。在示例实验中,这被设置为断开用户与会话的连接。

  5. 下一个选项是是否注销断开连接的会话。此选项将注销任何断开连接的会话。在示例实验中,此选项设置为永不发生。

  6. 勾选“启用”框,以允许通过 HTML 访问此农场中的桌面和应用程序。

  7. 最后,勾选“允许会话协作”框。此功能仅在使用 Blast 协议连接时有效。

  8. 完成此屏幕上的配置选项后,点击“下一步 >”按钮继续。

  9. 现在您将看到“选择 RDS 主机”配置屏幕,在这里您可以选择哪些主机将参与此农场,如下图所示:

  1. 点击并选择rdsh-apps.pvolab.com服务器条目,然后点击“下一步 >”按钮。

  2. 现在您将看到“准备完成”屏幕,如下图所示:

  1. 检查您输入的设置是否正确,然后点击“完成”按钮。

您现在已经成功创建了一个新的托管应用程序农场配置,如下图所示:

您还将在 View 管理员仪表板的“系统健康”框中的 RDS 农场部分看到,农场名称“ Horizon-Published-Apps”和服务器名称rdsh-apps.pvolab.com现已列出,并且有一个绿色框显示它们正在正常工作:

在下一部分,我们将创建一个应用程序池。

为发布的应用程序创建应用程序池

在本节中,我们将创建一个应用程序池。这允许您创建一个包含多个不同应用程序的池。例如,您可能希望创建应用程序池以反映不同的部门。要配置应用程序池,请执行以下步骤:

  1. 在 View 管理员中,从左侧的“库存”面板中展开“目录”箭头,然后点击“应用程序池”(1),如下图所示:

  1. 现在点击“添加...”按钮 (2)。

  2. 现在您将看到“添加应用程序池”配置屏幕,如下图所示:

  1. 从“选择一个 RDS farm”下拉菜单中,选择我们之前为发布的应用程序创建的 farm。在示例实验中,从菜单中选择名为 Horizon-Published-Apps 的 farm。

  2. 接下来,点击“选择已安装的应用程序”单选框。这将自动列出该 RDSH 服务器上安装的所有应用程序。您还可以手动添加一个应用程序池。

  3. 从应用程序列表中,勾选您想要添加到应用程序池的应用程序。在示例中,我们选择了 PowerPoint 2016 (3) 和 Word 2016 (4),以及计算器、画图、Excel 2016、Publisher 2016 和 Outlook 2016。

  4. 然后,您可以选择勾选“预启动”框。这意味着应用程序池中的应用程序将在最终用户点击它们时提前启动,以加快启动速度。

  5. 下一个选项是“连接服务器限制”,它允许您配置可以连接的连接服务器标签。

  6. 最后,您可以配置类别文件夹,这允许您在最终用户设备上添加快捷方式。

  7. 当您选择了所有必需的应用程序后,点击“下一步 >”按钮以继续。

  8. 现在您将看到编辑 ID显示名称屏幕。在这里,您可以选择编辑应用程序的 ID 和显示名称,如果需要的话。如下图所示:

  1. 同时,勾选“在此向导完成后授权用户”框,以便自动启动用户授权配置,我们将在下一节完成此操作。

  2. 点击“完成”按钮以完成配置。然后您将看到应用程序池已经创建。

现在您的应用程序池已经设置完毕并准备就绪,下一步是授权最终用户访问该池并允许他们启动应用程序。

授权用户到应用程序池

在前一节中,我们勾选了“在此向导完成后授权用户”框,这意味着您现在将看到“添加授权”配置屏幕,如下图所示:

现在执行以下步骤来添加授权:

  1. 点击“添加...”按钮 (1)。

  2. 现在,您将看到“查找用户或组”配置屏幕,如下图所示:

  1. 在“类型”部分,确保勾选“用户”框 (2)。

  2. 从“域”下拉菜单 (3) 中,选择包含您想要授权的用户的域。在示例实验中,这是 pvolab.com 域。

  3. 在姓名/用户名框(4)中,输入你要授权的用户的详细信息。在示例实验室中,我们将授权名为Peter von Oven的用户,因此输入用户名的第一部分,在本例中是peter,然后点击查找按钮(5)在域中搜索该用户。

  4. 找到后,用户及其详细信息将显示在表格中。通过点击表格中的条目来选择用户,条目会被高亮显示并选中用户。

  5. 点击“确定”继续。

  6. 你现在将返回到应用池屏幕,显示已发布的应用程序,如下图所示:

作为最终检查,我们将启动 Horizon 客户端,使用授权用户登录,然后通过 Horizon 客户端启动其中一个发布的应用程序,以测试一切是否正常工作。

确保你使用的是最新版本的 Horizon 客户端,版本 3.0 及以上。旧版本仍然可以与 VDI 桌面一起使用,但无法显示发布的应用程序。

为了测试功能,完成以下步骤:

  1. 启动 VMware Horizon 客户端,并确保你已添加了连接服务器的地址。我们将在第十二章中介绍 Horizon 客户端,Horizon 客户端选项

  2. 在示例实验室中,我们正在连接到hzn7-cs1.pvolab.com连接服务器,如下图所示:

  1. 双击 VMware Horizon 客户端中的hzn7-cs1.pvolab.com图标。

  2. 然后你将看到登录框,如下图所示:

  1. 在用户名框中,输入被授权访问应用池的用户的用户名。在示例实验室中,用户Peter von Oven的用户名是pvo

  2. 在密码框中,输入用户名的密码。

  3. 在域框中,确保从下拉菜单中选择了正确的域。在示例实验室中,这是 PVOLAB 域。

  4. 现在点击登录框。

  5. 认证成功后,Horizon 客户端将连接到应用池,并显示可用的应用程序,如下图所示:

  1. 双击任何一个应用程序,确保它们能正确启动。

现在你已经成功安装、配置并交付了一个 View 托管的应用程序环境。在本例中,我们部署了一个 RDSH 服务器来托管远程应用程序;然而,在生产环境中,你更有可能有多个服务器在一个农场中。

在本章的最后部分,我们将介绍如何在一个服务器农场中,将会话连接负载均衡到多个主机服务器。

Horizon View 中的负载均衡发布应用程序

接下来,我们将介绍的是 Connection Broker 如何决定农场中正在运行请求的应用程序的 RDS 主机服务器将实际交付该应用程序。配置负载均衡有两种选择。

对于第一个选项,从 Horizon View 的角度来看,负载均衡并没有什么复杂的科学原理。它完全基于任何给定的 RDSH 服务器上有多少个空闲会话。因此,这意味着当用户登录并启动一个已发布的应用程序时,应用程序会从拥有最多空闲会话的服务器传送;也就是说,选择最不忙碌的服务器。

下面的图示展示了这一点:

第一个选项运行良好,但它如何知道每个会话消耗了多少资源呢?某个特定的主机可能有足够的容量来容纳更多的会话,基于它有多少空闲的会话,但如果它已经托管的会话消耗了大量资源,那该怎么办?

这时,第二个选项就派上用场了,因为它使用更深入的信息来放置会话,这些信息是基于每个主机的 CPU 和内存利用率,而不是空闲会话的数量。

要启用这种负载均衡方法,你需要完成一些手动步骤,我们现在将一一说明。

首先,这种方法是基于执行脚本的,因此你需要确保这些脚本存储在农场中的每个 RDS 主机服务器上。你可以创建自己的脚本;不过,作为 View Agent 安装的一部分,有几个示例脚本随之提供。一旦 View Agent 安装完成(本章前面已介绍过 View Agent 的安装),你会在以下文件夹中找到它们:

C:\Program Files\VMware\VMware View\Agent\scripts

然后,你将看到两个示例脚本,如下图所示:

正如名称所示,一个脚本监控 CPU 利用率,另一个监控内存利用率。每个脚本监控其相应的组件,并返回以下值来决定会话的放置:

  • 0: 对于利用率 > 90%

  • 1: 对于利用率 > 75%

  • 2: 对于利用率 > 25%

  • 3: 对于利用率 > 25%

现在让我们通过完成以下任务来配置 CPU 脚本用于示例实验室。第一个任务是启用 View Script Host 服务。为此,请按照以下步骤操作:

  1. 打开一个控制台连接到 RDSH 主机服务器 RDSH-Apps,并从服务器的桌面启动 RUN 命令。

  2. 打开 框中,输入 services.msc 并点击确定以启动服务管理界面。现在,你将看到 服务 窗口,如下图所示:

  1. 向下滚动,直到找到 VMware Horizon View Script Host 条目。点击它以高亮显示,然后右键点击。

  2. 在现在显示的上下文菜单中,点击属性。

  3. 现在你将看到 VMware Horizon View 脚本主机属性屏幕,如以下截图所示:

  1. 在启动类型框中,从下拉菜单中选择自动1),以便此服务在服务器启动时自动启动。

  2. 接下来,点击应用按钮。

  3. 最后,点击启动按钮 (2) 以启动服务。你现在应该看到服务正在运行,如以下截图所示:

完成后,关闭服务管理屏幕。下一步是将脚本详细信息添加到服务器的注册表中。为此,请执行以下步骤:

  1. 打开连接到 RDSH 主机服务器 RDSH-Apps 的控制台,并从服务器桌面启动RUN命令。

  2. 打开框中,输入regedit并点击确定,启动注册表编辑器。

  3. 注册表编辑器启动后,导航到以下路径:

  1. 你现在将看到以下屏幕:

  1. 现在右键单击右侧窗格,在显示的上下文菜单中点击“新建” (3),然后选择字符串值 (4) 选项,如以下截图所示:

  1. 你现在可以输入一个新的字符串值。在示例实验室中,这个值被称为cpuutilisation (5),以反映将要运行的脚本,如以下截图所示:

  1. 接下来,你需要编辑新创建的字符串值并输入一个值。

  2. 为此,突出显示cpuutilisation条目 (6),右键单击并从上下文菜单中选择修改… (7),如以下截图所示:

  1. 你现在将看到编辑字符串框,如以下截图所示:

  1. 在值数据框中)输入脚本路径。在示例实验室中,该路径为C:\Program Files\VMware\VMware View\Agent\scripts\cpuutilisation.vbs

  2. 点击确定。

  3. 你现在将看到脚本已被添加,如以下截图所示:

  1. 退出注册表编辑器。

由于你已更改 VMware Horizon Agent 的属性,你需要重新启动该服务,以使更改生效。为此,请执行以下步骤:

  1. 启动RUN命令。

  2. 打开框中,输入service.msc并点击确定,启动服务管理屏幕,如以下截图所示:

  1. 向下滚动,直到找到 VMware Horizon View Agent 的条目 (8)。

  2. 单击它以选择,右键点击,然后从上下文菜单中选择重启选项(9)来重新启动服务。

  3. 一旦服务重新启动,您可以关闭服务管理界面。

您现在已经完成了负载均衡的配置步骤,负载均衡将根据 CPU 使用情况进行计算。您可以通过执行以下操作来检查它是否正常工作:

  1. 从 View 管理员仪表板,导航到系统健康框。

  2. 然后展开 RDS 农场的选项,并选择 Horizon-Published-Apps 的农场。现在点击RDSH-Apps.pvolab.com服务器。您将看到以下屏幕:

您会看到在框的底部,现在显示了“服务器负载”选项。这个负载是通过脚本进行测量的,正如您所看到的,目前 CPU 负载很轻,新的会话可以由此服务器提供资源。

单击“确定”以关闭该框。现在您已经成功配置了可选的负载均衡功能。

总结

在本章中,我们讨论了如何通过 Horizon 发布应用程序功能提供远程/发布的应用程序。我们首先介绍了架构,并深入探讨了它是如何工作的,然后逐步讲解了 Microsoft RDSH 组件和 Horizon View 组件的安装与配置过程,这些组件是实现该功能所需的。

接着,我们配置了一个 RDS 农场和一个应用程序池,然后为测试用户分配了该池的权限。最后,为了检查一切是否正常工作,我们以该用户身份登录并通过启动远程应用程序来测试环境。

在最后一部分,我们讨论了如何在发布的应用程序环境中配置负载均衡。

在下一章中,我们将讨论如何将相同的方法应用于提供基于会话或发布的桌面。

第十三章:Horizon 客户端选项

在本章中,我们将讨论终端用户如何使用各种可用的 Horizon 客户端选项连接到他们的虚拟桌面和已发布的应用程序。我们还将介绍不同类型的基于硬件的终端设备。客户端的任务是接收并显示虚拟桌面机器和已发布应用程序的截图,并将键盘输入和鼠标移动发送回去。这些是从终端用户的客户端设备发送到网络,并回传到虚拟桌面会话的键盘输入和鼠标操作。

我们将讨论每个可用的客户端选项,并根据实际使用场景说明为何选择某一个而非另一个。所以,让我们首先看看基于软件的客户端选项。

在本章中,我们将讨论以下主题:

  • VMware Horizon 客户端

  • 硬件客户端

  • 使用浏览器访问桌面

VMware Horizon 客户端

为了获得最佳的用户体验,用户应通过一款名为 Horizon View Client 的软件从客户端设备连接到他们的虚拟桌面机器。Horizon View Client 安装在本地客户端设备上,使用户能够与 View 连接服务器通信,从而进行身份验证,选择他们有权访问的桌面池中的桌面或应用程序,然后建立客户端与虚拟桌面机器之间的连接。

在 Horizon 的更新版本中,软件客户端已从主要的 View 版本中解耦,这意味着客户端下载会更频繁地更新,您不需要等到下一个 View 版本发布。这反映了新设备进入市场的速度。

根据您选择使用的终端设备,有多种不同的平台版本可用。在本节中,我们将为您提供每个可用版本的高级概述,并介绍任何特定的要求。

您可以通过访问 www.vmware.com/go/viewclients 下载不同的 Horizon 客户端。

Horizon Windows 客户端

Horizon Windows 客户端允许您从基于 Windows 的设备访问您的 Windows 虚拟桌面和 View 托管的应用程序,并通过 LAN 或 WAN 连接提供最佳的用户体验。

下图显示了 Horizon 客户端 5.0 版 for Windows,现在它具有与 Workspace ONE 相同的外观和感觉,已连接到示例实验室。您可以看到有两个桌面池可用:一个用于已发布的桌面,另一个用于 Windows 7 虚拟桌面机器,以及若干已发布的应用程序:

最新版本的 Horizon Windows 客户端具有以下新功能:

  • 支持最多六个显示器:它允许虚拟桌面机器和已发布的应用程序跨六个屏幕运行。

  • 在多会话模式下使用已发布的应用程序:当启用多会话模式时,您可以在使用不同终端设备和客户端登录到连接服务器时,使用该已发布应用程序的多个会话。例如,如果在客户端 A 上以多会话模式打开已发布的应用程序,然后在客户端 B 上打开完全相同的已发布应用程序,则已发布的应用程序在客户端 A 上保持打开状态,而在客户端 B 上打开一个新的会话。

  • 禁用 TLS v1.0:TLS v1.0 不再受支持。

  • 剪贴板审计功能增强:Horizon Agent 可以配置为记录虚拟桌面机中复制和粘贴活动的信息。Horizon 管理员现在可以配置剪贴板审计功能,以记录从客户端机器复制到代理机器的数据、从代理机器复制到客户端机器的数据,或在两个方向上复制的数据的信息。此功能需要 Horizon Agent 7.7。

  • 选择特定显示器以显示已发布的应用程序:如果您有三台或更多显示器,您可以选择在哪些显示器上显示已发布的应用程序。

  • 地理位置重定向功能增强:现在,您可以使用 Google Chrome 中的地理位置重定向功能。要使用此功能,Horizon 管理员必须在代理机器上启用 VMware Horizon Geolocation Redirection Chrome 插件。

  • VMware 虚拟打印重定向功能:使用 VMware 虚拟打印重定向功能,您可以从远程桌面或已发布应用程序打印到连接到客户端系统的虚拟打印机或 USB 打印机。此功能需要 Horizon Agent 7.7。

  • 拖放文件和文件夹:您可以在客户端系统和 Windows 远程桌面及已发布应用程序之间拖放文件和文件夹。此功能需要 Horizon Agent 7.7。

  • 共享 Linux 远程桌面:现在,您可以使用会话协作功能共享 Linux 远程桌面。

  • 支持物理 RDS 主机上的虚拟打印:现在,已支持在物理 RDS 主机服务器上为已发布桌面和已发布应用程序提供虚拟打印功能。此功能需要 Horizon Agent 7.7。

  • 允许 VMware Blast 使用高效视频解码(HEVC):当您允许 VMware Blast 会话使用 HEVC 时,如果客户端机器具有支持 HEVC 解码的 GPU,性能和图像质量将得到改善。

有关最新 Horizon Windows 客户端的功能,您可以通过以下链接阅读发行说明:docs.vmware.com/en/VMware-Horizon-Client-for-Windows/index.html

最新的 Horizon 客户端 4.10 版本需要以下 Windows 操作系统:

  • 32 位或 64 位 Windows 10,家庭版,专业版,企业版,或 物联网 (IoT) 企业版(最高支持 1809)

  • 32 位或 64 位 Windows 8、8.1 或 8.1 专业版、企业版或行业嵌入版

  • 32 位或 64 位 Windows 7 SP1、家庭版、企业版、旗舰版或专业版

  • Windows Server 2008 R2

  • Windows 2012 服务器 R2

还有一个专为 Windows 10 通用 Windows 平台UWP)设计的 Horizon 客户端版本。

本版本的 Horizon 客户端支持 Horizon 6 版本 6.2.x 及以后的最新维护版本。

Horizon 客户端需要有效的 SSL 证书才能连接到 View 连接服务器。在输入连接服务器地址时,您还需要输入完全限定域名FQDN),而不是使用其 IP 地址。

在下一节中,我们将介绍 Android 代理。

Horizon Android 客户端

Android 设备上的 Horizon 客户端,与 Windows 客户端一样,允许您通过 Android 平板或智能手机设备访问 Windows 虚拟桌面和已发布的应用程序。

客户端软件还可以从 Google Play 商店下载,网址为 play.google.com/store/apps/details?id=com.vmware.view.client.android&hl=en-GB

以下屏幕截图展示了 Horizon Android 客户端。在此,您可以看到在 Android 智能手机上运行的登录界面。中间部分展示了一个 Windows 10 VDI 桌面,以及 Unity Touch 侧边栏,让您可以访问设置、鼠标和断开连接等功能。

Unity Touch 侧边栏使浏览、搜索、打开和关闭 Windows 应用程序及文件变得更加简单。它还帮助您在运行的应用程序之间切换。所有这些都可以在不使用 Windows 开始菜单或任务栏的情况下完成:

Horizon 客户端支持原生 Android 手势,以便快速、轻松地在桌面上进行导航。当在 Windows 桌面上工作时,完整屏幕触控板功能允许您在屏幕上的任何位置触摸以移动鼠标指针。

Horizon Android 客户端的最新版本具有以下新功能:

  • 它拥有全新的用户界面:外观和感觉已与 Workspace ONE 对齐,包括新的 Horizon 标志。

  • 在多会话模式下使用已发布的应用程序:当为已发布的应用程序启用多会话模式时,您可以在使用不同终端设备和客户端登录到连接服务器时使用该特定应用程序的多个会话。例如,如果您在客户端 A 上以多会话模式打开一个已发布的应用程序,然后在客户端 B 上打开完全相同的已发布应用程序,则该应用程序在客户端 A 上保持打开状态,并且在客户端 B 上会打开一个新的会话。

  • 创建用于智能卡身份验证的虚拟智能卡:您可以创建一个虚拟智能卡,在登录服务器并连接到远程桌面时使用。使用虚拟智能卡时,无需将传统的智能卡读卡器连接到客户端设备。一个虚拟智能卡可以保存多个证书。

  • TLS v1.0 已禁用:TLS v1.0 不再受支持。

欲了解更多关于最新 Horizon Android Client 功能的信息,您可以阅读以下链接中的发布说明:docs.vmware.com/en/VMware-Horizon-Client-for-Android/index.html

最新的 Horizon Client 版本 5.0 需要以下 Android 版本:

  • Android 5.0(Lollipop)

  • Android 6.0(Marshmallow)

  • Android 7.0 和 7.1(Nougat)

  • Android 8.0 和 8.1(Oreo)

  • Android 9.0(Pie)

它还可以在 ARM 和 x86 架构上运行。在接下来的部分中,我们将介绍 iOS 客户端。

iOS 版 Horizon Client

Horizon Client for iOS 允许您从 iOS 设备(如 iPhone 或 iPad)访问 Windows 虚拟桌面。

以下截图展示了 iOS Horizon Client 5.0:

iPad 和 iPhone 的 Horizon Client 支持原生的 iPad 和 iPhone 手势,便于快速而轻松地在桌面上进行导航。

与 Android 客户端一样,完整的全屏触控板功能允许您在屏幕上的任何位置触摸,从而在 Windows 虚拟桌面上移动鼠标指针。

Unity Touch 侧边栏使浏览、搜索、打开和关闭 Windows 应用程序和文件,以及在运行中的应用程序之间切换变得更加简便,所有这些都无需使用 Windows 开始菜单或任务栏。

客户端软件还可以从 iTunes 商店作为应用程序下载,地址为itunes.apple.com/gb/app/vmware-horizon-client/id417993697?mt=8

使用最新版本的客户端(版本 4.10),新增了许多功能:

  • 全新用户界面:iOS Horizon Client 配备了升级版的现代化用户界面。

  • Windows 10 Continuum 支持:当 iPad 或 iPhone 与蓝牙或底座键盘断开或重新连接时,远程桌面可以自动在桌面模式和平板模式之间调整其用户界面。

  • 以多会话模式使用已发布的应用程序:启用已发布应用程序的多会话模式后,当您使用不同的终端设备和客户端登录到连接服务器时,可以同时使用该已发布应用程序的多个会话。例如,如果您在客户端 A 上以多会话模式打开已发布的应用程序,然后在客户端 B 上打开完全相同的已发布应用程序,已发布的应用程序将保持在客户端 A 上,而客户端 B 上会打开一个新的会话。

  • TLS v1.0 已禁用:TLS v1.0 不再受支持。

  • RTAV 支持摄像头重定向:在重定向摄像头时使用实时音视频功能。

  • 演示模式下的屏幕旋转:在演示模式下运行时,允许旋转屏幕。

若要了解更多关于最新 Horizon iOS Client 功能的信息,您可以阅读以下链接的发布说明:docs.vmware.com/en/VMware-Horizon-Client-for-iOS/index.html

最新的 Horizon Client 版本 4.10 要求以下 iOS 版本:

  • iOS 10.x

  • iOS 11.x

  • iOS 12.x

该版本的 Horizon Client 支持 Horizon 6 版本 6.2.x 及更高版本的最新维护版本。

在下一节中,我们将介绍适用于 Linux 的 Horizon Client。

适用于 Linux 的 Horizon Client

适用于 Linux 的 Horizon Client 允许您从运行 Linux 操作系统的 PC 或笔记本电脑访问您的 Windows 虚拟桌面:

使用最新版本的客户端(版本 4.10),新增了许多功能:

  • 支持 Windows Server 2019:现在支持将 Microsoft Windows Server 2019 作为远程桌面和发布应用程序会话的 RDS 托管服务器。

  • 支持 PIV 智能卡:现在可以使用 PIV 智能卡认证和重定向支持。

  • 不再支持 TLS 1.0:从本版本开始,不再支持 TLS 1.0。

  • RDS 托管桌面在嵌套模式下的串口重定向:现在支持在从 Horizon Client 启动的 RDS 托管桌面(嵌套会话)中的发布应用程序中使用串口重定向功能。必须在 RDS 托管桌面中安装 Horizon Agent 7.7 和 Horizon Client 4.10 或更高版本。在嵌套模式场景中,用户并发数是有限的。

  • 支持物理 RDS 主机上的虚拟打印:现在,您可以在运行在物理服务器上的 RDS 主机服务器上托管的发布桌面和发布应用程序中使用虚拟打印功能。

  • 多会话模式支持:当启用发布应用程序的多会话模式时,您可以在不同的客户端设备上使用相同发布应用程序的多个实例。

  • 记录复制和粘贴活动:您可以在 Horizon Client 中启用剪贴板审计功能,以记录从 Horizon Agent 机器复制到 Linux 客户端机器的剪贴板数据。这一功能需要 Horizon Agent 7.7。

  • 支持 Workspace ONE 模式:从 Horizon 7 版本 7.2 开始,Horizon 管理员可以为连接服务器实例启用 Workspace ONE 模式。如果您使用适用于 Linux 的 Horizon Client 连接到启用了 Workspace ONE 模式的服务器,您将被重定向到 Workspace ONE 门户。该门户将帮助您启动您的授权桌面和应用程序。

关于最新 Horizon Linux 客户端功能的更多信息,您可以通过以下链接阅读发布说明:docs.vmware.com/en/VMware-Horizon-Client-for-Linux/index.html

使用 VMware 提供的安装程序时,Horizon 客户端 4.10 支持以下操作系统:

  • Ubuntu 16.04(32 位)

  • Ubuntu 16.04 和 18.04(64 位)

  • Red Hat Enterprise Linux 6.10(32 位)

  • Red Hat Enterprise Linux 6.10 和 7.5(64 位)

此版本的 Horizon 客户端与 6.2.x 及以后版本的最新维护发布兼容。发布应用程序的支持仅适用于 Horizon 6.0(或更高版本)服务器。

在下一节中,我们将介绍适用于 macOS 的 Horizon 客户端。

Horizon 客户端 for macOS

Horizon 客户端 for macOS X 允许您从 Apple Mac 访问您的 Windows 虚拟桌面和 View 托管应用程序:

在最新版本的客户端(版本 5.0)中,新增了许多功能:

  • 支持 macOS Mojave(10.14):您可以在 macOS Mojave(10.14)系统上安装 Horizon 客户端。

  • 在“应用程序”文件夹中显示发布应用程序的类别文件夹:当 macOS 上的 Horizon 客户端配置为从“应用程序”文件夹运行发布应用程序时,您可以启用允许自动从服务器创建快捷方式设置,使已为发布应用程序配置的类别文件夹显示在“应用程序”文件夹中。

  • 在多会话模式下使用发布的应用程序:当启用发布应用程序的多会话模式时,您可以在使用不同终端设备和客户端登录连接服务器时,使用该特定发布应用程序的多个会话。例如,如果您在客户端 A 上以多会话模式打开一个发布应用程序,然后在客户端 B 上打开完全相同的发布应用程序,发布应用程序会继续在客户端 A 上打开,并在客户端 B 上打开该应用程序的新会话。

  • 禁用 TLS v1.0:TLS v1.0 不再被支持。

  • 收集支持数据:您可以收集支持数据,以帮助 VMware 排查 Horizon 客户端 for Mac 的问题。要使用此功能,请点击 VMware Horizon 客户端 | 关于 VMware Horizon 客户端 选项,并点击“收集支持数据”。Horizon 客户端将日志文件保存为 ZIP 文件,并保存在桌面文件夹中。

  • 在智能卡重定向中使用 ActivClient 中间件:您可以在 Windows 10 虚拟桌面上安装 ActivClient 7.x 中间件,并在 Windows 7 虚拟桌面上安装 ActivClient 6.2.x 中间件。

  • 共享 Linux 远程桌面:现在,您可以使用会话协作功能来共享 Linux 远程桌面。

  • 支持物理 RDS 主机机器上的虚拟打印:现在,发布桌面和发布应用程序的虚拟打印功能在物理 RDS 主机服务器上得到支持。此功能需要 Horizon Agent 7.7。

还增加了对 暗模式 的支持,如下图所示:

要了解最新 Horizon Linux 客户端的功能,请阅读以下链接中的发布说明:docs.vmware.com/en/VMware-Horizon-Client-for-Mac/index.html

使用提供的 VMware 安装程序时,Horizon 客户端 for Linux 4.10 版本支持以下操作系统:

  • macOS Sierra (10.12)

  • macOS High Sierra (10.13)

  • macOS Mojave (10.14)

该版本的 Horizon 客户端与 Horizon 6 版本 6.2.x 及以后的版本的最新维护发布兼容。

在下一节中,我们将介绍 Horizon 客户端 for Chrome OS。

Horizon 客户端 for Chrome OS

最终客户端适用于基于 Chrome OS 的设备,例如 Chromebook。Horizon View 客户端 for Chrome OS X 允许您通过基于 Chrome OS 的设备访问 Windows 虚拟桌面和 View 托管应用程序:

在客户端的最新版本(版本 4.10)中,添加了许多新功能:

  • Chromebook 相机支持:实时音频视频功能支持 Chromebook 相机与远程桌面和应用程序配合使用。它可以与 Skype、WebEx 和 Google Hangouts 等应用程序一起使用。

  • SHA-256 支持:Chrome OS 客户端现在支持使用 256 位安全哈希算法的安全性。

  • 支持 OpenSSL 1.0.2l

  • 已为发布的应用程序提供文件传输支持

要了解最新 Horizon Chrome OS 客户端的功能,请阅读以下链接中的发布说明:docs.vmware.com/en/VMware-Horizon-Client-for-Chrome/index.html

使用提供的 VMware 安装程序时,Chrome OS 4.7 版本的 Horizon 客户端支持以下操作系统:

  • 使用 Chrome OS、稳定频道、ARC 版本 41.4410.244.13 或更高版本的 Chromebook

该版本的 Horizon 客户端与 Horizon 6 版本 6.x 及以后的版本的最新维护发布兼容。

在下一节中,我们将介绍一些可以选择的硬件选项。

硬件客户端

我们从与客户交流中经常听到的一件事是,当您连接到虚拟桌面时,终端设备并不重要,因为它只是一个用来访问基础设施并显示我的桌面屏幕的简单设备。这意味着我可以购买最便宜的设备,它就可以使用,是吗?

正确的答案是,这取决于用户的使用场景以及他们在功能和特性方面的需求。然后,您可以为他们选择最合适的终端设备来连接。

另一个常见的困惑是,细客户端和零客户端之间是否存在差异,实际上它们有区别吗?

在本节中,我们将介绍不同类型的硬件客户端,解释每种硬件的功能,以及针对特定使用场景最适合选择哪种设备。

细客户端

细客户端是一种硬件终端设备,用于连接到网络并提供远程桌面/应用程序会话。与传统的 PC 不同,细客户端没有自己的内存、存储和计算能力来独立运行应用程序,也没有完整的操作系统和本地安装的应用程序。细客户端具有简化的操作系统、最小的 CPU、内存,并且通常没有存储,它依赖于数据中心中服务器的计算能力来执行所有处理。在这种情况下,细客户端被用作将服务器内容显示给最终用户的手段。

通常,客户端设备仅具有足够的处理能力和资源来访问和使用服务器的计算资源。它们几乎没有或没有存储(仅足以托管自己的内部操作系统),更重要的是没有活动部件,这意味着它们很少出现故障。由于减少了 CPU 和内存的容量,细客户端的功耗仅为 PC 所需功耗的一小部分,这意味着细客户端的运行和管理成本较低,且生命周期较长。

它们与 PC 的共同点之一是都具有操作系统。细客户端会安装自己的本地操作系统,通常嵌入在闪存卡上,运行厂商自己简化版本的 Linux 发行版,如 Dell Wyse ThinOS 或 Microsoft Windows Embedded。此外,它会运行适当的客户端软件,以连接到相应的虚拟桌面基础设施,例如使用 PCoIP 的 Horizon Client 连接到基于 VMware View 的虚拟桌面和托管应用程序,使用 Citrix Receiver 连接到基于 Citrix 的基础设施,等等。通常,细客户端会安装所有连接选项,为您提供连接到不同基础设施的选择和灵活性。

现在,您需要在设备上做出正确的选择,因为操作系统将被嵌入到设备中。正如我们之前提到的,用户的使用场景通常会决定设备的类型。例如,如果您打算部署与微软 Skype for Business 的统一通信,那么您将需要一个 Windows Embedded 操作系统,因为它很可能需要一些 Windows 的多媒体功能。在购买最便宜的设备之前,一定要先确认清楚。

瘦客户机还有几点需要注意。如果设备运行在本地操作系统上,仍然需要进行管理和维护。另一个考虑因素涉及许可证和您需要在从非 Windows 设备连接时使用 Windows VDA 许可证。在考虑成本模型、总拥有成本(TCO)和投资回报率(ROI)时,这一点需要考虑在内。

Zero Clients

Zero Client 执行与瘦客户机相同的功能;但是,与操作系统不同,Zero Client 将具有经过高度调整的内置处理器,专门为 VDI 协议之一(如 PCoIP、HDX 或 RemoteFX)设计。例如,基于 VMware View 的 Zero Client 将使用内置的 Tera2 硬件芯片组,如 Dell Wyse 5030/7030 或 10ZiG V1200-P。这些设备仍然小巧轻便,没有移动部件,并且消耗电力极少,就像瘦客户机一样。

解码和显示过程发生在 Zero Client 的硅片上,更为高效。由于它们是基于硬件的解决方案,它们比使用标准 CPU 和 GPU 的软件客户端提供更好的性能。Zero Client 启动时间仅需几秒钟,因为它们不需要加载操作系统。因此,它们对病毒和其他恶意软件更具免疫力,因为几乎没有存储或数据存储在它们上面。这减少了设备的总停机时间,意味着很少出现故障,主要是由于缺乏移动部件。这提高了终端用户的生产力。

Zero Client 设备不需要任何重大的维护,很少需要任何更新,除非 VDI 协议有显著的变化或改进,或者有罕见的与 BIOS 相关的更新。

有几件事情需要注意。首先是许可证问题。因为这些设备不运行在操作系统上,您需要查看使用非 Windows 设备的 VDA 许可证。最后一点是,如果您将 VDI 基础设施从 PCoIP 更改为新的协议,那么设备就不能与不同的协议一起使用,因此您会失去使用瘦客户机时获得的灵活性。然而,您将获得更好的性能。

重用的 PC(软件定义的瘦客户机)

还可以重用现有的物理 PC,使它们可以用作瘦客户机。有几种方法可以实现这一点,但必须确保用户可以简单地使用它,并且不会混淆虚拟桌面机和坐在他们面前的物理桌面机的使用方式。

有几种方法可以做到这一点。首先是使用本地策略或组策略锁定 Windows PC,并将外壳更改为仅 Horizon Client。第二种方法是使用第三方解决方案,例如 ThinScale 的市场领先 ThinKiosk 解决方案。

ThinKiosk 解决方案使任何基于 Windows 的终端设备都能重新利用为集中管理、安全的 Windows 瘦客户端。对于最终用户,它提供了一个直观且熟悉的用户界面,以及一个安全的工作空间环境,用户可以从中访问远程或本地资源。这是迁移到 VDI 的理想解决方案,因为您可以在保持安全的同时继续使用本地应用程序和资源。这也意味着,您在迁移到 VDI 时,不会因为应用程序在虚拟环境和较新操作系统中无法运行而受到限制。在安全性方面,ThinScale 的安全远程工作者解决方案允许最终用户启动一个基本上是临时、安全的工作空间环境的应用程序,它可以在任何 Windows 设备上运行,旨在让家庭和远程工作人员使用自己的设备:

市场上有其他解决方案提供这种重新利用的方法,但通过使用基于 Linux 的操作系统,这些方案可能增加额外的管理成本,并且并不总是提供最佳的兼容性和功能。

使用浏览器访问桌面

在前面的部分,我们讨论了使用基于软件或硬件的客户端来访问虚拟桌面,但也有第三种方法:在任何设备上使用支持 HTML5 的浏览器。使用这种方法的关键用例是当无法在终端设备上安装客户端软件时。例如,您可能有一个自带设备政策,最终用户不想安装客户端软件,或者您可能希望在酒店大堂使用一个公共终端设备,在这种情况下,设备被锁定,无法安装客户端软件。

这是该用例的关键所在,它允许您使用支持 HTML5 的 Web 浏览器访问虚拟桌面机器,而且不需要下载和安装任何额外的插件或软件。HTML 桌面访问就是所谓的 VMware Blast 协议。

要通过浏览器连接到您的虚拟桌面机器或视图托管应用程序,请打开浏览器,并在地址栏中输入您的连接服务器地址。

在示例实验室中,地址是https://hzn7-cs1.pvolab.com

在访问虚拟桌面机器之前,您将首先看到一个显示两个不同选项的网页。您可以选择下载完整版本的 Horizon 客户端,或者继续通过 HTML 连接,如下图所示:

点击屏幕左侧的 VMware Horizon HTML 访问链接。您现在会看到登录框,如下图所示:

输入用户名和密码,然后点击登录按钮。

您现在将看到用户有权访问的资源。在此示例中,一个 Windows 7 专用桌面池,以及 Excel、PowerPoint 和 Word,作为 Horizon 发布的应用程序提供。如下图所示:

您现在可以点击您想运行的资源,资源将在浏览器内启动。

使用最新版本的客户端(版本 4.10),有一些新的功能:

  • 全屏模式支持:您现在可以将远程桌面或发布的应用程序以全屏模式显示。

  • 支持多会话模式:当启用多会话模式时,您可以在登录同一服务器和应用程序时,从不同的客户端设备使用相同的发布应用程序的多个会话。

  • 增强的复制和粘贴功能:如果你使用的是 Chrome 或 Firefox 浏览器,现在可以直接从本地客户端系统复制并粘贴到远程桌面或发布的应用程序中。使用 Internet Explorer、Microsoft Edge 或 Safari 浏览器的用户,必须继续使用复制和粘贴窗口。

有关最新 Horizon Chrome OS 客户端功能的更多信息,您可以通过以下链接阅读发行说明:docs.vmware.com/en/VMware-Horizon-HTML-Access/4.10/rn/horizon-html-access-410-release-notes.html

要使用 HTML 访问功能,您需要运行支持的浏览器。目前支持的浏览器如下:

  • Chrome 69, 70

  • Internet Explorer 11

  • Safari 12

  • Firefox 62, 63

  • Microsoft Edge 42, 44

您还需要确保已启用 HTML 访问的桌面池,并且虚拟桌面上已安装远程体验代理。否则,您将无法使用浏览器访问桌面或应用程序。

我们已经探索了终端用户如何连接到他们的虚拟桌面和 Horizon 发布应用程序的各种选项。

摘要

在本章中,我们更深入地研究了从终端设备连接到虚拟桌面机器或 View 托管应用程序的可用选项。

我们讨论了基于软件的客户端、基于硬件的客户端以及 HTML 访问功能,并审视了每种访问方式的优缺点,以及为什么你可能会选择其中一种而非另一种。

在下一章中,我们将讨论如何将 Horizon View 从以前的版本升级到最新版本。

第十四章:升级到新版本的 Horizon

本章我们将讨论升级过程以及升级你的 VMware View 环境到最新版本的建议,在这个例子中,我们将从 Horizon 6 升级到 Horizon 7。我们将首先讨论在进行升级之前需要考虑的因素,如何进行升级以确保对用户的干扰最小化,最后是完成升级的逐步过程。

本章将涵盖以下主题:

  • 升级兼容性

  • 升级 Horizon Composer

  • 升级 Horizon View 连接服务器

  • 升级 View 安全服务器

  • 升级组策略模板

  • 升级 VMware Horizon 代理

  • 升级 Horizon 客户端

升级兼容性

在进行任何升级之前,你应该先阅读 Horizon View 的发布说明和升级指南。由于有多个相互依赖的组件,你不仅需要检查这些组件不同版本之间的兼容性,还要确保按正确的顺序进行升级,以最大限度地减少失败的风险和对用户的干扰。

在本节中,我们将查看兼容性,首先是你可以升级到 Horizon 7 的版本。以下是不同版本的列表:

  • VMware Horizon View 5.3 的最新维护版本

  • VMware Horizon 6.0(带 View)的最新维护版本

  • VMware Horizon 6 版本 6.1 的最新维护版本

  • VMware Horizon 6 版本 6.2 的最新维护版本

你还需要检查不同 View 组件之间的兼容性,以及 Horizon 7 是否与这些组件的早期版本兼容。这里所说的组件是指连接服务器、安全服务器等。

下表展示了版本兼容性:

因此,升级需要进行的过程如下:

  • View Composer 升级

  • View 连接服务器升级

  • View 安全服务器升级

  • 升级组策略

  • 升级 vCenter(如需要)

  • 升级 ESXi 主机和虚拟机硬件/工具(如需要)

  • 升级 Horizon 代理

  • 重新组合桌面池

你还需要考虑任何可能需要在最终用户端进行的升级的影响。例如,你不会在工作日中途升级一个 View 连接服务器,因为可能有数千个用户连接到该服务器。你通常会安排在非工作时间进行升级,或者至少确保每个 View 连接服务器在计划升级前一晚从负载均衡器中移除。

你可以选择构建新的连接服务器,并使用最新的 Horizon 版本,而不是升级现有的连接服务器,然后只需将用户指向新的服务器,并在完成后移除旧的连接服务器。

我们将要升级的第一个组件是 View Composer。

升级 Horizon Composer

在过程的第一部分,我们将升级 View Composer 服务器。

在开始升级之前

在开始升级 View Composer 之前,你需要完成一些先决条件。你需要在开始升级之前执行以下步骤:

  1. 根据 VMware Horizon View 安装指南检查先决条件,以确保所有要升级的组件满足最低的资源、操作系统和适用数据库版本要求。

  2. 如果你的 View Composer 服务器安装在虚拟机上,请在开始之前对虚拟机进行快照。

  3. 备份你的 vCenter 和 View Composer 数据库。

  4. 备份包含 SSL 证书的文件夹,该文件夹位于你的 View Composer 服务器上。证书可以在以下文件夹找到:%ALLUSERSPROFILE%\Application Data\VMware\VMware VirtualCenter

  5. 记录下你的 vCenter 服务器的 IP 地址和主机名。

  6. 确保记录下用于访问你的 Composer 数据库的账户的用户名和密码。

在完成先决任务后,下一步是禁用配置。为此,请按照以下步骤操作:

  1. 登录到 View 管理员,展开目录选项,点击桌面池 (1)。

  2. 现在,点击并高亮选择你要禁用的桌面池 (2),右键单击,从上下文菜单中选择禁用配置… (3),如以下截图所示:

  1. 你现在会看到以下消息:

  1. 点击 OK 按钮以禁用配置。你需要禁用所有将受到 View Composer 升级影响的桌面池的配置。这将防止在升级过程中创建新的桌面。

  2. 接下来,你需要修改设置为在注销时刷新的桌面池,确保它们设置为永不刷新。

  3. 为了执行此操作,在目录选项中,点击桌面池 (4),然后点击并高亮选择你想编辑的桌面池 (5),右键单击,从上下文菜单中选择编辑… (6),如以下截图所示:

  1. 你现在会看到编辑 Win7-Floating-LC 对话框,如下图所示:

  1. 点击桌面池…选项卡 (7),然后,在注销时删除或刷新机器部分的下拉菜单中,选择从不 (8) 选项。

  2. 点击 OK 按钮保存更改并关闭对话框。

你现在已准备好完成升级过程,我们将在下一部分详细介绍。

完成 View Composer 升级

一旦你完成了所有先决条件,并计划好了升级步骤以最小化对最终用户的影响,你就可以开始升级。接下来的步骤是安装新版的 Horizon Composer 软件。

我们不会在这里展开讲解,因为这个过程与我们在第四章中讲解的完全相同,安装与配置 Horizon 7 - 第一部分,以及安装与配置 Horizon ViewHorizon Composer 安装过程部分的内容,唯一的不同是你需要先卸载旧版本。卸载完成后,你可以按照该部分中的说明进行操作,记住你已经设置好了数据库的详细信息,所以只需在系统提示时输入你之前创建的 DSN 详情即可。

验证升级

升级完成后,接下来的步骤是检查所有服务是否已经恢复正常。我们首先检查 Horizon Composer 服务是否正在运行,执行以下步骤:

  1. 首先,从 Horizon Composer Server 启动服务控制台,方法是打开运行对话框并输入services.msc

  2. 在服务屏幕中,向下滚动并检查 VMware Horizon 7 Composer 服务是否正在运行,如下图所示:

  1. 第二个检查是通过 View Composer 验证过程。

  2. 从 View 管理员界面,点击服务器 (1),然后高亮显示你想验证的 vCenter 服务器 (2),如下图所示:

  1. 现在,点击编辑...按钮 (3)。

  2. 现在你将看到编辑 vCenter 服务器对话框,如下图所示:

  1. 在 View Composer 服务器设置部分,点击编辑...按钮 (4)。

  2. 你现在将看到 View Composer 服务器设置,如下图所示:

  1. 在底部的域部分,点击验证服务器信息按钮 (5)。

  2. 现在你将看到域部分已经填充了数据,并显示桌面池信息,如下图所示:

  1. 点击确定按钮关闭对话框。

你现在已经成功完成了 Horizon Composer Server 的升级过程。显然,如果你使用多个 composer 服务器,你需要在所有 Horizon Composer 服务器上重复这些步骤。

升级 Horizon View Connection Server

你现在可以继续升级你基础架构中的所有 View Connection 服务器。

在你开始升级之前

在开始升级 View Connection Server 之前,你需要完成一些先决条件:

  1. 使用 VMware Horizon View 安装指南检查前提条件,以确保所有待升级的组件满足资源、操作系统等的最低要求。

  2. 如果您的 View Connection Server 安装在虚拟机中,请对虚拟机进行快照。请注意,如果您需要恢复此快照,首先需要卸载任何已复制的连接服务器,然后再将主服务器恢复到快照状态。

  3. 确保您的文档是最新的,包括池配置、全局配置设置、IP 地址、批处理文件、事件数据库的 SQL 凭证以及负载均衡器配置。

使用 vdmexport.exe 命令行工具来备份 LDAP 数据库中的现有配置帮助。通过命令行运行以下命令:

vdmexport > {backup location\filename.ldf}

完成连接服务器的升级

一旦您完成了所有前提准备工作,并且已规划好升级,以尽量减少对最终用户的影响,您就可以开始升级了。

下一阶段是安装新的 View Connection Server 软件版本。

我们不打算在这里详细说明,因为这个过程与我们在第四章《安装和配置 Horizon 7 - 第一部分》,《安装和配置 Horizon View》和《Horizon Composer 安装过程》部分中讲解的完全相同,唯一的区别是旧版本会首先被卸载。请按照该部分中的说明来安装连接服务器软件。

安装完成并且服务器重启后,您应该能够通过访问视图管理员来确认升级是否成功完成。为此,请点击“服务器”(1),然后点击“连接服务器”标签页(2)。接下来,您可以检查关联的连接服务器的版本号(3),如下图所示:

您现在已经成功完成了 View Connection Server 的升级过程。显然,如果您使用多个连接服务器,您需要在所有的 View Connection Server 上重复这些步骤。

另一种 View Connection Server 升级方法

可能出现的情况是,您决定通过向现有的 Horizon Connection Server 中添加新的 Horizon 7 Connection Server 来升级 View Connection Servers,然后在准备好时从配置中删除旧的连接服务器。我们在这里不会详细讲解如何安装新的副本 View Connection Servers,因为这已经在第四章《安装和配置 Horizon - 第一部分》中详细覆盖了,但理解如何正确移除旧的 View Connection Servers 是非常重要的,您可以通过执行以下步骤来完成。

安装了新版本的连接服务器,并准备移除您的第一个旧版本连接服务器时,您需要确保要移除的视图连接服务器已从任何负载均衡器中移除,并且不再被用户使用;换句话说,没有人连接到它。

然后,启动控制面板中的“程序和功能”配置屏幕,如下图所示:

然后,您需要从要移除的视图连接服务器中卸载 AD LDS 实例 VMwareVDMS(1)和 VMware Horizon 连接服务器(2)。

完成卸载后,您需要连接到所有剩余的连接服务器,打开命令行,并运行以下命令:

"C:\Program Files\VMware\VMware View\Server\tools\bin\vdmadmin.exe" -S -r -s server_name

这将从其他连接服务器中删除此连接服务器条目。然后,您将收到关于计划从配置中移除服务器的确认,并且该服务器将不再显示在视图管理员屏幕中。

所描述的过程与升级副本服务器的过程相同,因为副本服务器本质上就是一个连接服务器。

升级视图安全服务器

升级您的 Horizon View 环境的下一步是升级用于让外部用户连接到其桌面的安全服务器。请记住,这不会被添加到您的域中,因此您需要使用本地凭据进行登录。

在开始升级之前

在开始升级视图安全服务器之前,您需要完成几个先决条件。

默认情况下,从 View 5.3 版本开始,安全服务器与连接服务器之间的流量由 IPSEC 规则控制。当您完成视图安全服务器的升级时,这些规则需要重新创建,如果现有规则仍然存在,则会失败。

因此,VMware 内置了清除 IPSEC 规则的功能,在开始升级之前执行此操作。为此,请执行以下步骤:

  1. 在“视图管理员”屏幕中,点击服务器 (1),然后点击安全服务器选项卡 (2),如下图所示:

  1. 现在,选中安全服务器并点击更多命令下拉菜单 (3)。

  2. 选择“准备升级或重新安装…”选项 (4)。

完成此操作后,安全服务器将无法与连接服务器通信,因此请确保仅在计划的安全服务器维护期间完成此操作,以避免中断,因为外部用户可能无法登录并连接到虚拟桌面。

完成视图安全服务器升级

一旦完成所有前提条件并规划好升级,以确保对最终用户的影响最小,您可以通过在运行当前版本的服务器上使用“添加和删除程序”配置卸载当前版本的 Security Server 来开始升级。卸载完成后,您可以继续安装新版本。

在实际安装新的 Security Server 版本之前,您首先需要设置配对密码。为此,请执行以下步骤:

  1. 从 View Administrator 控制台中,选择 Servers,然后点击 Connection Servers 标签。

  2. 选择您的 View Connection Server,然后点击“更多命令”按钮。

  3. 选择“指定安全服务器配对密码...”选项。

  4. 现在您将看到“指定安全服务器配对密码”对话框。

  5. 输入密码,并再次确认密码。如果您需要延长配对密码的有效时间,可以在密码超时框中输入新的时间。

  6. 点击 OK 按钮继续。

有关此过程的更详细信息,请参阅第五章,安装与配置 Horizon 7 - 第二部分 中的 Security Server 安装部分。

下一阶段是安装新的版本的 View Security Server 软件。

我们不会详细讨论这个过程,因为它与我们在第四章中讲解的内容完全相同,安装与配置 Horizon 7 - 第一部分,在 安装与配置 Horizon ViewHorizon Composer 安装过程 部分中已有讲解。请按照该章节中的说明安装 Security Server 软件。

安装完成并且服务器重启后,您可以通过登录到 View Administrator 控制台,进入 Servers 部分,然后点击 Security Servers 标签,检查您刚刚升级的 Security Server 的版本号,确认升级已成功完成。

升级组策略模板

在新版本的 Horizon 中,将会有许多新功能,其中一些将通过组策略进行控制。因此,在升级到新版本的 Horizon View 时,您需要将组策略管理模板升级到最新版本。这可以通过您域控制器上的组策略对象编辑器轻松实现。

我们不会详细介绍如何执行此操作,因为在第十章中已有详细说明,微调最终用户体验

需要注意的一点是,任何策略的更改都可能会影响最终用户,某些策略可能已经被弃用,而其他新策略可能已添加。建议为任何新版本创建一个新的 GPO,这样如果用户开始报告问题,您可以回滚到之前的版本。

在下一节中,我们将讨论如何升级 Horizon Agent。

升级 VMware Horizon Agent

升级 Horizon Agent 可能是升级过程中最简单的任务之一。你需要在所有的黄金镜像中升级代理,然后,如果你使用的是链接克隆,重新组合桌面池。

对于非持久桌面,升级代理、拍摄新快照并重新组合所有池是一个相对简单的任务。对于持久桌面,你可能需要进一步考虑重新组合池的影响,或者,作为替代方案,考虑在每台虚拟桌面机器上手动升级代理,或者部署应用程序部署工具。

你还需要考虑 Horizon Agent 可能已安装在用于提供桌面会话和 View 托管应用程序的 RDSH 主机服务器上。为此,你需要安排时间将主机机器从农场中移除,以便进行升级。

我们不会再详细讲解 Horizon Agent 的安装过程,因为这已经在第七章《构建和优化虚拟桌面操作系统》中讲解过了,构建和优化虚拟桌面操作系统

升级 Horizon 客户端

没有内置的方法可以自动升级 Horizon 客户端,除非你使用像 Microsoft SCCM 这样的工具来自动部署软件。

如果你使用瘦客户端作为终端用户设备,通常可以通过瘦客户端附带的管理软件轻松管理升级过程。

如果你正在使用重新配置的 PC 或可能是笔记本电脑来连接 Horizon View 环境,你需要手动更新客户端,或者指引用户这样做,或者使用第三方软件部署工具来完成升级。

对于使用 BYOD 或任何其他非公司设备的用户,他们将依赖设备商店提醒他们新版本已发布。然而,你需要确保用户安装的任何新客户端版本仍然与你的 Horizon 基础设施兼容。

摘要

本章中,我们已经涵盖了将 VMware Horizon View 环境升级到新版本的过程,逐步讲解了你需要为各个基础设施组件做的工作。实际的升级过程相对简单,但你必须首先花时间检查并完成先决条件。你还需要牢记更新计划的重要性,以尽量减少对终端用户的影响。

第十五章:JMP 和 VMware Horizon 7 部署考虑事项

VMware 即时管理平台JMP),即 VMware JMP,加速了复合桌面模型,使得桌面所有组件部分——操作系统OS)、应用、用户配置文件和数据——能够被抽象、管理,并按需交付给最终用户。这使得你能够提供真正无状态的桌面环境。

在本章中,我们将介绍 VMware JMP,它是如何工作的,以及如何配置它。

本章将涵盖以下主题:

  • JMP 是如何工作的?

  • VMware Workspace ONE

  • VMware 应用卷

  • 安装和配置 JMP

JMP 是如何工作的?

VMware JMP 将多项 VMware 技术结合起来,以提供这种无状态桌面环境。下图展示了 JMP 组件的高级概述以及它们如何组合在一起:

如前所示,JMP 解决方案由多项 VMware 技术协同工作,以将桌面或应用交付给最终用户。这些组件如下:

  • 即时克隆:按需构建虚拟桌面和 RDSH 服务器镜像。

  • VMware UEM:将用户配置文件和策略交付给应用和桌面。

  • VMware Workspace ONE:提供一个工作区门户,以访问应用和桌面(可选)。

  • VMware 应用卷:按需将应用交付给虚拟桌面和 RDSH 服务器。

在继续之前,让我们花点时间详细描述这些技术。我们已经介绍了即时克隆和 VMware UEM,因此我们将首先概述 VMware Workspace ONE。

VMware Workspace ONE

VMware Workspace ONE 是一个管理平台,允许 IT 管理员从云端或本地部署中集中控制最终用户的移动设备以及云托管的虚拟桌面和应用。它使最终用户能够安全地使用个人拥有或公司拥有的智能手机、平板电脑、PC 和笔记本电脑访问其公司资源。

它以单一门户或工作区呈现用户的应用,并提供用户可以访问并自行授权使用的自服务应用目录——所有这些都在 IT 团队的控制下。应用可以是基于软件即服务、发布的或移动的。最终用户还可以从这里访问他们的虚拟桌面。下图展示了 Workspace ONE 的启动器视图:

Workspace ONE 套件还包括 VMware AirWatch,一种企业移动性管理EMM)解决方案,用于在交付工作区和可供最终用户使用的应用之前检查和注册设备。它还包括 VMware 身份管理器 vIDM,提供单点登录身份验证服务。

在 JMP 场景中,Workspace ONE 提供了一个门户,最终用户可以通过该门户访问由 Horizon 和 JMP Server 交付的桌面和应用程序。

VMware App Volumes

App Volumes 解决方案来源于 VMware 于 2014 年 8 月收购的一家初创公司 CloudVolumes。原始的 CloudVolumes 解决方案为虚拟和物理桌面环境提供了实时应用程序交付引擎。

2014 年 12 月,CloudVolumes 进行了品牌重塑,成为现在我们所知道的 App Volumes,并作为 Horizon 企业版的一部分提供。

那么,App Volumes 给你带来了什么?从高层次来看,App Volumes 提供了一个实时应用程序交付和生命周期管理解决方案,用于交付通过 App Volumes 配置过程捕获的应用程序。被捕获的应用程序随后被层叠到虚拟桌面和物理桌面的操作系统中。简而言之,App Volumes 是一个应用程序分层解决方案。

那么,这与今天虚拟桌面环境和应用交付的方式有何不同呢?尽管在 VDI 中,桌面操作系统已经从底层硬件中抽象出来,但应用程序仍然与操作系统紧密集成。正如我们在第一章中已经讨论过的,介绍 VDI 和 VMware Horizon 7,理想的虚拟桌面解决方案是能够交付完全无状态的桌面,并且能动态地添加组成完整终端用户体验的各个元素。

拥有一个完全无状态的桌面模型通过使每个组件可以单独管理并且需要更少的基础设施,从而提供了最具成本效益的解决方案。今天,有许多工具可以处理用户个性化、用户数据和用户配置文件元素的交付到桌面,例如 Liquidware ProfileUnity。然而,应用程序仍然作为基础操作系统镜像的一部分交付,或者通过应用发布解决方案交付,其中应用程序实际上是在数据中心的服务器上运行。

App Volumes 通过在操作系统和应用程序之间提供一层抽象,来实现将应用程序交付到单独的容器中。这些容器被称为AppStacks,并通过有效地将应用程序层叠到虚拟桌面机的操作系统中,完美地集成。下图展示了传统安装模型与App Volumes Agent分层方法的比较:

除了应用程序容器,App Volumes Agent还为终端用户提供了自己的容器或虚拟硬盘,他们可以在其中安装自己的应用程序。这个容器叫做可写卷(Writable Volume),并且会在用户登录不同的虚拟桌面机器时随身携带,带上他们的所有应用程序。

以下图示展示了App Volumes Agent模型,该模型包含应用程序容器(AppStack)和用户可写容器(Writeable Volumes):

在接下来的章节中,我们将介绍如何构建一个 AppStack 以及如何将其交付给最终用户。

App Volumes 是如何工作的?第 1 步——应用捕获

那么,App Volumes 是如何工作的呢?首先,您必须创建或捕获一个可以通过 App Volumes 交付的应用程序。您开始此过程时,需先在虚拟桌面机器上安装该应用程序,这台机器称为配置机器。配置机器基本上是一个未安装任何应用程序的标准操作系统。

当您开始捕获过程时,一个空的 VMDK 文件(App Volumes 也支持 VHD),称为 AppStack,将被挂载到配置机器上。接下来,您像通常一样开始安装应用程序。与该应用程序相关的所有文件将被重定向到 AppStack 或 VMDK 文件中。

如下图所示:

一旦完成捕获过程,AppStack 将被设置为只读状态,并准备好根据最终用户的 Active Directory 组成员身份进行分配。AppStack 也可以分配给单个用户或其他组。

App Volumes 是如何工作的?第 2 步——应用交付

一旦创建了 AppStack,您就可以将其交付给最终用户。AppStack 的分配基于 Active Directory 成员身份。App Volumes Agent在他们的虚拟桌面机器上运行,并挂载包含已捕获应用程序的虚拟硬盘。代理将应用程序的文件和设置“层叠”进来,使应用程序看起来像是完全集成并本地安装的,而不是从额外的驱动器运行。这就是如何将应用程序实时交付给用户的原因,因为AppStack可以根据 AD 成员身份即时分配。

如下图所示:

AppStack从最终用户中取消分配时,虚拟硬盘会被简单地卸载,随之带走所有应用程序文件和设置,使得操作系统看起来就像该应用程序从未存在过!

这使得可以将应用程序交付到无状态的虚拟桌面机器中,而在 JMP 的情况下,应用程序按需交付,随着桌面的构建并交付给最终用户。

安装和配置 JMP

在本节中,我们将安装和配置 Horizon JMP 解决方案。该解决方案的关键部分不仅是安装其他 VMware 技术组件,如 App Volumes,还需要安装 JMP 服务器本身。

在开始安装过程之前,我们将讨论一些要求和先决条件。

先决条件

在安装 JMP 软件之前,需要确保多个元素到位,包括使解决方案正常工作的其他组件以及 JMP 本身的硬件和软件要求。我们首先列出其他 VMware 解决方案组件。

VMware JMP 组件要求

必须先安装构成 JMP 技术的 VMware 产品的受支持版本,才能开始安装 JMP 服务器。这些组件是利用 JMP 集成工作流功能所必需的。以下 VMware 产品版本必须在安装 JMP 服务器之前安装:

  • VMware Horizon 7 版本 7.5 或更高版本

  • VMware App Volumes 2.14 或更高版本

  • VMware 用户环境管理器 9.2.1 或更高版本

  • VMware 身份管理器 2.9.2 或更高版本(用于与 VMware Workspace™ ONE™ 的集成)

接下来,我们将查看运行 JMP 服务器的硬件要求。

VMware JMP 硬件要求

要安装 JMP 服务器,您需要一台物理或虚拟服务器,并配置以下设置:

  • 4 个 CPU 或 vCPU

  • 8 GB 内存(POC 部署为 4 GB)

  • 100 GB 磁盘空间(POC 部署为 25 GB)

接下来,我们将查看运行 JMP 服务器的软件和数据库要求。

VMware JMP 软件要求

JMP 服务器需要安装在以下 Windows Server 操作系统之一:

  • Windows Server 2008 R2 SP1 64 位标准版、企业版或数据中心版

  • Windows Server 2012 R2 64 位标准版或数据中心版

  • Windows Server 2016 64 位标准版或数据中心版

您还需要使用以下版本之一的 SQL 数据库:

  • SQL Server Express 2014 64 位(用于 POC 部署)

  • SQL Server 2012(SP1、SP2、SP3 和 SP4)64 位标准版和企业版

  • SQL Server 2014(SP1 和 SP2,含 CU7 或更高版本)64 位标准版和企业版

  • SQL Server 2016(SP1 和 CU6 或更高版本)

您需要确保已为 JMP 服务器主机和您计划用于安装 JMP 服务器的 Windows 用户帐户配置了 SQL Server 登录名和权限。

现在我们已经涵盖了前提条件和其他要求,可以开始安装 JMP 服务器。

安装 JMP 服务器

在本节中,我们将安装 JMP 服务器。

要安装 JMP 服务器,请导航到安装程序文件所在位置。在示例实验环境中,这是域控制器上的共享文件夹,如下图所示:

双击 VMware-Jmp-Installer-7.6.0-9823717 文件以启动安装程序。安装程序将启动,您可以按照描述完成安装步骤。我们也会在此提供这些步骤以便清晰:

  1. 您将看到 VMware 即时管理平台(JMP)服务器安装向导欢迎界面。

  2. 单击“下一步 >”继续。

  3. 然后,您将看到 VMware 最终用户许可协议界面。

  4. 选择“我接受许可协议中的条款”单选按钮,然后点击“下一步>”继续。

  5. 接下来,您将看到允许端口 80 的 HTTP 流量屏幕。默认情况下,使用端口 443(HTTPS),但如果您想使用端口 80,请勾选允许 HTTP 复选框。

  6. 点击“下一步>”继续。

  7. 现在您将看到 JMP 服务器平台服务的数据库服务器屏幕,如下所示:

  1. 在您要连接的数据库服务器框中,输入 SQL 服务器的详细信息。或者,您可以点击浏览...按钮,从显示的服务器列表中选择它。

  2. 接下来,点击 Windows 身份验证或服务器身份验证的单选按钮。对于服务器身份验证,您需要输入要使用的帐户的登录 ID 和密码;对于 Windows 身份验证,它将使用当前登录用户的凭据。如果使用此选项,请确保该帐户具有适当的权限级别。

  3. 在数据库目录名称框中,输入您为 JMP 设置的 SQL 数据库名称。或者,您可以点击浏览...按钮,从显示的数据库列表中选择该数据库。

  4. 然后,您可以选择勾选覆盖现有数据库的复选框。如果您正在安装其他 JMP 服务器,请确保该复选框未勾选,因为勾选它会在安装程序找到现有数据库时覆盖它。

  5. 最后,为确保 JMP 服务器与 SQL 服务器之间的安全通信,请勾选启用 SSL 框。

当勾选启用 SSL 框时,您需要确保在 SQL 服务器上使用的 TLS/SSL 证书已导入到 JMP 服务器的 Windows 本地证书存储区。如果未执行此操作,JMP 服务器的安装过程将失败。

  1. 点击“下一步>”继续。

  2. 现在您将看到准备安装程序屏幕。

  3. 点击“完成”以完成安装。

下一步是确保 JMP 服务器与 Horizon 连接服务器之间的时间同步。

与 Horizon 连接服务器同步时间

Horizon 连接服务器和 JMP 服务器主机上的时间必须同步,以便两台服务器之间的认证过程能够成功进行。

当您使用 Horizon 控制台访问 JMP 集成工作流功能时,JMP 服务器会验证从 Horizon 连接服务器收到的令牌,后者将令牌返回给 JMP 服务器。如果两个主机服务器之间的时间不同步,则 Horizon 连接服务器会拒绝令牌,JMP 集成工作流功能将无法在 Horizon 控制台中使用。

由于这些服务器是虚拟机,最简单的部署方式是通过 ESXi 主机服务器。您可以通过配置时间配置选项,指向网络时间协议NTP)客户端来实现。

在每台虚拟机上,打开命令提示符,然后从 c:\program files\VMware\VMware Tools 目录运行以下命令:

VMwareToolboxCmd.exe timesync enable

在接下来的部分,我们将使用 Horizon 控制台配置 JMP 服务器及其他解决方案组件,以使其协同工作。

将 JMP 服务器及其组件添加到 Horizon

首先需要注意的是,JMP 只能使用新的 Horizon 控制台进行配置,而不能使用 View 管理控制台。要进行配置,请按照以下步骤操作:

  1. 要开始配置并将其他组件添加在一起,请使用 https://hzn7-cs1.pvolab.com/newadmin 登录 Horizon 控制台。

  2. 然后,您将看到登录屏幕,如下图所示:

  1. 输入您的用户名和密码。确保从下拉框中选择了正确的域,然后点击登录。

  2. 您现在将看到仪表板屏幕,如下图所示:

  1. 点击设置 JMP(1)。

  2. 您现在将看到 JMP 设置屏幕,如下图所示:

  1. 首先,您需要添加 JMP 服务器。为此,点击添加 JMP 服务器(2)。

  2. 您现在将看到添加 JMP 服务器的屏幕,如下图所示:

  1. 在 JMP 服务器 URL 框中,输入 JMP 服务器的地址。在示例实验室中,这是 https://jmp.pvolab.com

  2. 点击保存以继续。

  3. 您现在将返回到 JMP 设置屏幕,屏幕上将显示 JMP 服务器已被验证并添加,如下图所示:

  1. 接下来,我们将进入 Horizon 7 配置并添加 Horizon Connection Server。现在,您将看到以下截图:

  1. 点击添加凭据按钮。

  2. 您现在将看到编辑 Horizon 配置的屏幕,如下图所示:

  1. 在 Connection Server URL 框中,输入 Connection Server 的地址。在示例实验室中,这是 https://hzn7-cs1.pvolab.com

  2. 在服务账户用户名框中,输入用于 Horizon View 服务账户的用户名,在服务账户密码框中,输入该账户的密码。

  3. 最后,在服务账户域框中,输入域名。在示例实验室中,这是 pvolab.com 域。

  4. 当您完成配置详细信息后,点击保存以继续。

  5. 接下来,我们将配置 Active Directory,如下图所示:

  1. 点击添加按钮。

  2. 您现在将看到添加 Active Directory 配置屏幕,如下图所示:

  1. 在 NETBIOS 名称框中,输入域的 NETBIOS 名称。在示例实验室中,这是PVOLAB

  2. 然后,在 DNS 域名框中,输入域名的名称。在示例实验室中,这是pvolab.com。接着,选择协议的单选按钮。在示例实验室中,我们将选择 LDAP(非安全)。

  3. 在绑定用户名框中,输入具有访问 Active Directory 权限并且能够创建计算机和用户帐户的用户,然后在绑定密码框中,输入该用户帐户的密码。

  4. 最后,在上下文框中,按照格式DC=输入详细信息。在示例实验室中,这将是DC=pvolab,DC=com

  5. 完成配置详情后,点击“保存”继续。

  6. 接下来,我们将配置 App Volumes,如下图所示:

  1. 点击“添加”按钮。

  2. 您现在将看到“添加 App Volumes 实例”配置屏幕,如下图所示:

  1. 在名称框中,输入 App Volumes 实例的名称。

  2. 接下来,在 App Volumes 服务器 URL 框中,输入 App Volumes 服务器的地址。在示例实验室中,这是https://app-vol.pvolab.com

  3. 在服务帐户用户名框中,输入用于管理 App Volumes 服务器的服务帐户的详细信息,在服务帐户密码框中,输入该服务帐户的密码。

  4. 最后,在服务帐户域框中,输入服务帐户的域名。

  5. 完成配置详情后,点击“保存”继续。

  6. 接下来,我们将配置最后一个组件 UEM,如下图所示:

  1. 点击“添加”按钮。

  2. 您现在将看到“添加 UEM 文件共享”配置屏幕,如下图所示:

  1. 在文件共享 UNC 路径框中,输入 UEM 配置共享的路径详情。在示例实验室中,它位于域控制器上,因此路径是\\dc\uem-configuration

  2. 在用户名框中,输入具有访问共享文件夹权限的用户的详细信息,在密码框中,输入该帐户的密码。

  3. 最后,在 Active Directory 框中,输入域的详细信息。

  4. 完成配置详情后,点击“保存”继续。

您现在已成功配置了 JMP 服务器设置。在下一部分中,我们将介绍如何配置 JMP 分配。

JMP 分配

现在我们已经完成了 JMP 服务器和其他组件的设置和配置,接下来我们可以创建 JMP 分配。JMP 分配将最终用户、即时克隆虚拟桌面池、应用程序(App Volumes AppStacks)以及用户配置文件和设置(VMware UEM)结合在一起。要创建分配,请按照以下步骤操作:

  1. 使用https://hzn7-cs1.pvolab.com/newadmin登录到 Horizon 控制台。

与之前的配置步骤一样,JMP 任务只能通过新的 Horizon 控制台进行配置。

  1. 你将看到登录屏幕。使用管理员帐户和密码登录。

  2. 登录后,点击屏幕左上角的任务 JMP (1),如以下截图所示:

  1. 你现在将看到 JMP 任务屏幕。

  2. 点击新建按钮。你现在将看到新任务屏幕。

  3. 输入你想要分配桌面工作区的用户或组的详细信息。这些用户和组是从配置过程中输入的域详细信息中选择的。在搜索框中,开始输入用户或组的名称,匹配的名称会出现在结果框中。

  4. 选择你要分配的用户或组,然后点击下一步继续。

  5. 你现在将看到桌面配置屏幕,在这里你选择要包括在 JMP 任务中的桌面池。从显示的表格中选择桌面池(从连接服务器读取),然后点击下一步。

  6. 在下一个屏幕中,你可以选择要包括在 JMP 任务中的应用程序。这些应用程序是 AppStacks,可以从配置的 App Volumes 服务器中显示和获取。从显示的表格中选择应用程序,然后点击下一步继续。

  7. 你现在将看到用户环境配置屏幕。该屏幕上的设置会自动从先前配置的 UEM 服务器中提取。

  8. 屏幕上的第一个设置是禁用 UEM 设置,这是一个简单的开关。将此设置为开启表示该任务不会应用任何 UEM 设置。如果你将其设置为“否”,并在设置页面点击跳过,那么请注意,所有设置将应用于此任务。你还将看到屏幕上显示的设置列表,你可以勾选单个设置,如果你希望将它们应用到此任务。

  9. 点击下一步继续。

  10. 你现在将看到定义配置屏幕。在名称框中,输入此 JMP 任务的名称,并可选择性地输入描述。系统会自动添加一个默认的任务名称。

  11. 然后,在 AppStack 附加框中,从下拉菜单中选择你希望如何将 AppStacks 附加到虚拟机。你可以选择“下次登录时”或“立即”。

  12. 点击下一步以继续。

  13. 你现在将看到总结屏幕。

  14. 如果你对配置满意,点击提交。

  15. 你现在将返回到 JMP 设置屏幕,在这里你会看到任务显示为“待定”。一旦任务加载完成,状态将变更为“成功”。

你已经成功配置了 JMP 分配。当最终用户下次登录到在分配中配置的桌面池中的桌面时,虚拟桌面机器将从即时克隆(Instant Clone)创建。应用程序将通过 App Volumes AppStack 交付,用户的配置文件和个人数据将通过 VMware UEM 交付。

总结

在本章中,我们更深入地了解了及时管理平台(JMP)以及它如何按需将构成桌面组件的各部分交付给最终用户。JMP 由多个不同的 VMware 技术组成:使用即时克隆(Instant Clones)构建虚拟桌面机器,使用 App Volumes 将应用程序以应用层(AppStacks)的形式交付,以及使用 VMware UEM 交付独特的最终用户元素,如配置文件和用户创作的数据。可选地,桌面和应用程序可以通过 Workspace ONE 门户提供。

使用这种方法可以让你按需交付真正的无状态虚拟桌面机器。

在下一章,我们将探讨一些环境故障排除的技巧。

第十六章:故障排除

如你所知,成功的 VDI 或终端用户计算项目是由多个组件组成的,它的成功取决于提供良好的用户体验。这不仅仅是基础设施是否正常工作的问题。因此,拥有明确的方法论和能够充分诊断与修复环境中问题的工具是非常重要的。在本章中,我们将介绍一些故障排除技术,以及其他用于监控 Horizon View 中终端用户体验的方法。

本质上,我们将从两个角度来进行故障排除:反应性和前瞻性,涵盖以下主题:

  • 常规故障排除技巧

  • 故障排除 Horizon View 问题

  • vRealize Operations for Horizon

  • Liquidware Stratusphere UX

我们还将使用 Liquidware Stratusphere UX 来突出故障排除和监控环境时需要关注的一些关键元素。

常规故障排除技巧

本章的第一部分,我们将简要介绍一些常规的故障排除技巧。我们将从查看终端用户报告的问题开始。是由于某个特定的应用程序或桌面配置导致的吗?如果是性能相关的问题,我们需要能够将其与支持的基础设施组件关联起来,比如他们的桌面或应用程序运行在哪个服务器上,从而隔离主机资源问题,如网络缓慢或磁盘慢速。

从大局来看

经常出现问题时,VDI 解决方案会自动成为背锅侠。这是因为它是一个新的部署,终端用户的看法是,由于桌面是远程运行的,所以它应该是问题所在。你需要记住,Horizon View 技术只是整体基础设施中的一个组成部分,用户使用的桌面也是其中的一部分。仅仅因为桌面位于 VDI 环境中,并不意味着一定是 View 的问题。它也可能是桌面、网络或应用程序的问题,这些问题在物理环境中也会发生。

当用户报告问题,或者你在基础设施中发现问题时,你需要逻辑地思考,基础设施中的哪个组件可能是问题的根源,并决定从哪里开始排查。也许是存储问题,甚至是 Windows 问题,与 VDI 完全无关!

这个问题是否影响多个用户?

检查环境中任何问题的一个好起点是回答以下问题:谁遇到了问题?是否有多个用户报告了相同的问题?如果你尝试重现该问题,是否会得到相同的结果?是否有其他用户,在相同的权限和资源下,能够重现该问题?

如果你发现问题确实只与某个单一用户相关,那么考虑一下他们所遇到的问题是什么。例如,你可以问以下问题:

  • 他们是从什么设备连接的?

  • 他们使用的连接协议是什么?是否尝试过其他协议?

  • 可能是带宽或连接可靠性的问题吗?

  • 是否有端口被阻塞?

  • 他们是否有特定的应用程序或权限需求?

  • 他们是否拥有正确的资源池权限?

如果你认为问题与他们的桌面有关,那么可以考虑刷新桌面。这就是 VDI 的魅力;你可以简单地重建一个新的桌面,而不是花费数小时尝试排除和修复应用程序或操作系统问题,如果简单的刷新能够解决问题的话。

如果问题影响了多个用户,检查是否可以将修复应用于基础镜像,并将其推广到桌面池,从而简化问题的解决过程。

性能问题

这是排查 View 环境问题时可能涉及的最广泛的领域之一。性能问题可能与许多方面、领域有关,而且在某些情况下,还可能是个人意见。

当用户报告性能问题时

如果用户报告性能差,那么让他们尽量具体一些,而不是简单地说“很慢”。是登录花费时间太长,还是某个应用程序加载的时间比预期要长?记录问题的日志,以及问题发生的时间和日期,或者是否是持续性问题。

在问题发生时,询问用户以下问题:

  • 他们是如何衡量性能的?

  • 他们遇到问题的时间是一天中的哪个时段?

  • 他们在遇到问题时做了什么特定的操作?

  • 他们是否在特定的地点或通过特定的设备连接时遇到问题?

尽可能访问最终用户,亲自了解他们遇到的问题。这将帮助你轻松找到问题的根源。希望正如我们在第三章《设计与部署考虑事项》中讨论的那样,你会早期与最终用户进行沟通,他们会积极参与并支持整体解决方案,愿意提供帮助。

使用 Liquidware Stratusphere,你还可以查看用户入职时的基线数据,然后查看趋势信息。这将帮助你识别环境的任何变化,并且你还会知道问题发生时,其他环境中发生了什么。以下截图展示了这个例子:

Liquidware Stratusphere 显示的趋势信息

与 VDI 无关的问题

桌面上的性能问题可能由多种因素引起,无论它们是虚拟桌面还是物理桌面。常见的考虑因素包括以下几方面:

  • 登录时间过长

  • 应用程序崩溃

  • 应用程序加载时间过长

  • 操作系统崩溃

  • 应用程序性能差

  • 权限错误

正如我们刚刚提到的,许多问题无论桌面是否虚拟化都可能发生,且都会发生,但在虚拟化环境中,出现的任何问题都会更容易解决。例如,如果你发现操作系统或应用程序崩溃,可以考虑将这些元素更新到最新的补丁,并为所有用户重新生成镜像。如果是物理桌面环境,这可能需要更长时间,且更为复杂。

也许登录时间或应用程序加载时间受到 CPU 性能问题的影响。以下截图显示了 Liquidware Stratusphere 的登录监控功能输出:

Liquidware Stratusphere 的监控功能

对于每台虚拟桌面机器,你可以深入查看运行的每个进程和服务,从而了解诸如进程加载时间以及该进程的其他依赖项等信息。在故障排除登录问题时,尤其是在从物理桌面迁移到虚拟桌面时,这些信息非常宝贵,因为它能帮助识别不应在虚拟环境中使用但仍然存在并在虚拟桌面中引发问题的服务。

对于物理桌面,除非更换或升级受限组件,否则你将只能使用现有硬件,但在 VDI 环境中,你可以按下按钮来调整配置,只要你有足够的底层资源。

需要理解的重要一点是,通用桌面问题仍然存在,因此,建议利用 VDI 平台的优势来帮助解决这些问题。我们与许多已部署 VDI 并投入生产的组织合作过,一旦解决方案实施后,他们往往会忘记处理通用桌面支持,而花费过多时间深入研究 VDI 架构和基础设施,寻找故障,而答案可能只是一个简单的 Windows 操作系统或应用程序问题。

带宽、连接性和网络

与网络相关的问题通常是最难追踪和解决的。在可能的情况下,请确保与网络团队紧密合作,确保有合适的端到端监控措施。

当用户通过局域网连接时,理想情况下,你会希望带宽充足,延迟足够低,因此连接应该是可靠的。如果你在局域网环境中遇到困难,可以考虑以下几点:

  • 网络上是否有任何变化?

  • 用户是通过有线网络还是无线网络连接的?

  • 是否已在交换机上配置了 PCoIP 的 QoS?

  • 当前网络是否可靠?

  • 是否在以下任何位置看到数据包丢失?

    • 客户端到核心交换

    • 客户端到服务器

    • 客户端到 VDI 桌面

  • 延迟是否在预期范围内?

  • 即使在较大的局域网环境中,带宽也可能成为问题——你是否考虑过从客户端设备到 VDI 桌面的带宽总和?

  • 你是否在不同网络之间进行路由?路由器的性能是否达到合适的水平?

  • 负载均衡器是否根据你的环境进行适当的配置?

当用户通过 WAN 连接时,排除故障或保证连接质量有时会更具挑战性。

对于远程或分支机构,确保互联网连接的带宽足够;尽可能确保从端到端配置 PCoIP 协议的 QoS,并确保你已适当地配置 PCoIP 策略以应对带宽减少的问题。

在故障排除时,检查客户端和视图连接服务器上的相关日志,以及任何中间组件,如负载均衡器和路由器。

以下列表包含了一些用户常报告的常见故障:

  • 黑屏:这通常是由于某处的端口阻塞了 PCoIP 协议造成的。检查 PCoIP 端口是否已打开;即端口 4172

  • 断开连接:高延迟和丢包会导致用户与其桌面断开连接。确保在刷新桌面之前允许足够的时间让用户重新连接。

  • 低分辨率图像:由于协议的性质,如果带宽低,用户可能会抱怨图像质量差。考虑在用户策略中限制图像构建选项。

以下截图展示了 Liquidware Stratusphere UX 记录的 PCoIP 协议的信息示例:

PCoIP 协议

在下一节中,我们将查看计算资源。

计算资源

主机服务器上的 CPU 和内存问题会对最终用户体验产生不利影响。与大多数技术解决方案一样,我们建议,在进行初步测试和部署时,记录下关键性能特征的基准数据,如 CPU 和内存利用率,以及更深层的指标,如 CPU 等待时间。

有了这些基准信息在你的工具包中,你可以更容易地将问题发生前的性能与现在的性能进行比较。这将有助于尝试找出可能导致问题的原因。同样,使用像 vRealize Operations for Horizon 这样的技术,将帮助你理解性能利用率随时间的变化。你也可以使用像 Liquidware Stratusphere 这样的第三方产品。Stratusphere 提供了基准指标(在评估阶段测量),以及当前的用户体验,让你可以快速识别出了什么变化,并找出问题的根源。

在你的 VDI 基础架构中,你不希望出现任何内存超配的情况。你需要考虑分配给虚拟桌面的内存量,以及主机中的总内存。理想情况下,你需要确保总分配内存少于主机服务器中的总内存。不要忘记,如果某个主机服务器出现故障,你仍然需要提供所需的内存资源。

如果你遇到与内存或 CPU 相关的性能问题,检查虚拟桌面是否有任何内存交换情况。检查环境中是否有任何气球效应。了解你的 CPU 就绪特性。VDI 环境中可接受的 CPU 就绪时间会根据环境和用户不同而有所变化。一般来说,你希望每个分配的 CPU 的 CPU 就绪时间低于 5%,峰值时不超过 10%。超过这些数值表示主机服务器过载,可能会影响 CPU 性能,并导致虚拟桌面机器的性能变慢。以下截图展示了 CPU 监控的例子,特别是 CPU 就绪时间:

CPU 监控和 CPU 就绪时间

当你从初步设计扩展你的 VDI 解决方案时,很容易忘记检查这些指标,并随着扩展而持续关注它们,突然之间,你可能会发现自己遇到了计算性能问题。

磁盘

正如我们之前提到的,所部署的磁盘解决方案是成功实施 VDI 的关键组成部分。你需要能够密切关注磁盘性能,这是避免未来出现问题的关键。

你所在环境中可接受的延迟量将很大程度上取决于用户。还要考虑在扩展解决方案时会发生什么。虽然我们可以说,低于 25 毫秒的磁盘延迟通常是可以接受的,但这并不意味着如果用户一直使用延迟低于 25 毫秒的桌面,他们会注意到突然之间延迟达到了 25 毫秒或更高。

你的存储供应商可能有自己的工具集来管理和监控性能;不过,以下截图展示了按主机划分的存储 IOPS 性能概览:

存储 IOPS 性能概览

在讲解了一些基础设施组件的常见故障排除技巧后,接下来我们将讨论 Horizon View 特定的问题。

故障排除 Horizon View 问题

本书中讨论了许多构成您 Horizon View 基础设施的组件,虽然它们通常非常可靠,但当然也可能会出现故障,并产生严重的连锁反应。在可能的情况下,您应确保 Horizon 环境具有高可用性,如果这不可行,则确保通过 vRealize Operations for Horizon 等组件,或像我们在示例实验室中使用的第三方监控解决方案(如 Liquidware Stratusphere)来充分监控各个组件。

Horizon View 一般基础设施问题

排查 Horizon View 基础设施问题时的首要步骤应该是查看 Horizon View 管理控制台中的事件日志。您可以通过点击屏幕左上角的警报,快速访问事件日志,如下图所示:

Horizon View 管理控制台中的事件日志

您还应利用 View 管理员中的仪表盘视图来快速概览您的环境,了解其健康状况。此屏幕将显示您基础设施中所有关键组件的健康状况,例如 vCenter、主机、View 连接服务器、View 安全服务器、桌面、RDS 主机和数据存储。

这是一个很好的资源,可以帮助您开始在 Horizon View 环境中排查基础设施问题。

在遇到 Horizon View 基础设施问题时,您也不应忘记最简单的故障排除步骤:

  • 所有服务器、桌面、主机等是否都可以在网络上访问?

  • 所有必要的服务是否已启动?

  • 所有服务器上是否有足够的可用空间?

  • 内存和 CPU 是否已满?

  • 您是否检查了所有的事件日志?

还需要考虑后端数据库系统,以及如果它们下线时可能产生的影响。确保您的 SQL 解决方案可靠,并与所有其他组件一致。如果您遇到如 vCenter 或 View Composer 的问题,请确保检查 SQL Server 是否存在以下问题:

  • 是否有足够的资源?

  • 服务是否已启动?

  • 是否已打开正确的端口?

  • 数据库和日志是否有足够的可用磁盘空间?

View 基础设施组件问题

当然,也可能出现一些我们尚未讨论的问题。Horizon View 有其集成的系统健康监控,因此可以报告与 Horizon View 特定问题相关的错误,帮助管理员快速定位问题。不幸的是,有时纠正措施可能非常繁琐且需要手动实施。

可能需要特定纠正措施的常见问题如下:

  • 在丢失组件或操作系统损坏后,手动移除 View 连接服务器或安全服务器

  • 手动移除 VDI 桌面或整个池

  • 从备份中恢复 Horizon View

  • 从备份中恢复持久磁盘

  • 用户的持久磁盘空间不足

我们不会在这里覆盖所有这些过程的具体修复操作,因为我们可以写一本书来详细介绍它们,但 VMware 的 KB 网站上已经有一些很棒的知识库(KB)文章可供参考,网址为kb.vmware.com

我们将简要讨论的一个问题是 View Composer 数据库的错误,以及导致配置错误的数据库不一致。VMware 有一个用于解决数据库错误的工具,叫做ViewDBChk工具,我们将在下一节中介绍。

使用 ViewDBChk 工具修复 View Composer 问题

当 LDAP、vCenter 服务器和 View Composer 数据库之间存在不一致时,可能会发生配置错误,通常是由于直接在 vCenter Server 清单中编辑虚拟桌面机器,或从备份中恢复虚拟桌面机器所导致的。

ViewDBChk 工具允许 View 管理员扫描无法配置的机器,并且还允许您删除无效的数据库条目。这样,连接服务器就能够在没有任何错误的情况下重新配置桌面。

您可以在安装时创建的View文件夹中找到此工具。通过导航到以下路径,您可以找到该文件夹:

C:\Program Files\VMware\VMware View\Server\Tools\bin

该工具是基于命令行的,并且为您可以执行的每个功能提供了多个参数。这些参数在下表中列出:

显示每个功能参数的表格

例如,要运行命令从桌面池中移除一台机器,在命令提示符下,输入以下命令:

ViewDbChk --removeMachine --desktopName

在下一部分中,我们将查看一些可用的附加工具,用于监控和管理环境。

vRealize Operations for Horizon

vRealize Operations for Horizon 作为 Horizon Enterprise 的一部分提供,也可以作为独立产品提供。vRealize Operations 与大多数监控工具的不同之处在于其分析引擎。大多数监控工具是围绕设置关键值的阈值,如 CPU 或内存使用量进行的。这些警报的问题在于,仅仅超过阈值并不意味着一定存在问题。有时,这可能在应用程序的正常参数范围内,或者问题可能是某些资源在应当消耗时并未被使用。

通过 vRealize Operations 中包含的分析引擎,它能够学习并理解您的环境的正常工作参数。由此,它能够在出现超出这些参数的错误时发出警报。它还能够跟踪随着时间推移的增长和消耗,从而在问题发生之前预防它。

vRealize Operations for Horizon 应该在项目开始时尽可能安装。vRealize Operations 通过一个虚拟设备或 vApp 简单部署,部署并配置后,它会开始监听并学习你的环境。

vRealize Operations 跟踪了三个关键指标:健康、风险和效率:

  • 健康报告会显示你环境的当前健康状态。可能影响健康的因素包括高丢包率、组件故障、磁盘容量达到临界水平等。

  • 风险表示环境中存在的问题,如果不加以处理,可能会对环境的健康造成影响。

  • 效率报告会考虑到如过度配置等问题,如果这些问题得到解决,能够帮助你更充分地利用环境资源,从而最大化投资回报。一个例子是 CPU 或内存过度配置的虚拟机(VM)。

以下截图显示了一个终端用户体验仪表盘,突出显示了 CPU 使用情况:

终端用户体验仪表盘

vRealize Operations for Horizon 还包括特定的功能,确保你完全了解 Horizon View 环境的健康状况,包括对 PCoIP 协议的全面可见性,以及与 View Connection Server、View Security 等的健康监控集成。

vRealize Operations 的分析引擎会学习你的环境,了解什么是正常的,并基于动态阈值而不是无意义的静态阈值发出警报。

在 vRealize Operations 中,它还包含一个智能警报功能,允许你快速理解基础设施问题的根本原因,并给出建议的修复措施。

还有一些第三方工具和解决方案,超出了环境监控的范围。其中一个工具是 Liquidware 的 Stratusphere 解决方案,我们将在下一节讨论它。

Liquidware Stratusphere UX

Liquidware Stratusphere UX 不仅仅是一个监控工具。事实上,它更像是一个用户生命周期管理工具,在我们整个部署过程中都发挥了作用。在评估当前环境时,我们首先使用了 Stratusphere UX 的输出,以便为我们提供一个资源使用概览,同时也为我们提供了一个基准,作为部署 Horizon 时的参考。

然后我们使用这个基准来帮助调整终端用户体验,在我们引入用户并构建金图像时,确保终端用户在最优的性能水平下运行。

最后,Stratusphere 可以作为诊断工具,帮助 IT 支持团队快速找到问题的根本原因。IT 可以快速了解问题所在,提供对单个用户、单台机器或单个应用程序的详细分析,以及用户虚拟桌面会话的端到端视图,了解它托管在哪里以及正在消耗哪些资源,有助于快速识别问题。

正如您在之前的章节和截图中所看到的,Liquidware Stratusphere 可以轻松帮助监控和管理您的环境。

获取进一步的帮助

如果您在解决 Horizon View 的问题时遇到困难,可以使用多种资源。首先,我们建议尽早与 VMware 支持联系,以获取最佳的帮助来解决您的问题。您还可以尝试来自 VMware EUC 社区的各种博客和帖子。

还有 VMware 社区,这里有丰富的资源可以访问communities.vmware.com.

最后,可能是最有用的资源是 VMware 知识库,正如我们在本章前面提到的。在撰写本文时,涉及 Horizon View 的具体支持主题有 300 个,包括视频操作指南和逐步解决方案指南。

总结

在本章中,我们涵盖了在 Horizon View 环境中解决问题时需要考虑的一些方法和领域。应考虑整体情况,确保您充分了解用户面临的问题以及可能导致这些问题的用户桌面体验领域。在可能的情况下,使用诸如 vRealize Operations for Horizon 等监控工具查找问题的根本原因。如果您认为存在基础设施问题,应检查 Horizon View 中的几个领域,包括仪表板和 Horizon View 管理员中的事件日志。

最后,我们介绍了如何从 VMware 知识库获取进一步的帮助。

我们现在已经到达了本书的结尾,在到达这一点时,您应该对 Horizon Suite 的架构有了更深入的理解,并了解如何设计您的终端用户计算解决方案。您还应该理解为用户推出 Horizon View 涉及的阶段和详细信息,包括安装各种组件,并配置、设计和构建桌面镜像和池。您将了解到关于如何将应用程序分层到您的桌面的各种方法,使用 ThinApp、RDSH 发布的应用程序和 App Layers 等技术。

设计和推出任何组织的终端用户计算解决方案都是一项必须谨慎和深入了解用户的任务,我们希望本书中涵盖的主题将更好地为您未来的任务做好准备。

第十七章:Horizon 7 的新功能介绍

自从我开始写这本书以来,VMware 已发布了 Horizon 的 7.7 版和 7.8 版。

这些新版本增加了许多更新功能和扩展支持,我们将在本章讨论这些内容。我们还将讨论平台和基础设施的变化。

操作系统和基础设施更新

在最新的 Horizon 7 版本发布中,VMware 增加了对更新的操作系统、虚拟基础设施和其他软件应用的支持。这些如下:

  • 支持 Windows Server 2019(包括 RDSH 支持)

  • 支持 VMware vSphere 6.7 Update 1

  • 支持 VMware vSAN 6.7 Update 1

  • 升级 Horizon Cloud 连接器的能力(用于 VMware on AWS)

  • 支持 VMware 虚拟化包中的 IPv6 与 Skype

使用 VMware Cloud on AWS 运行 Horizon 时,还进行了许多改进和新增功能。这些如下:

  • 最小大小集群现在已经减少到 3

  • 支持 vSphere 延伸集群

  • 支持 NSX-T 和 VMware vSAN 数据存储加密

  • 支持 Horizon 7 企业版,增加了 VMware UEM、VMware App Volumes 和 VMware Instant Clone

  • 支持运行 Linux 桌面

在下一节中,我们将看看一些新的管理特性。

Horizon 管理更新

在本书中,我们使用了原始的 View 管理员和新的 Horizon 控制台来管理我们的 Horizon View 环境。主要原因是某些管理任务和功能在新的 Horizon 控制台中不存在。

Horizon 控制台更新

在此版本中,VMware 在新的 Horizon 控制台中添加了一些新功能。这些功能如下:

  • 管理手动桌面池。

  • 管理 Linked Clone 桌面池和 Linked Clone 持久磁盘。

  • 添加了一个新的已连接用户列和一个已分配用户列,以便更容易看到谁连接到虚拟桌面机器。这也已添加到原始的 View 管理员。

View 管理员更新

VMware 已经在 View 管理员管理控制台中添加了一些新功能。这些功能如下:

  • VMware 统一访问网关显示在系统健康仪表板上。

  • 连接服务器 Pod 名称现在在浏览器标题栏中显示。

帮助台工具更新

最后,在管理更新方面,VMware 在 Help Desk 工具中添加了一些新功能。现在管理员可以结束正在运行的应用程序进程。

在下一节中,我们将看看 Horizon 7 版本 7.7 中的可扩展性增强。

可扩展性

除了增加到这个最新的 7.7 版本中的功能之外,VMware 还增强了 Horizon 的可扩展性,增加了对更大规模部署的支持。这些功能如下:

  • 单个 vCenter Server 现在可以在使用 Cloud Pod 架构时管理多个 Pod。

  • 支持最多 500 个 RDSH 服务器在一个农场中。

  • vMotion 支持连接克隆和自动化桌面池中的完整虚拟机。

  • vMotion 支持已配置使用 vGPU 的完整克隆、即时克隆和连接克隆虚拟桌面机器。

在下一节中,我们将查看最终用户体验的增强功能。

增强的最终用户体验

最终用户体验是成功 Horizon 环境的关键,在这次最新的版本中,VMware 添加了更多的功能,以改善最终用户的整体体验。这些功能如下:

  • 物理 PC 现在支持 Blast Extreme 协议。

  • Blast Extreme HEVC(H.265)视频编码支持。此功能将数据压缩率提高一倍,但保持质量。此功能不需要 NVIDIA GRID。

  • 支持通过客户端驱动重定向复制、拖放文件和文件夹。

  • 新增虚拟打印功能。此功能允许在最终用户的 Windows 客户端上打印到任何打印机。此功能还支持客户端打印机重定向和基于位置的打印。

  • 管理员可以指定是否允许用户打开同一应用的多个实例。

  • 用户可以在使用 Windows 客户端时分配 RDSH 发布的应用。

  • 混合登录功能现在支持未认证用户的应用访问。

在最后一节中,我们将查看为基于 Linux 的虚拟桌面机器添加的一些增强功能。

Linux 虚拟桌面机器更新

Linux 正在成为虚拟桌面机器的越来越流行的操作系统。VMware 继续添加功能,使其达到与使用 Windows 桌面时支持的功能相同的水平。Linux 目前的功能包括以下内容:

  • SLES 12x 虚拟桌面机器现在支持 SSO

  • SLED/SLES 支持音频输入

  • 支持即时克隆浮动桌面池

  • 会话协作

  • 支持即时克隆的离线域加入

平台更新

随着平台更新,Horizon 现在支持更新的操作系统,详情请见:

  • 连接服务器现在支持 Microsoft Windows Server 2019

  • View Composer 现在支持 Microsoft Windows Server 2019

  • Microsoft Skype for Business 2019 现在在 Horizon 环境中得到支持

在下一节中,我们将查看 Horizon 控制台的更新。

Horizon 控制台更新

在 Horizon 的早期版本中,仍然有大量的管理任务和功能仅在 View Administrator Console 中可用。在这次最新的版本中,许多这些功能现在出现在新的 Horizon 控制台中。这些新添加的功能如下:

  • 管理连接克隆环境中的持久磁盘

  • 管理全局策略

  • 管理管理员访问权限以及基于角色的访问权限

  • 管理 vCenter Server 设置和连接服务器设置

  • 管理连接克隆和 View Composer

  • 管理 Cloud Pod 架构设置

  • 能够为 RDSH 发布的应用和桌面创建快捷方式

在下一节中,我们将查看 Horizon 的可扩展性。

可扩展性

Cloud Pod 架构现在支持以下功能:

  • 250,000 个会话

  • 50 个 POD

  • 每个 POD 支持 10,000 个会话

  • 15 个站点

  • 每个 POD 有 7 个连接服务器

  • 总计 350 个连接服务器

在接下来的部分中,我们将讨论通过 RDSH 交付应用程序和桌面时的改进。

RDSH 改进

以下功能已添加到 Horizon View 的 RDSH 功能中,用于交付已发布的应用和桌面:

  • 使用图形用户界面而不是以前版本的手动脚本方法来配置桌面和应用会话的负载均衡能力

  • 对配置客户端限制的已发布应用和桌面的支持,适用于组织单位(OU)

在接下来的部分中,我们将讨论如果你在 VMware Cloud on AWS 上使用 Horizon 时支持的几个新功能。

Horizon 与 VMware Cloud on AWS

如果你在 VMware Cloud 上运行 Horizon 环境,并且它是基于 AWS 的,那么以下新特性将得到支持:

  • VMC 上的 NSX-T 现在支持多 VLAN

  • 支持 AWS 1.6

在接下来的部分中,我们将探讨 Horizon Agent 的更新。

Horizon Agent 更新

除了服务器端组件更新之外,为了利用其中的一些新特性,Horizon Agent 也进行了更新,以支持多个平台。我们将在本节中讨论这些内容。

Windows 代理

Windows 版 Horizon Agent 现在包括以下功能:

  • 使用正则表达式的 URL 内容重定向规则

  • 通用 Windows 平台UWP)应用的智能卡认证支持

  • 帮助台代理现在已集成到 Horizon Agent 安装过程的一部分

  • VMware 集成打印完工

为了利用这些功能,你需要更新运行在 Windows 虚拟桌面机器或黄金镜像上的 Horizon Agent,随后你还需要重新部署。

Linux 代理

Windows 版 Horizon Agent 现在包括以下功能:

  • 多屏幕部署的 HTML 访问

  • 会话协作只读模式

  • 在运行 NVIDIA vGPU 时,SLED 12.x 扩展了支持

  • 从 RHEL 7.1 及以后版本支持智能卡重定向

  • 真正的单点登录SSO)扩展操作系统支持

  • 扩展支持 CentOS 7.6 和 RHEL 操作系统

为了利用这些功能,你需要更新运行在 Linux 虚拟桌面机器或黄金镜像上的 Horizon Agent,随后你还需要重新部署。

Horizon 客户端

除了基础架构和虚拟桌面代理的更新外,此版本还将 Horizon 客户端升级至版本 5.0。有关这些新功能的详细信息,可以参见第十二章,Horizon 客户端选项

你还会看到一个新的 Logo,如下所示:

这个徽标是 Horizon 外观和体验重新设计的一部分,旨在使其更符合 Workspace ONE 解决方案的外观和体验。

总结

在本章中,我们简要介绍了 Horizon 7 版本 7.7 和 7.8 中新增的一些功能。

有关包含内容的详细信息,可以通过查看以下链接找到:

docs.vmware.com/en/VMware-Horizon-7/7.7/rn/horizon-77-view-release-notes.html

docs.vmware.com/en/VMware-Horizon-7/7.8/rn/horizon-78-view-release-notes.html?hWord=N4IghgNiBcIOwDoAcIC+Q

这也标志着本书的结束,我希望你在阅读如何通过 Horizon 解决方案为你和你的组织带来益处时感到愉快,并且通过跟随一步一步的示例实验室,你现在已经掌握了构建自己 Horizon 环境的知识。

posted @ 2025-07-05 15:46  绝不原创的飞龙  阅读(49)  评论(0)    收藏  举报