云连接器的大小和规模考虑因素
在评估Citrix DaaS(以前称为Citrix Virtual Apps and桌面服务)的规模和可伸缩性时,要考虑所有组件。针对您的特定需求,研究和测试Citrix Cloud Connectors和StoreFront的配置。为大小调整和可伸缩性提供的资源不足会对部署的性能产生负面影响。
注意:
这些建议适用于用于Azure的Citrix DaaS标准除了Citrix DaaS之外。
本文详细介绍了已测试的最大容量和Cloud Connector机器配置的最佳实践建议。在配置了StoreFront和本地主机缓存(LHC)的部署上执行了测试。
所提供的信息适用于每个资源位置包含VDI工作负载或RDS工作负载的部署。对于同时包含VDI和RDS混合工作负载的资源位置,请联系Citrix咨询服务。
云连接器通过以下方式将您的工作负载链接到思杰DaaS:
- 为vda和Citrix DaaS之间的通信提供代理
- 为Citrix DaaS与活动目录(AD)和管理程序之间的通信提供代理
- 在包含StoreFront服务器的部署中,云连接器在云中断期间充当临时会话代理,为用户提供对资源的持续访问
让您的云连接器适当地调整大小和配置以满足您的特定需求是很重要的。
每一组云连接器被分配到一个资源位置(也称为区域)。资源位置是一种逻辑分离,它指定哪些资源与一组云连接器通信。每个域至少需要一个资源位置才能与Active Directory (AD)通信。
每个机器目录和主机连接都分配给一个资源位置。
对于具有多个资源位置的部署,请将机器目录和vda分配到资源位置,以优化LHC在中断期间代理连接的能力。有关创建和管理资源位置的详细信息,请参见接入思杰云。为获得最佳性能,请在与vda、AD服务器和管理程序的低延迟连接上配置云连接器。
推荐的处理器和存储
要获得与这些测试类似的性能,请使用支持SHA扩展的现代处理器。SHA扩展减少了CPU上的加密负载。推荐的处理器包括:
- 高级微设备公司(AMD) Zen和更新的处理器
- 英特尔冰湖和更新的处理器
本文中描述的测试是使用AMD EPYC和Intel Cascade Lake处理器执行的。
云连接器在与云通信时具有沉重的加密负载。使用带有SHA扩展的处理器的云连接器在其CPU上的负载较低,这表现为Windows本地安全授权子系统服务(LSASS)的CPU使用率较低。
Citrix建议使用具有足够的每秒I/O操作(IOPS)的现代存储,特别是对于使用LHC的部署。建议使用固态硬盘(ssd),但不需要高级云存储层。LHC场景需要更高的IOPS,其中云连接器运行数据库的小副本。该数据库随着站点配置的定期更改而更新,并在Citrix Cloud中断时为资源位置提供代理功能。
本地主机缓存的推荐计算容量
本地主机缓存(LHC)允许在云连接器无法与Citrix Cloud通信时继续部署中的连接代理操作,从而提供高可用性。
云连接器运行Microsoft SQL Express Server LocalDB,它在安装云连接器时自动安装。Cloud Connector的CPU配置,特别是SQL Express Server LocalDB可用的内核数量,直接影响LHC的性能。SQL Server Express Server LocalDB可用的CPU核数比内存分配对LHC性能的影响更大。只有在LHC模式下,当Citrix DaaS不可达且LHC代理处于活动状态时,才会观察到这种CPU开销。对于使用LHC的任何部署,Citrix建议每个插槽有四个内核,每个Cloud Connector至少有四个CPU内核。有关为SQL Express Server LocalDB配置计算资源的信息,请参见不同版本SQL Server的计算容量限制。
如果SQL Express Server LocalDB可用的计算资源配置错误,则可能会增加配置同步时间,并且可能会降低中断期间的性能。在某些虚拟化环境中,计算容量可能取决于逻辑处理器的数量,而不是CPU内核的数量。
测试结果摘要
本摘要中的所有结果都是基于本文详细部分中配置的测试环境的结果。不同的系统配置可能产生不同的结果。
该图给出了测试配置的图形概述。
此表提供了一个快速指南来确定资源位置的大小。要支持比这里显示的最大值更大的工作负载,请添加更多的资源位置。
结果基于Citrix内部测试。描述的配置在不同的工作负载下进行了测试,包括高速会话启动测试和注册风暴。
媒介 | 大 | 最大 | |
---|---|---|---|
的共识 | 1000 VDI或100 RDS | 5000 VDI或500 RDS | 1万个VDI或1000个RDS |
主机连接 | 20. | 40 | 40 |
用于连接器的cpu | 2个vCPU | 4个vCPU | 4个vCPU |
连接器存储器 | 4 GB | 4 GB | 6 GB |
测试方法
执行测试以增加负载并测量环境组件的性能。通过收集性能数据和过程计时(如登录时间和注册时间)来监视组件。在某些情况下,使用专有的Citrix仿真工具来模拟vda和会话。这些工具旨在以与传统的vda和会话相同的方式运行Citrix组件,而不需要相同的资源需求来托管真实的会话和vda。针对使用Citrix StoreFront的场景,在云代理和LHC模式下进行了测试。
本文中关于云连接器大小的建议基于从这些测试中收集的数据。
运行了以下测试:
- 会话登录/启动风暴:模拟高容量登录周期的测试。
- VDA注册风暴:模拟大量VDA注册期的测试。例如,遵循升级周期或在云代理和本地主机缓存模式之间进行转换。
- VDA动力动作风暴:模拟大量VDA电源动作的测试。
测试场景和条件
这些测试是在配置LHC的情况下执行的。有关使用LHC的更多信息,请参阅本地主机缓存篇文章。LHC需要一个本地StoreFront服务器。有关StoreFront的详细信息,请参阅店面产品文档。
关于StoreFront配置的建议:
- 如果单个StoreFront服务器或服务器组具有多个资源位置,请启用StoreFront商店的高级运行状况检查选项。看到店面的要求请参阅本地主机缓存文章。
- 要获得更高的会话启动率,请使用StoreFront服务器组。看到配置服务器组在StoreFront产品文档中。
测试条件:
- CPU和内存需求仅针对基本操作系统和Citrix服务。第三方应用和服务可能需要额外的资源。
- vda是运行Citrix virtual Delivery Agent的任何虚拟机或物理机。
- 所有测试的vda都使用Citrix DaaS进行电源管理。
- 测试了1000到10000个VDI或200到1000个RDS的工作负载。
- 每个资源位置测试了多达20,000个RDS会话。
- 使用一个云连接器执行测试。高可用性需要两个云连接器。Citrix建议在部署云连接器时使用N+1冗余模型,以维护与Citrix Cloud的高可用性连接。
- 使用配置了英特尔Cascade Lake处理器的云连接器执行了测试。
- 会话通过单个Citrix StoreFront服务器启动。
- 在机器重新注册后,LHC中断会话启动测试。
RDS会话计数是一种建议,而不是限制。在您的环境中测试您自己的RDS会话限制。
媒介工作负载
这些工作负载使用4个vcpu和6 GB内存进行测试。
测试工作负载 | 现场条件 | VDA注册时间 | 注册CPU和内存使用情况 | 发射试验长度 | 会话启动CPU和内存使用情况 | 发射率 |
---|---|---|---|---|---|---|
VDI 1000 | 在线 | 5分钟 | CPU最大值= 36%,CPU平均值= 33%,内存最大值= 5.3 GB | 2分钟 | CPU最大值= 29%,CPU平均值= 27%,内存最大值= 3.7 GB | 每分钟500 |
VDI 1000 | 停机 | 4分钟 | CPU最大值= 11%,CPU平均值= 10%,内存最大值= 4.5 GB | 2分钟 | CPU最大值= 42%,CPU平均值= 28%,内存最大值= 4.0 GB | 每分钟500 |
200个RDS, 5000个会话 | 在线 | 3分钟 | CPU最大值= 14%,CPU平均值= 4%,内存最大值= 3.5 GB | 9分钟 | CPU最大值= 46%,CPU平均值= 21%,内存最大值= 3.7 GB | 每分钟555 |
200个RDS, 5000个会话 | 停机 | 3分钟 | CPU最大值= 15%,CPU平均值= 5%,内存最大值= 3.7 | 9分钟 | CPU最大值= 51%,CPU平均值= 32%,内存最大值= 4.2 GB | 每分钟555 |
大的工作量
这些工作负载使用4个vcpu和8 GB内存进行测试。
测试工作负载 | 现场条件 | VDA注册时间 | 注册CPU和内存使用情况 | 发射试验长度 | 会话启动CPU和内存使用情况 | 发射率 |
---|---|---|---|---|---|---|
VDI 5000 | 在线 | 3 - 4分钟 | CPU最大值= 45%,CPU平均值= 25%,内存最大值= 7.0 GB | 5分钟 | CPU最大值= 75%,CPU平均值= 55%,内存最大值= 7.0 GB | 每分钟1000元 |
VDI 5000 | 停机 | 4 - 6分钟 | CPU最大值= 15%,CPU平均值= 5%,内存最大值= 7.5 GB | 5分钟 | CPU最大值= 45%,CPU平均值= 40%,内存最大值= 7.5 GB | 每分钟1000元 |
500个RDS, 10000个会话 | 在线 | 3分钟 | CPU最大值= 45%,CPU平均值= 25%,内存最大值= 7.0 GB | 10分钟 | CPU最大值= 75%,CPU平均值= 55%,内存最大值= 7.0 GB | 每分钟1000元 |
500个RDS, 10000个会话 | 停机 | 3分钟 | CPU最大值= 15%,CPU平均值= 5%,内存最大值= 7.5 | 10分钟 | CPU最大值= 45%,CPU平均值= 40%,内存最大值= 7.5 GB | 每分钟1000元 |
最大工作负载
这些工作负载使用8个vcpu和10 GB内存进行测试。
测试工作负载 | 现场条件 | VDA注册时间 | 注册CPU和内存使用情况 | 发射试验长度 | 会话启动CPU和内存使用情况 | 发射率 |
---|---|---|---|---|---|---|
VDI 10000 | 在线 | 3 - 4分钟 | CPU最大值= 85%,CPU平均值= 10%,内存最大值= 8.5 GB | 7分钟 | CPU最大值= 66%,CPU平均值= 28%,内存最大值= 7.0 GB | 每分钟1400元 |
VDI 10000 | 停机 | 4 - 5分钟 | CPU最大值= 90%,CPU平均值= 17%,内存最大值= 8.2 GB | 5分钟 | CPU最大值= 90%,CPU平均值= 45%,内存最大值= 8.5 GB | 每分钟2000元 |
1000个RDS, 20000个会话 | 在线 | 1 - 2分钟 | CPU最大值= 60%,CPU平均值= 20%,内存最大值= 8.6 GB | 17分钟 | CPU最大值= 66%,CPU平均值= 25%,内存最大值= 6.8 GB | 每分钟1200元 |
1000个RDS, 20000个会话 | 停机 | 3 - 4分钟 | CPU最大值= 22%,CPU平均值= 10%,内存最大值= 8.5 | 21分钟 | CPU最大值= 90%,CPU平均值= 50%,内存最大值= 7.5 GB | 每分钟1000元 |
注意:
这里显示的工作负载是一个资源位置的最大推荐工作负载。要支持更大的工作负载,请添加更多的资源位置。
配置同步资源使用情况
配置同步过程使云连接器与Citrix DaaS保持同步。更新将自动发送到云连接器,以确保云连接器在发生中断时准备好接管代理。配置同步更新LHC数据库,SQL Express Server LocalDB。该流程将数据导入到临时数据库,然后在导入后切换到该数据库。这确保了总是有一个LHC数据库准备接管。
在将数据导入临时数据库时,CPU、内存和磁盘的使用率会暂时增加。
测试结果:
- 数据导入时间:7 - 10分钟
- CPU使用率:
- 最大值= 25%
- 平均= 15%
- 内存使用情况:
- 最大= 9 GB
- 增加大约2 GB到3 GB
- 磁盘使用情况:
- 4 MB/s的磁盘读峰值
- 18mb /s的磁盘写峰值
- 在下载和写入xml配置文件时出现70mb /s的磁盘写峰值
- 导入完成时的4 MB/s磁盘读尖峰
- LHC数据库大小:
- 400 - 500mb数据库文件
- 200-300 MB日志数据库
测试条件:
- 测试在一个8 vCPU AMD EPYC
- 导入的站点配置数据库适用于站点范围内总共有8万个vda和30万个用户的环境(每班10万个用户)。
- 在具有10,000个VDI的资源位置上测试了数据导入时间
其他资源使用考虑事项:
- 在导入过程中,将下载完整的站点配置数据。此下载可能会导致内存峰值,具体取决于站点的大小。
- 测试站点使用了大约800 MB的数据库和数据库日志文件。在配置同步期间,这些文件被复制,最大组合大小约为1600 MB。请确保您的Cloud Connector有足够的磁盘空间用于复制的文件。磁盘空间已满会导致同步配置失败。