桌面虚拟化包含有很多不同的虚拟桌面。其中一项是采用主机共享的模式,发布的桌面包含在Citrix XenApp服务器中。
创建一个共享桌面的设计目标之一是尝试和最大限度地提高可靠性的同时提供最好的用户体验。托管共享桌面提供了一个比其他桌面虚拟化技术更好的优势,只需要一个单一的操作系统,这大大降低了用户资源的需求并帮助用户提高可扩展性。
然而,为了满足最大用户数的使用,是的资源分配合理是至关重要的。创建虚拟机太多或太少都会对可扩展性造成负面影响。
此规划指南提供在Windows Server 2003或者Windows Server 2008上的托管共享桌面的最佳资源分配建议。
注:尽管这些最佳做法是基于托管共享桌面的基础上,但是他们仍然适用于只发布虚拟应用的环境中。
一般情况下,当决定使用XenApp应用虚拟化服务器时,其最主要目标是可以在单个硬件服务器上支持更多的用户使用。然而,其他的一些指导方针,也可以实现此目标,但是没有遵循提供一个最佳可靠性的方法。业务结构、成本和运营项目在选择一个针对XennApp的虚拟化策略时也发挥着重要的作用。
物理服务器的CPU核数与内存不断增加,但是一些比较旧的操作系统,如windows Server 2003,不能够充分利用这些硬件的改进。这里有一些选项可以用来尝试扩展系统的可扩展性,比如使用Windows 2003中的PAE选项。虽然这些选项帮助增大了单个服务器的可扩展性,他们往往不提供足够的价值以便充分利用一个服务器。
为了创建一个适当的,可扩展的Xenapp虚拟化解决方案,必须有一定数量的虚拟机和虚拟机规范之间实现负载平衡。
更多的虚拟服务器意味着更多的管理活动。这是一个决定性因素当决定是否需要更多或更少的服务器时。例如,如果十台服务器托管虚拟服务器,而不是四个,即产生20多台服务器去管理,维护,故障排除和支持。
但是,如果采用单一的映像管理方案,例如Citrix Provisioning Services, 是业务方面的管理更多的虚拟服务器实例变得无关紧要,因为所有的虚拟服务器是基于一个单一的主映像。
如何影响应用的服务器进行虚拟化的应用特点及用户活动的基础上。
l 资源需求:某些应用程序对CPU或者内存有重大影响。这些应用特点在如何分配vcpu和内存上起着重要的作用,假设这些要求没有超出操作系统的最大限制。
l 用户活跃度:在许多实施中,组织会与其他服务器放置在一块或创建单独的XenApp服务器来承载不同的应用。与其他应用服务器单独放一块会直接影响虚拟服务器的资源分配。如果服务器包含了一组很少使用的应用程序,去创建更小的虚拟机而不是虚拟服务器实例,预计将承载更多的用户。
虚拟机规范必须与应用程序集的设置和与其使用情况相配合。
许多组织采用虚拟化XenApp服务器是为了选择使用实时迁移功能,其中一个虚拟机可以从一个宿主机实时迁移到另外宿主机而不影响活动的用户会话。这在定期硬件维护时是非常有用的。关闭虚拟机将可能会影响剩余的XenApp会话仍处于活动状态,这就是为什么一些组织利用实时迁移功能。然而,一个虚拟己的大小,可以潜在地限制了灵活性。
当所有的事情都是平等的,更小的虚拟机提供了更大的灵活性,特别是从虚拟机的放置角度。例如,往往是移动4个虚拟服务器(4vcpu and 8GB of RAM)比移动一个单个的,大的虚拟机(16 vCpus with 32GB of RAM)要简单,为了确保成功迁移一个虚拟服务器,新的主机必须确保有足够的可用资源来支持虚拟机。当虚拟机资源分配更小,这是很容易的。
当你在体积庞大的虚拟机,较小的虚拟机提供了更大的灵活性。如果这种灵活性级别不是必须的,更大的虚拟机是最佳的,因为更少的资源被用于操作系统。
微软的许可非常明确地说明了物理/虚拟服务器需要多少个license。
l Windows Server 2003/2008 Standard: Each license provides one physical server and one virtual server, although standard is limited to four physical processors.
l Windows Server 2003/2008 Enterprise: Each license provides one physical server and four virtual servers, although Enterprise is limited to eight physical processors.
l Windows Server 2003/2008 Datacenter: A Datacenter license is required for every processor on the physical server, and allows for any number of virtual servers.
在确定花费多少关联在运行功能角色的windows server操作系统上取决于创建的虚拟机的数量。作为一个例子,从授权的角度看,他是最好的,创建4个包含6vcpu的虚拟机,或者6个4vcpu的虚拟己机假设可扩展性会小吗?4个虚拟机模型的结果是会在微软操作系统授权上保持比较低的成本。
此外,使用一个功能,例如XenMotion,Live Migration或者vMotion也会影响授权。标准版与企业版针对虚拟机的license授权是紧紧与物理服务器结合的,如果虚拟己在一个企业版服务器上迁移到另外一个物理服务器,新的物理服务器必须要有足够的license以支持当前迁移过来的虚拟机负载。
Note:微软已经更新了2012的授权,如果需要使用XA6.5的话,请参考windows server2012的降级说明,以及授权说明。
对于大多数组织而言,总体目标是在不影响用户体验的情况下,从物理硬件上获取最大的用户密度。基于生产部署,大量的案例研究并考虑到在本文档前面提到的指引,以下XenApp虚拟机配置的初步建议。
注1:针对Windows 2003(32位)的配置,额外的虚拟机应该使用较少的CPU数量,否则内存相对于vCPU将达到一个瓶颈。
注2:32位操作系统可以使用超过4GB的内存,如果使用PAE选项调用。这可能会降低虚拟机的数量,但是结果好坏参半。
注3:页面文件针对32位操作系统通常是1倍或1.5倍。针对64位操作系统,以上方法同样适用,但是这可能会导致过大的页面文件。针对64位操作系统,最好监控服务器并按照下面网页中推荐的方法。http://support.microsoft.com/kb/2021748/en-us?sd=rss&spid=12925
注4:64位操作系统假设有必要的灵活性与实时迁移功能,更大的虚拟机也是可以的,如果对灵活性没有要求的话。
无论VM的分配如何决定,以下为当虚拟化XenApp服务器时的通用建议。
Decision |
Justification |
Hypervisor |
|
过量使用CPU: No |
建议不要分配超过物理硬件逻辑Cpu的vCpu分配,经验表明,更高的可扩展性取决于不超量使用CPU。 |
Hyper-V XenServer vSphere |
|
使用超线程: Yes |
较新的处理器可以使用超线程技术,每个核心是两个逻辑内核,利用超线程在XenApp可以用来提高用户密度。但是,如果推荐不开启CPU亲和力当VM使用超线程的时候。 |
Hyper-V XenServer vSphere |
|
Disable ASLR: No |
由于许多组织试图保护自己的XenApp服务器免受病毒、恶意软件和其他操作系统漏洞的威胁,最好是保持ASLR处于启用状态,这是默认设置。这项功能包含在WS08 R2,Win Vista和Win7中。 |
Hyper-V XenServer vSphere |
|
Enable Transparent Page Sharing: Depends on OS |
启用或禁用透明也共享在新的操作系统(WS08,WS08R2,WinVista,Win7)上不会对性能造成帮助或损害。然而旧版本操作系统(WS03,WinXP)将会有益处,主要是因为页面大小比较小(4k),从而更容易共享内存页。 |
vSphere |
|
Optimize for XenApp: N/A |
在使用pre-Nehalem架构的处理器上,在XenServer设置“针对XenApp优化”提供了增强的可扩展性。在Nehalem架构发布之前,大部分的功能防止在硬件上,所以可以忽略这个特定的XenServer设置。 |
XenServer |
|
Disk Alignment(磁盘队列): Yes |
作为主机服务器将会运行多个实例的服务器操作系统,相对于但操作系统来说,他更重要的事优化磁盘子系统以提高性能和可扩展性。Windows 2003的默认安装位置不同。应该正确地安装去帮助减小存储的影响。 |
XenServer Hyper-V vSphere |
|
Memory Allocation: Fixed (固定) |
当用户在XenApp服务器间动态地负载均衡,内存占用在不同的虚拟机间应该是相同的,否则需要动态内存分配技术。另外,如果使用VM迁移策略,这可能会导致内存过量使用的结果和性能表现不佳横跨所有的XenApp虚拟机。可取的做法是为XenApp虚拟机的内存设置为固定值。 |
XenServer Hyper-V vSphere |
|
Host Swapping: No |
在大多数环境中,所有XenApp服务器都在活动地承载用户在同一时间。XenApp主机的交换内存页会降低性能, 所有的虚拟机内存会从磁盘中读取、写入。 |
vSphere |
|
Dynamic Power Savings: No |
为了节省电力,BIOS设置为允许处理器自动降频。然而,虚拟机管理程序可能无法调整BIOS设置,当需要CPU全功率运行时。这将导致资源无法得到充分利用。 |
XenServer Hyper-V vSphere |
|
本文档可针对XenApp 6.5,6,5,4.5