SDN(软件定义的网络,Software Defined Network)一词可以说是最近的新热点,而近日在北京举办的vForum 2012大会分会场一的主题则是“软件定义数据中心”。Data Center中涉及到各种领域的技术我并不都熟悉,因此还是主要关注存储方面。
何谓软件定义的存储?vSphere哪些方面仍待提高?
由于软件定义的存储(Software Defined Storage)如今还没有严格的概念,在一个或者几个x86服务器硬件上聚焦于闪存加速的产品可以从狭义的角度来对号入座?
VMware 在软件定义的存储方面的实现与OpenStack在架构上比较相似,当然也有自己的特点。
下面笔者将把“VMware主题演讲: 软件定义的存储-VMware存储策略展望”中一些我们认为值得关注的要点分享给大家,并简单谈谈自己的感受。这一节的主题演讲可以大致分为2个部分:软件定义的存储,以及Virtual Volume/Virtual Flash。
现有的vSphere解决了一部分问题,但是还有很多方面可以提高…
如上图,在当前vSphere 5.1中的存储特性包含三个部分:
1. 数据服务和策略——配置文件驱动的存储、Storage I/O Control、vSphere数据服务(包括快照、克隆、复制、数据保护、精简配置)
2. 完整性——Storage API(包括用于阵列集成的VAAI、存储感知管理的VASA;VADP则是在提供对备份软件API接口的同时,还增加了结合VMware母公司EMC Avamar技术的vSphere Data Protection解决方案)
3. 数据移动性——Storage DRS(分布式资源调度)、Storage vMotion虚拟机迁移。
如果能够… 根据一定策略把异构的存储设备抽象成虚拟资源池?
根据这张演讲PPT,底层为不同的异构存储硬件,可以有SAN、NAS,也可以是服务器本地DAS直连的SSD(固态盘)或者传统HDD硬盘。向上聚合到 A和B两个虚拟存储池中,这就是VMware所谓的“软件定义的存储(Software Defined Storage)”?
虚拟存储池已经为你的虚拟机实现了不同的policy(策略),你在创建一个虚拟机的时候只需要制定这个虚拟机的具体策略。
在基于虚拟机的软件定义存储策略向导下,我们可能只需设定一个VM的大小(比如初始预留10GB,上限100GB)、RTO(恢复时间点为3小时)和IOPS性能(预留不低于200,上限为1000)。
在理想的情况下,任何存储上运行的应用都能够在用户定义的策略驱动下自动工作。通过让存储了解虚拟机的信息(而不是像VASA那样感知阵列设备),以及Virtual Flash来增强SAN/NAS。
vSphere横向扩展直连存储(DAS)——我们曾经在VSA(vSphere Storage Appliance)软件产品以及之后来自国外的一些消息中注意到,VMware逐渐强调对DAS的利用,因为这样相对于集中式共享存储系统具备成本优势,并且上层的软件功能完全由VMware提供,把握住了“软件定义存储”的主导权。
VMware分布式存储:应用场景、VSA对比
这里的分布式存储,以及存储与计算整合的概念,与当下流行的Hadoop架构有相似之处。
VMware提出将存储和计算在vSphere的环境下整合起来,用vCenter进行统一管理。效果是使存储能够容易扩展,并且可以利用SSD进行缓存(应该指上面提到的Virtual Flash),内置冗余功能(多副本?);减少在存储上的资金投入。
未来的VMware分布式存储,与vSphere现在提供的数据服务功能紧密结合。
高效方面,基于SSD的Cache——为吞吐率和延迟做了优化,类似于EMC VFCache、Fusion-io ioTurbine、LSI Nytro那样的服务器闪存缓存产品,但使用的闪存介质应该更灵活。
扩展性方面,可以动态地扩展到vSphere集群中的每一台服务器。
高可用性方面,分布式冗余机制保证无单点失效,同时吞吐率达到高带宽环境要求。
上面的应用场景包括虚拟桌面(VDI)、测试和开发、大数据和灾难恢复的目标端,好处我就不再重复了。一方面我们没有看到像OLTP这类关键应用;另外在大规模的VDI部署中,是否使用高速的共享闪存阵列来存放对性能要求最为苛刻的用于链接克隆的OS Golden Image(黄金镜像),或者像Greenbytes那样带有重复数据删除的胖克隆VDI存储更为合适呢?
首先,VSA针对小规模部署提供简单的共享存储,后者则是可扩展的分布式存储;VSA是个虚拟设备,而Distributed Storage集成在vSphere里;目标市场一个是中小型企业和分支机构,另一个是企业级;VSA只支持2-3台物理服务器,而 Distributed Storage可以达到整个集群系统。
此外,VSA没有SSD缓存且最多支持16TB的容量;Distributed Storage支持SSD缓存,管理上与vCenter整合。
放眼未来的架构、部署VM更加迅速
让我们从下往上看:左边是对现有传统存储SAN/NAS的提升——提交为虚拟卷,可以继续保留合作伙伴的数据服务(即传统存储阵列厂商的精简配置、快照、闪存优化等软件功能);右边为使用服务器内置硬盘实现水平扩展(Scale-out)——分布式存储。
接下来是VMware的数据服务,分布式存储主要依赖这些了;再往上是基于策略的存储管理,构成了整个“软件定义存储”架构。
VMware号称“对所有类型的应用在各种存储设备上实现自动化管理”,笔者认为在当前基础上最大的改进是“深蓝色”部分,也就是对DAS的支持,实现目前磁盘阵列普遍具备的主要软件功能。
在vSphere 4时代,部署一台虚拟机需要经过:确定需求——找到最优化的datastore——创建VM,后面还有定期检查的步骤。到了vSphere 5之后,由于加入了Storage DRS和配置文件驱动的存储(我理解是Storage I/O Control和VASA的进一步发展),可以在初始创建时发现存储特性并将datastore分组,然后选择虚拟机的Storage profile。
未来,整个步骤将简化为指定VM SLA(服务等级协议)——创建VM,因为一切都是以虚拟机为核心设计的——这就是VMware软件定义存储的野心吧?届时的这个版本,可能会是vSphere 6…