1、自从服务器虚拟化 10 年前进入大家的视线,它就给存储经理人带来了很大的麻烦。据Taneja Group 最近的调查,很多这种麻烦都远没有解决。在最近所做的虚拟服务器存储的最终用户调查中,我们发现一半以上的存储管理员都在他们的虚拟服务器环境中遇到了一个或者更多的下列存储相关问题: 可扩展性:服务器整合带来了对存储和 I/O 资源的争夺,使得在一个系统上可以有效地运行的虚拟机数量受到限制。 性能:由管理程序发起的在多个虚拟机上出现的重复的小包 I/O 操作所带来的乘法效应,能够使存储性能瘫痪。 灵活性:在一个重度集成的环境中,平常的管理任务比如创建和配置一个虚拟机,向新的服务器转移负载和无间断地
2、在阵列之间移动一个虚拟机磁盘文件,都可能会非常繁琐耗时。这些问题在一个 VMware vSphere/ESX 环境中又加剧了,因为 VMware 管理器驱动存储的模式对存储供应商提出了一些严峻的挑战。VMware 虚拟机文件系统(VMFS)成为在虚拟服务器和存储之间的连接中额外的一层,使得供应商们难于使原生的、基于阵列的存储能力为VMware 用户和应用所用。因为最近多数的存储操作都被 vSphere/ESX 用软件模拟了,用户不能利用阵列硬件提供的更高的性能。显然,适合这些功能的地方是在阵列内部。Citrix 系统公司在 2009 年发布 SLtorageLink时首先演示了这个技术,使得基
3、于 XenServer 的应用可以直接利用基于阵列的功能。但是VMFS 层使 VMware 驱动的应用无法完全使用阵列的能力。幸运的是,通过 vSphere 4.1 的 vStorage,VMware 给存储厂家提供了自己处理这些存储事务的办法。vStorage API for Array Integration阵列集成 vStorage API(VAAI)被设计来改善主存储集成。通过移出虚拟机应该由存储级别进行的操作例如存储vMotion,虚拟机配置和克隆VAAI 使存储供应商可以应对那些可能妨碍了 VMware 服务器虚拟化的存储问题。我们来看看 VMware 特定的存储问题还有主要存储供
4、应商现在提供的VAAI 能力如何应对这些问题。1、LUN 级别锁定引起的受限的虚拟机扩展性。在较早版本的 vSphere 和 ESX 服务器中,类似创建、迁移和对 VM 做快照的操作每次访问共享的存储都会使得一整个 LUN 被预留。管理器通过使用 SCSI 预留来实现 LUN 级别的锁定操作,这需要多个 SCSI 命令。不幸的是,LUN在被锁定的时候对其他虚拟机不可用,结果就是资源争夺和性能的降低。一个 VAAI 的功能 HAL(Hardware Assisted Locking硬件辅助的锁定)使得存储可能使用一个高效的 SCSI 命令,以块级别进行锁定,而不是以卷(LUN)级别进行。同时访问
5、降低争夺; 一个 LUN 上的多个虚拟机不再陷入一个一次次锁定和解锁 LUN 的延迟竞争里。更重要的是,这会解放管理员去在忙时做更大范围的存储密集型事务(克隆、快照、格式化等等),而不会影响应用的性能。2、低效和重复的写操作。在 VAAI 之前,很多的 vSphere 常用操作,包括从模板配置虚拟机以及扩展一个精简配置的虚拟磁盘(VMDK),与块级存储之间的交互都很低效。vSphere/ESX 会通过重复地执行 SCSI 写操作和在网络中传送一堆零来把空的数据块(全零)写到阵列中。而通过 VAAI 的新的零块功能,构建全零数据块的工作量可以被卸载到阵列上,降低服务器产生的 I/O 和传输的数据
6、。当 VMFS 遇到全零的数据块时,写操作可以被替换为一个 SCSI WRITE_SAME 命令,这个命令包括了一个扇区的数据以及一个这个扇区应该在磁盘上被重复多少次的计数器,更有用的是在阵列上的精简配置技术可以识别输入的全零写操作并彻底地避免向磁盘上写入空数据。3、又慢又耗资源的虚拟机克隆和数据迁移。在 vSphere 和 ESX 的较早版本中 VMware 拷贝操作,例如虚拟机克隆和存储 vMotion 都是通过使用上百万的背对背、小块 I/O 操作实现的,小数据块从阵列移动到主机(通过 SCSI READ 读命令)又移动回去(通过 SCSI WRITE写命令)。这个方式极度 I/O 集中
7、而且消耗大量的物理服务器和网络资源。http:/VAAI Full Copy 完全拷贝功能将其彻底改变了。和全零块操作类似,完全拷贝可以完全在阵列内部执行块操作(复制或者移动),使用 SCSI Extended Copy(XCopy 扩展拷贝)命令而不用牵扯到主机。扩展拷贝使服务器硬件 I/O 最少化并降低网络带宽的使用,扩展拷贝操作还可以执行的明显更快速。存储控制器可以使用它们全部的内部带宽,优化的机制和对负载的感知来以最高的效率移动数据,而不需不必要地使用控制器宝贵的缓存。vSphere 4.1 中的 vStorage 套件包括了大大超出主要存储的功能,包括了可以实现更好的备份处理的机制,深层快照或者连续数据保护集成以及更多。如果你是一个 VMware 用户,vStorage 是一个很好的理由来考虑使用 vSphere 4.1。vStorage 可能会在你数据存储基础架构符合你的虚拟架构需求的程度方面产生很大的变化。不管你是在考虑主要存储、数据保护、复制还是一些你的架构的别的部分,你应该特别问问你的存储供应商,他们是否能使用 vStorage 和 VAAI 功能。本文章由 51 知识库整理共享: http:/