首页 > 代码库 > PVS让存储颤抖,系列博文之五:PVS的写缓存新技术之总结篇
PVS让存储颤抖,系列博文之五:PVS的写缓存新技术之总结篇
总结和参数推荐
从上面大量的测试结果中我们可以看出来,新的PVS的写缓存技术对于存储读写显著减少可以大量消除你去购买昂贵的SAN 存储的必要性,无论你是用于XenApp还是池化桌面都是完全适用。PVS的这个特性产生的原因其中之一就是因为它改变了I/O写入磁盘的模式。一个XenApp或者是一个VDI传统上都是发送大部分的4K大小的随机写操作到磁盘中,对于硬盘来说这是最吃力的大小,这也是为什么VDI方式对SAN产生压力的主要原因。当配置了Cache in RAM with Hard Disk Overflow后,所有的I/O操作首先被写入到内存中,而这点读写对内存完全不是问题。当内存满了必须溢出到磁盘中时,他会写入到磁盘上的VHDX文件中,而写入的时候通常都是以2MB大小为一个单位写入的,VHDX文件的每2MB大小的数据块能极大的提升性能。
最后我们给一些总结的观点:
PVS的写缓存技术“Cache in RAM with Hard Disk Overflow”确实能把每用户的IOPS减少到不到1个IOPS;
以后的VDI项目你不再需要考虑购买昂贵的Flash盘或者是SSD硬盘,这能极大的降低VDI项目的成本,现在开始购买SATA硬盘吧!
不管你的内存有多少,所有实用PVS的最终用户都建议把你们的环境升级到PVS 7.1,并且启用该特性;
这个功能使用的是非页面的池内存(non-paged pool memory),所以只有当这个内存区域有富余的时候才有效果。如果你的操作系统本身内存就捉襟见肘,所剩无几,就无法再分配任何内存空间给写缓存了。此外,这个写缓存的一个非常好的技术特点就是当缓存中的文件/数据块被删除之后这种缓存类型他是可以释放不用的内存空间和硬盘空间。在之前的PVS版本中,一旦一个数据块被写入到了内存中或者是磁盘中,即使被删除了他也是不会被释放的,这就是为什么你在共享存储上为一个Windows 7的虚拟机配置了6G,甚至8G、10GB的写缓存仍然需要一个星期,或者几个星期就要重启一次的原因。现在这种重启的需求已经不复存在,只要你规划合理,内存被耗尽的风险几乎是非常非常小的;
对于VDI负荷来说,即使是一个较小的内存设置量也能显著的提高性能。我们推荐为Windows 7的虚拟机配置至少256MB的缓存,要求大于等于256MB;
对于32bits的Windows 7来说配置256MB的缓存内存量;
对于Windows 64bits的虚拟机来说一般需要分配3 – 4GB的内存量,我们推荐分配512MB的内存给写缓存;
对于超过4GB内存的Windows 7 64bits的虚拟机,建议分配超过512MB的内存给写缓存内存区,具体多少你看着办吧;
对于XenApp类型的虚拟机来说,建议分配至少2GB空间用于写缓存内存区;相信在现在的服务器上,内存已经不是太大的问题了,所以为了尽可能的提高性能如果有可能请分配超过2GB的内存空间。例如,你的XenApp分配到了16GB的内存空间,建议至少分配4GB的空间给PVS的写缓存内存区。当然,你可以在不同的数值之间测试一下看看哪个最好;
祝你一切顺利!
本文出自 “Citrix的虚拟世界有你有我” 博客,请务必保留此出处http://virtualworld.blog.51cto.com/1412963/1537683