[zt] 比较两大虚拟桌面厂商的系统镜像管理

而Citrix采用了更廉价更聪明的做法。既然磁盘操作是计算环节中最慢的部分,那我就尽量避免它。Citrix在其两种镜像管理方法中都使用了镜像缓存技术来分担对共享存储的压力。例如PVS, 镜像不再是从共享存储上直接访问,而是由“Provisioning Server”来统一分发。“Provisioning Server”会将母版镜像缓存在内存中,通过网络流送给虚拟桌面。由于整个路径上都是电气信号的转换,所以性能比磁盘的机械操作要快得多。大家可以参考以下视频,更直观地了解PVS的开机性能(Ardence是Citrix收购前的名称)
MCS+IntelliCache方法则是将集中于中央共享存储的压力分摊到每一个虚拟桌面宿主服务器上。一般宿主服务器上都配有本地硬盘,这些硬盘空间不用白不用。当宿主服务器加载第一个虚拟桌面时,系统镜像就被缓存在本地存储上,当后续虚拟桌面开机时,宿主服务器如果发现使用的是相同模板(通常就是),就直接从本地存储读取,不再访问共享存储了。如果桌面是可回收类型的,那么用户在桌面上的写操作也全部发生在服务器本地,不会写到共享存储上。因为当用户登出时,虚拟桌面上的临时改变都会被丢弃。
无论是PVS还是MCS都是想方设法将共享存储上的IOPS卸载下来,从而降低虚拟桌面方案对高端共享存储的依赖性。有客户做了一个简单的测试,结论是VMware的Link Clone技术所需的IOPS大致是Citrix的1.5倍以上。VMware也认识到自己方案的不足,在其后期版本中也规划了类似于Citrix Intellicache技术的缓存方法。由于该技术尚未发布,本文暂不做评价。
后记:这篇文章引起了很多的争论。有必要澄清一下。
使用PVS时,既可以创建“个人专用桌面”,也可以创建“浮动分配桌面”。 PVS你可以把他简单理解成一个你“自制的IP-SAN的存储”。只不过这个“自制存储”仅用来分发系统镜像,是只读的。而你原有的共享存储主要用来保存用户数据,是可写的。很多人会质疑PVS的性能,通过网络流送OS image,会在网络中出现瓶颈。其实拿IP-SAN来做参照,大家都要对外提供基础镜像,都是走的IP协议,IP-SAN你就不担忧吗?PVS直接将OS Image 加载到内存中向外分发,它不会比IP-SAN从磁盘读还慢。引入PVS方案,会增加Server的数量,但它的好处就是让你有了突破传统存储瓶颈,具备横向扩展的能力。传统存储出现瓶颈,你只能Scale UP,大家都知道动存储是个很麻烦的事情,但是PVS出现瓶颈,你可以通过加网卡或者增加PVS Server的方式Scale out。以上比喻仅限于桌面虚拟化系统基础镜像场景。大家不要衍生到其他可横向扩展的存储技术领域。
No related posts.
28Dec2011

