虚拟桌面架构将虚拟化架构由专注于数据中心的服务器、存储和网络扩展至用户桌面上。VDI已经为不少企业使用,即便是还未进入生产阶段,仍是得到了许多公司的评估。企业选择VDI的很大的一个原因是解决桌面管理问题,确保满足企业法规遵从,降低终端用户计算设备成本。
VDI项目的首要准则就是给终端用户的体验等同或者超过专有桌面和笔记本的效果,VDI相关产品例如Citrix的XenDesktop和VMware的Horizon View都有类似的特性能满足目标。
由于VDI的架构是让成百上千甚至更多的分布在各地的桌面和笔记本迁移到数据中心里,对数据中心本身架构的要求,尤其是存储及IT的相关支持能力对于VDI项目实施的成功与否尤其重要。大多数针对VDI场景的顾虑都与架构本身相关,比如不充足的架构管理能力和稀缺的IT支持人员参与等。
了解VDI架构下存储的挑战
充分考虑下的存储架构是VDI项目成功的核心要求之一。将所有用户的操作系统镜像和数据存放在集中存储中,这就需要VDI架构下的存储能做到不被干预的高可用性及持续的存储性能表现能力。而现有的为非VDI场景下使用的存储架构无法满足VDI架构下的需要,是因为在VDI架构下应用负载是不太一样的。对于VDI来说,通常在启动的时候会产生大量的读操作,在相同的一块物理存储数据块上产生大量重复操作,导致了读IOPS的激增。在桌面启动完成后,这样的高读操作的模式将会发生变化,负载变得讲义写操作为主,因为用户本身将有一些办公相关的操作进行,例如写邮件,使用微软Office办公套件等。随着大量的桌面并发产生大量的操作负载,VDI架构对于存储的需求需要有足够的能力满足相应的负载。除了性能方面的挑战,VDI也会对存储管理有更多的要求。随着越来越多的用户使用VDI场景,让存储系统上的VDI用户上升到一个全新的水平,能够及时的监控,报告以及解决VDI架构下的所有问题将变得格外重要。针对单独桌面的存储性能追踪对于判定和快速修复问题有格外的效果。
作为StorageIO杂志的创始人和高级分析师表示,“将大量的桌面放置在一起可能会让问题变得更糟,除非对系统的监控、报警、报告以及自动化做了相应的考虑。”
高可用性是VDI架构中核心考虑的因素之一。对于传统桌面用户来说,磁盘故障影响的是一个单独的用户;然而对VDI场景,成百上千甚至成千上万的用户都将受到影响。
可扩展性对于VDI架构来说则是另外一个方面的挑战,也是需要考虑的问题。那些能够实现所谓垂直扩展的系统,例如增加磁盘容量,增加控制器和内存以提升性能等并不意味着能够实现横向扩展。因此,对于横向扩展存储系统来说,他们增加容量和提升性能的方式是横向的增加节点,这对VDI存储架构来说是非常重要的。
哪些技术和存储实现方式适用于VDI场景
部署VDI系统并不意味着需要重新部署一套全新的存储系统,尤其是现有存储架构满足可扩展性和高可用性需求的时候,或者可以通过升级改变现状,满足需求。如下的一些存储技术可以能够更好的帮助支持VDI。
NAND闪存。随着IOPS数量的激增以及毫秒级别对IOPS的响应要求,NAND闪存相比与传统机械磁盘带来了更好的性能。在专有桌面场景中,NAND闪存已经成为了降低存储系统IOPS且减轻响应延时的首选之一,也是存储系统按需响应VDI场景的推荐配置之一。假想一下在启动风暴发生的时候,大批量的桌面的虚拟机文件同时从共享存储里面启动会有怎样的问题,假设我们将这些虚拟机镜像由传统的机械磁盘迁移到固态存储中,存储系统的支撑将更为强大。
NAND闪存对于VDI虚拟桌面架构的意义远大于仅解决启动风暴问题,存储厂商们提供的方案层出不穷,从将固态硬盘和机械硬盘混合到全闪存阵列解决方案。NAND闪存同样可以以缓存的形式来替代机械磁盘。由于NAND闪存可以以多种形式提升存储性能,那么在如何将其最大功效发挥出来的问题上需要有一些关键的考量。
闪存作为缓存。将闪存盘放在传统机械硬盘的前端作为缓存使用有不少好处。首先,对于闪存的性能优势加速了应用访问存储系统的效率。缓存机制本身就可以满足在无需额外数据迁移的前提下,满足数据在闪存及后端存储之间传输的要求。另外,将闪存和机械磁盘混用降低了整体成本,且提升了整体存储响应效率。许多存储厂商都愿意在他们的存储解决方案中将闪存放进来,例如像EMC的VNX存储里的Fast Cache技术以及NetApp存储里的Flash Cache技术。
根据来自EMC产品市场部的高级总监Jonathan Siegal的说法,“VNX阵列在VDI场景通常会配比3%-5%的闪存盘,剩下的磁盘空间则有大容量的传统磁盘,他们大约可以用于支撑1,000台左右的虚拟桌面。”
SSD磁盘作为机械磁盘的替代品。混合阵列,即将SSD磁盘和传统的机械磁盘混合使用模式,是将闪存优势结合在传统存储的又一方式。闪存除了作为缓存部分能够与传统存储整合外,还可以简单的作为机械磁盘的替代或者补充。不同的混合阵列的差别也在于它们支持闪存的效率以及闪存与二级存储之间数据迁移的效率。两个层级之间数据的迁移可用是手工完成的也可以是全自动完成的。比如说,NetApp Flash Pool将SSD及机械磁盘混放在一个资源池里,并会将闪存上的活跃数据自动拷贝一份;Nimble Storage公司则有其专利的缓存假设顺序格式(CASL),以提升混合磁盘之间的数据交互效率。
全闪阵列。全闪阵列是所有解决方案中性能最佳,且成本最高的方式,在大规模的VDI场景下建议考虑。来自EMC的Siegal说,“我们的全闪可扩展XtremIO阵列能够支持成千上万的VDI桌面。”因为不是所有的全闪阵列都具备企业级存储特性,例如快照功能及精简配置功能,在面临选择的时候需要根据需求进行验证。传统的存储厂商更可能提供需要的存储特性,在选择小众厂商或者初创厂商生产的全闪阵列的时候则需要更为谨慎,例如像SolidFile他们的横向扩展的全闪阵列,即便他们拥有业界领先的技术。
数据删减技术。由于磁盘镜像本身涵盖大量的相同数据,VDI场景也是数据删减技术的适应场景。在VDI场景中,存储的重删功能和压缩功能也是在选择的产品的时候必须考虑的因素。一些厂商像NetApp使用重删的方式是后处理方式,即写到磁盘后再进行重删操作;其它的厂商,例如SolidFile,Tintri和EMC的XtremIO,使用了在线重删的技术。来自位于马萨诸塞州麻省ESG的实验室分析师Aviv Kaufmann表示,“许多新兴的全闪阵列系统都能实现在线重删,这也是技术发展的趋势,而不是后处理方式。”如果在VDI层面上已经使用了数据删减架构的话,数据重删比率则会下降,例如在VMware的linked clones技术或者是Citrix的PVS技术。EMC的Siegal表示,“对XtremIO来说,在linked clone部署模式下,我们常见的去重比大约为3:1;全克隆模式的去重比大约为12:1。”
QoS。一套没有QoS功能的存储系统将所有的存储请求优先级设为一致,可以有效的限制一套存储系统可以服务的应用数量及种类。而配有QoS支持的存储系统则能够根据应用场景不同,将请求进行隔离处理,例如VDI桌面的请求和来自其它服务器的应用请求可以相互不影响的进行,即便他们共享了同一个共享存储。举个例子,在2014年6月举办的ESG lab会上,ESG使用SolidFile VDI架构的后端存储,模拟了1000用户的VDI启动风暴,在该场景下,VDI镜像与另外的数据库系统共享着相同SolidFire阵列,期间产生了20,000个IOPS。在QoS开启的情况下,数据库的性能影响几乎没有;而在QoS关闭的模式下,ESG lab发现了数据库性能明显的下滑,因为VDI的启动风暴几乎耗尽了所有的资源。
存储管理。因为同时访问存储系统的虚拟桌面数量是激增的,存储管理对于VDI场景来说,显得尤为重要。从资源分配的时候就需要开始考虑:新的虚拟桌面在分配存储资源的时候,需要有单一的管理控制口。监控,报警及报告机制对于VDI存储性能优化也必不可少。类似像LoginVSI这样的工具,可以用于性能测试,容量规划及VDI场景的性能规划上,能够在问题发生前让我们可以及时避免。分析功能,例如像Nimble Storage的InfoSight,能够持续收集数据,直到发现并解决问题,这也是主动存储管理的典范操作。能够将特定的虚拟桌面和某个存储组件关联起来,对于快速定位和解决问题也是相对必要的,这在传统的LUN或者卷级别存储系统管理里是很大的挑战。还有一些存储厂商依赖于相关虚拟机和存储组件的报告、融合存储系统,例如Nutanix、SimpliVity及Tintri,它们对存储的管理在单个的虚拟机级别上。“从资源提供,快照发生及将向QoS配置信息复制以确保虚拟机不要占用太多整体资源,Tintri管理存储的角度集中在虚拟机层面上。”Tintri公司存储管理及市场技术副总裁Saradhi Sreegirira ju表示。
有关VDI存储最后的话
如果希望能顺利部署虚拟桌面场景,必须从业务场景出发,提供至少等同或者更好的用户体验,而并不是让后续运维的IT人员感到苦恼。使用合适的技术和足够的IT资源来支持关键的VDI服务是十分必要的。如果用户环境和用户本身能够被很好的理解,且项目得到了较好的规划,成功的几率也会大很多。如果可能,在项目开始之前进行一次方案验证工作。