设计决策:在Azure上交付思杰虚拟应用程序和桌面服务的可扩展性和经济性

本文档的目标是为正在Microsoft Azure云中部署Citrix虚拟应用程序和桌面(CVAD)的企业提供指导。为了向我们的客户提供最好的建议,我们决定确定影响Citrix架构和设计决策的四个关键问题的答案

  1. 承载CVAD的最有效实例系列是什么
  2. 在最高效的系列中,最具成本效益的实例类型是什么
  3. 机器创建服务I/O (MCSIO)缓存有什么影响?
  4. 与Windows Server操作系统相比,Windows 10的多会话可扩展性如何?

Citrix提供了一份更详细的论文,详细介绍了测试方法的细节和在评估期间捕获的性能结果。本文主要关注高级结果,并提供了如何在Microsoft Azure云中设计高效Citrix实现的指导。

为了确定性能,我们使用LoginVSI 4.1.32.1,它针对单个Citrix服务器创建模拟会话。我们用于测试的两个工作负载描述如下:

  • 任务工作者工作负载-包括Microsoft Office 2016 Outlook、Excel、Internet Explorer、Adobe Acrobat和PDF Writer的细分。Task Worker工作负载对环境没有很高的要求,并且代表不经常访问系统的用户。
  • 知识工作者工作负载-包括使用Microsoft Office 2016 Outlook、Word、PowerPoint、Excel、Adobe Acrobat、FreeMind、PhotoViewer、Doro PDF Writer进行分割,并包括观看几部360p电影。Knowledge Worker工作负载对环境提出了更高的要求,包括更多地使用可用内存,并表示更频繁地访问系统的用户。

在实际条件下,成功完成多会话测试的用户数量提供了一个关键的性能指标。该值称为vsimmax会话计数,用于比较分析。Login VSI工作负载通过观察系统上单个用户的响应时间来计算VSImax会话计数。当响应时间大大减少到低于预期阈值时,达到VSImax,该阈值是由系统上只有一个用户的基线值导出的。

为了提供可以在没有专业知识的情况下一致复制的保守数字,这里的所有结果都反映了使用默认Citrix策略和未优化的Windows和Office产品的默认设置的测试执行。性能和密度都可以通过应用Citrix优化工具(如Citrix的电话Citrix优化器

最有效的实例系列是什么?

为了找到最有效的实例系列,我们需要在不改变组合中的任何其他变量的情况下测试不同的实例系列。基本镜像是Windows Server 2016,带有Citrix VDA的1903.1版本,系统C:驱动器的标准硬盘驱动器(HDD)为128 GB。我们选择8核实例类型主要有两个原因:

1)它们代表了托管会话的Azure实例类型的主力,并且通常是部署的最流行的大小2)与较小的2核系统相比,它们提供了良好的CPU/RAM平衡和最小的操作系统影响。

下图显示了实例族结果以及每个用户每小时的平均成本,该成本基于执行测试的Azure US-West-2区域的即用即付定价。

核性能上将

分析

这些实例类型中的大多数使用相同的处理器,Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30 GHz。主要区别在于虚拟机可用的内存量。关于这些不同系列的更多信息可以在微软的网站

一般来说,8核实例具有相当相似的性能,特别是当您将物理内核(D13_v2、D4_v2、L8s)与超线程内核(F8s_v2、D8_v3、E8_v3)进行比较时。但是,当考虑实例的小时成本时,D13_v2和F8s_v2实例提供了更有效的使用。E_v3和LS_v1系列的成本效益较低,因为微软对内存优化和存储优化实例收取更高的费用。在用户的应用程序内存或存储非常密集的情况下,这些实例通常提供良好的投资回报。

建议

如果典型用户的应用程序是cpu密集型的,并且不需要大量内存来运行,那么最具成本效益的性能是F系列。选择F系列当您需要出色的CPU响应时间并且不需要大量内存时。如果用户的应用程序消耗相当多的内存,则根据用户环境中每个核心需要多少额外内存来使用D实例类型之一。

在最高效的系列中,最具成本效益的实例类型是什么?

当我们完成跨家庭的广泛测试时,我们期望单个系列成为明确的领导者。然而,结果最终使我们相信,在使用标准HDD存储进行测试时,D系列和F系列是进行额外测试的两个最佳实例系列。下一步是测试D_v2和FS_v2家族中2到16个vcpu的特定大小。这些测试的结果如下所示。

FS和D系列性能

分析

上图显示了在D14_v2实例类型(16核,112 GB RAM)上获得的最高密度(任务工作者和知识工作者分别为74和63个用户会话)的测试结果。由于不同实例类型的定价不同,因此更高的密度并不一定意味着每个用户的成本更低。

Azure实例的定价模型根据区域、实例类型和提供的资源而有所不同。上面的图表还包括基于在单服务器测试中实现的VDA用户密度的每种实例类型的成本效率。该成本反映了截至2019年9月的美国西部2标准虚拟机实例的即用即付定价,并包括微软Windows许可成本。

如上图所示,D13_v2实例类型显示任务工作者的每用户每小时成本最低,为0.018美元,其次是F16s_v2和F8s_v2,成本为0.019美元。对于知识工作者来说,F16s_v2和F8s_v2实例类型共享的最佳小时成本为0.025美元,紧随其后的是D13_v2实例类型,为0.026美元。

建议

在测试中,密度结果显示,当知识工作者的工作负载较重时,FS v2系列实例提供的更快的处理器明显有好处。但是,FS v2的内存核比低于D v2系列的内存核比,我们建议仅在工作负载的内存消耗较低时使用FS v2系列实例。如果用户运行的应用程序是内存密集型的,那么d_v2系列是最佳选择。

当每用户成本相似时,例如F8S_v2和F16s_v2的情况,当存在以下任一条件时,选择较小的实例大小:

  • 需要弹性:您希望在维护窗口期间影响更少的用户
  • 需要有效的电源管理:您希望快速关闭未使用的机器

当存在以下任一条件时,选择较大的实例大小:

  • 减少管理的需要:您希望在环境中管理更少的机器
  • 需要减少API调用:您需要更少的API调用Azure基础架构进行操作

机器创建服务I/O缓存有什么影响?

用于测试的实例类型被配置为标准存储,而不是为虚拟机上的系统驱动器配置更昂贵的SSD存储。由于使用SSD存储的实例类型具有较小的用于存储页面文件的临时磁盘,尽管磁盘速度更快,但可伸缩性较低,因为实例没有足够的交换文件空间来支持更高负载下所需的虚拟内存。

在我们使用的磁盘大小下,HDD和SSD磁盘具有相似的IOPS性能(500)。虽然SSD磁盘具有更一致的性能,但额外的成本并不总是合理的。

然后我们决定考虑机器创建服务I/O (MCSIO)缓存,作为在更大的标准磁盘上实现类似ssd性能的一种方法。测试使用Citrix VDA版本1903.1和Windows Server 2016在D5_v2 (16 vCPU, 56 GB RAM)实例类型上完成。下面的图表显示了在知识工作者负载下启用MCSIO缓存所增加的用户密度。

MCSIO性能

分析

当操作系统磁盘未启用MCSIO缓存时,vsimmax User在128gb硬盘上的得分为61分,在64gb SSD盘上的得分为74分,在128gb SSD盘上的得分为75分。在标准HDD磁盘上启用MCSIO缓存实际上比SSD提供了更好的性能,在64gb HDD上启用4gb缓存时,得分提高到76分,在2gb缓存时,得分提高到77分。在4 GB和2 GB缓存大小之间的额外用户的损失归因于用于缓存的额外RAM,而不能用于用户工作负载。

虽然MCSIO有助于降低每用户每小时的成本,但这个数字本身并不重要。当查看最终用户体验时,可以确定MCSIO的真正影响。下图显示了使用MCSIO时的平均响应时间下降。

MCSIO登录响应

建议

如果用户体验是考虑性能的驱动因素,我们建议启用MCSIO缓存。启用后,建议使用带有2GB缓存的标准磁盘,因为这样可以在不影响用户密度的情况下提供最佳改进。但是,不能在内存受限的虚拟机上启用MCSIO缓存,例如为计算优化的F或FS系列实例类型,但它们的内存与cpu核心比率较低。

与Windows Server操作系统相比,Windows 10的多会话可扩展性如何?

随着Windows Server 2019和Windows 10多会话操作系统的发布,我们认为最好提供一些关于客户端操作系统如何影响可扩展性的指导。Windows Server 2019和Windows 10多会话操作系统都需要更新的Citrix VDA 1906.1版本。Windows 10 Multisession可与Azure虚拟桌面(AVD)授权一起使用,并授予租户虚拟机的基本价格(Linux定价)。该授权还将虚拟机定价扩展到Windows Server 2016和Windows Server 2019。

下图显示了在相同的D4_v2 (8 vCPU, 28 GB RAM)实例上使用Citrix VDA版本1906.1与Windows Server 2016进行相同的测试运行时的密度变化。下面的价格是使用与所需的AVD授权一致的Linux VM定价。

操作系统性能

分析

与Windows Server 2016的结果相比,Windows Server 2019的知识工作者和任务工作者的用户密度都略低,任务工作者的用户密度下降了7%,知识工作者的用户密度下降了12%。

将Windows Server 2019与Windows 10进行比较,多会话工作负载减少了19%的任务工作者和32%的知识工作者。这种性能下降是意料之中的,因为Windows 10是一个完整的客户端版本,没有针对基于服务器的计算(如Windows Server 2016和Windows Server 2019)进行优化。

使用Windows 10 Multisession的一个成本优势是它不需要客户端连接到虚拟机的RDS CAL许可证。这种成本优势不包括在上面的计算中,因为它是每小时Azure成本之外的微软许可成本。

建议

当计划从Windows Server 2016升级到Windows Server 2019时,预计虚拟机的数量将增加约10%。如果您计划使用Windows 10 Multisession来托管需要Windows客户端兼容性的应用程序,请记住,密度将更低,导致比服务器操作系统大约30%的额外成本。Windows 10 Multisession允许用户访问Windows商店,这是服务器操作系统不可用的。

结论

选择用于部署Citrix虚拟应用程序工作负载的Azure实例类型是决定用户密度和可伸缩性的关键因素,进而决定Azure交付模型的每用户成本。如图所示,Azure中的不同实例类型对于特定的工作负载具有优势,例如高计算需求或额外内存。通常,具有标准HDD磁盘和启用2GB MCSIO缓存的D13_v2实例以最低的成本提供最佳的用户性能。当您需要Windows Store、应用程序兼容性或真正的Windows客户端体验时,请考虑使用Windows 10 Multisession操作系统。

这里给出的Citrix on Azure结果仅代表配置Azure解决方案的指导方针。如果您没有关于特定用户工作负载的数据,我们在这里提供的数字可以作为您的设计估计。在做出最终的规模和部署决策之前,我们强烈建议您使用自己的工作负载在不同的Azure实例类型上运行概念验证测试,然后将该数据用于最终设计。

了解更多

有关在Microsoft Azure云服务上部署Citrix Virtual Apps工作负载的详细信息,请参阅Citrix和Microsoft合作伙伴网站//m.giftsix.com/global-partners/microsoft/resources.html

设计决策:在Azure上交付思杰虚拟应用程序和桌面服务的可扩展性和经济性