固态存储对服务器虚拟化的影响 |
发布时间: 2012/8/11 10:00:22 |
当你想到服务器虚拟化时,你可能会想到大的物理主机和强大的轻量级系统管理软件。但不太明显的却是NAND闪存技术在服务器虚拟化中扮演的关键角色。
这变得越来越明显,就像热狗上的芥末,小小的闪存可以让虚拟化好得多。或者,如企业策略集团分析师马克·彼得斯更加清楚地指出,“少量使用固态存储的明智决定可以提高性能。” 由于固态存储设备的性能远远超过了一个个磁盘,你会觉得更多地使用固态存储会更有意义。也就是说,全是芥末,没有热狗。 但这么做的意义真的不大,彼得斯认为,“除非或等到所有存储设备都一个价,或者免费。” 本质上,只需要固态存储的虚拟化应用是端点解,用经济学术语来讲。这些应用确实存在,但更有可能情况是依照价格,性能等等的最佳解决方案会是这两者的平衡点。 亚马逊显然认为,公共云计算的数据库需要端点解,其EC2服务现正提供一个高输入/输出的四倍超大(hi1.4xlarge)虚拟机实例类型。虽然这一开始听起来像是“查理和巧克力工厂”里的某种糖果吧,hi1.4xlarge实际上是一个配有两个1TB固态硬盘的EC2实例。 在4k随机读取方面,hi1.4xlarge在使用准虚拟化的虚拟机时提供了120,000的IOPS,使用标准虚拟机时为90,000。“使用15000转磁盘你最好也就能看到超过100多一点的IOPS”,亚马逊首席技术官沃纳·威格尔说。“尽管总存储的角度看,固态硬盘仍然比较昂贵,但从IOPS的角度,它们是更加具有成本效益解决方案。” 抛开端点解,服务器虚拟化是如此常见这意味着有很多虚拟主机想要通过连接某种形式的混合存储而获得更好的性能,而不是普通的光纤通道和SAS阵列。这就解释了之所以一些混合阵列存在的原因,而且也有助于揭示专用的混合存储设备和其他为虚拟化环境而优化的设备人气飙升的秘密。 混合存储设备,从对Tintri和Nutanix的喜爱把固态存储带到了物理主机上,在这里它们可以从固态存储上在必要时以高速储存和提供常用数据,而把其他的部分交给更廉价,低性能的硬盘驱动器。 这也解释了固态存储的巨大缓存在服务器虚拟化主机内部的作用。像OCZ,Fusion-io,EMC和LSI这样的公司正促进固态存储器的合理使用,通过PCIe接口直接与系统总线关联,同时利用它们专有的软件使闪存存储器可以被运行在主机上的所有虚拟机使用。 OCZ的软件叫作VXL,Fusion-io提供了io-Turbine,EMC有VFCache,LSI则出售其NytroXD解决方案。这背后的想法都是一样的:通过让虚拟机与闪存缓存直接沟通,让闪存缓存以一种更加优化,连续的方式把数据写入外部存储系统,来加快应用程序性能并解除I/0瓶颈。 储存分级的想法本身并不是新的,但令人吃惊的是在使用服务器虚拟化技术的地方,使用闪存分级已变得司空见惯的程度的速度。一个原因是价格在近几年迅速降低,而与此同时存储性能问题已经变得越加紧迫。 闪存技术价格在接下来的一段时间会继续下降,而且随着缓存算法变得更加高效,看来我们越来越想把钱花在闪存上了 缓解存储对虚拟服务器的制约 服务器虚拟化所带来的最大挑战之一就是如何应付多个VM在一个物理主机上运行来带来的高I/O水平,所有I/O都要通过主机上运行的一个虚拟机管理器。目前越来越流行的一个解决方案就是安装一个虚拟化高速缓存--通常是数百GB的快速固态记忆体--在处理器旁边使用一个PCIe主线连接。 如果再加上在虚拟机管理器和客机操作系统中运行的应用程序层面的高速缓存软件,用户可以有效地将后端存储系统的IOPS(每秒输入输出)卸载到高速缓存,从而减轻存储系统的压力,降低延迟性,有效加快应用程序速度。提供这种类型固态高速缓存和软件的厂商包括Fusion-io(ioTurbine软件)、OCZ(VXL产品)和SanDisk(FlashSoft产品)。 这股将存储技术应用到虚拟化中的潮流还在继续。这些存储技术包括动态分层存储阵列(比如EMC和NetApp的产品),服务器这边的SSD设备(包括Tintri、Nimble、Nutanix和StorSimple的产品)。 另一个解决方案就是所谓的存储虚拟机管理器,它进一步将存储在VM层次上呈现。一个例子就是加州Virsto提供的产品。它的存储虚拟机管理器被安装为每个物理虚拟化主机上的虚拟设备,然后它可以干涉处理那些原来正常情况下应该直接给虚拟机管理器的I/O请求。这些I/O请求被写入到一个日志文件,然后以优化的方式写入到一个异质共享存储池中,在底层虚拟磁盘的自动精简配置功能的帮助下,这种方式可以将性能提升10倍,也就是说可以将存储要求降低至多90%. ESG的Peters表示:“我很赞成使用存储虚拟机管理器。如果你虚拟化了所有其他东西,那为什么不像Virsto那样把存储放在一个存储池中来管理呢?” 自动精简配置在用于虚拟化架构的时候可以带来很多好处。根据ESG进行的研究,大约一半的公司浪费了一半的存储容量。虚拟化要求大量的存储,而自动精简配置可以帮助确保这些存储没有被浪费。Peters表示:“每个人都应该使用自动精简配置。” 然而,一个让人惊讶的事实是,根据一位厂商提供给Peters的数据,只有大约一半的企业在使用自动精简配置技术。他表示:“许多组织甚至是没有开启这个功能。” 当然,在一些情况下,自动精简配置也许不是一个好主意--例如,它不适合用于那些存储要求变化非常剧烈和快速的应用程序。不过Peters认为在许多情况下自动精简配置只是因为保守主义而没有被使用。 这里边还有另一个因素。Ovum首席分析师RoyIllsley表示,在那些已经虚拟化了任务关键型应用程序的公司中,很少有公司愿意在这些应用程序上使用自动精简配置。“它们最终会使用,但是要想实现这点,它们将需要某种形式的复杂的自动配置系统。”自动系统现在就已经存在,不过Illsley表示还是需要那种可以帮助提供稳定的服务水平的东西。 这可能涉及存储分层或是那种可怀疑将数据分配到不同存储层(通常是根据数据访问频率)的存储系统。Illsley建议自动存储分层系统可以使用类似VMTurbo产品那样的技术来提高使用的经济性:放弃根据使用频率将数据自动分配到各个存储层的做法,VM或应用程序可以根据分配的“预算”从存储系统中“购买”不同的存储层。 通过为重要的应用程序分配更高的预算,自动系统可以确保不同的存储层以更有效的方式进行数据分配。 本文出自:亿恩科技【www.enkj.com】 |