ChinaByte比特网

http://storage.chinabyte.com/291/12477791_2.shtml

11月29日(文/黄亮)- SDN(软件定义的网络,Software Defined Network)一词可以说是最近的新热点,而上周在北京举办的vForum 2012大会分会场一的主题则是“软件定义数据中心”。Data Center中涉及到各种领域的技术我并不都熟悉,因此还是主要关注存储方面。

何谓软件定义的存储?vSphere哪些方面仍待提高?

  几个月前,笔者曾在《Fusion-io软件定义存储:全闪存阵列DIY时代?》一文中介绍了ION(离子)软件方案,之后的《Mellanox VSA:集闪存和网络虚拟化之大成?》也属于类似的产品,由于软件定义的存储(Software Defined Storage)如今还没有严格的概念,这些在一个或者几个x86服务器硬件上聚焦于闪存加速的产品可以从狭义的角度来对号入座?

  上个月我们还对杭州的华数云平台进行了采访,里面有谈到开源OpenStack存储管理——“存储架构优先基于OpenStack Swift模块进行设计;可以使用各种存储介质作为虚拟机的可分配存储资源,包括本地存储、NAS、FCSANIP SAN分布式存储。”这个可以理解为跨不同虚拟化Hypervisor平台广义的软件定义存储(数据中心),而华数“下一步还要做对VMware新出来的云管理平台等一些第三方支持”。

  看完本文,您会发现VMware这方面的实现与OpenStack在架构上比较相似,当然也有自己的特点。

  下面笔者将把“VMware主题演讲: 软件定义的存储-VMware存储策略展望”中一些我们认为值得关注的要点分享给大家,并简单谈谈自己的感受。这一节的主题演讲可以大致分为2个部分:软件定义的存储,以及Virtual Volume/Virtual Flash。本文先讨论第一部分。

现有的vSphere解决了一部分问题,但是还有很多方面可以提高...

  如上图,在当前vSphere 5.1中的存储特性包含三个部分:

  1. 数据服务和策略——配置文件驱动的存储、Storage I/O Control、vSphere数据服务(包括快照、克隆、复制、数据保护、精简配置)

  2. 完整性——Storage API(包括用于阵列集成的VAAI、存储感知管理的VASAVADP则是在提供对备份软件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。

  注:关于Virtual Flash,笔者将在“VMware的存储野心(下篇)”中为大家介绍,请继续关注。

  vSphere横向扩展直连存储(DAS)——我们曾经在VSA(vSphere Storage Appliance)软件产品以及之后来自国外的一些消息中注意到,VMware逐渐强调对DAS的利用,因为这样相对于集中式共享存储系统具备成本优势,并且上层的软件功能完全由VMware提供,把握住了“软件定义存储”的主导权...(接下页)

VMware分布式存储:应用场景、VSA对比

VMware分布式存储技术——存储和计算的整合

  这里的分布式存储,以及存储与计算整合的概念,与当下流行的Hadoop架构有相似之处。

  VMware提出将存储和计算在vSphere的环境下整合起来,用vCenter进行统一管理。效果是使存储能够容易扩展,并且可以利用SSD进行缓存(应该指上面提到的Virtual Flash),内置冗余功能(多副本?);减少在存储上的资金投入。

  未来的VMware分布式存储,与vSphere现在提供的数据服务功能紧密结合。

  高效方面,基于SSD的Cache——为吞吐率和延迟做了优化,类似于EMC VFCache、Fusion-io ioTurbine、LSI Nytro那样的服务器闪存缓存产品,但使用的闪存介质应该更灵活。

  扩展性方面,可以动态地扩展到vSphere集群中的每一台服务器

  高可用性方面,分布式冗余机制保证无单点失效,同时吞吐率达到高带宽环境要求。

VMware分布式存储的主要应用场景

  上面的应用场景包括虚拟桌面(VDI)、测试和开发、大数据和灾难恢复的目标端,好处我就不再重复了。一方面我们没有看到像OLTP这类关键应用;另外在大规模的VDI部署中,是否使用高速的共享闪存阵列来存放对性能要求最为苛刻的用于链接克隆的OS Golden Image(黄金镜像),或者像Greenbytes那样带有重复数据删除的胖克隆VDI存储更为合适呢?

VMware VSA(vSphere Storage Appliance)与分布式存储的对比

首先,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...

  关于Virtual Volume(虚拟卷)和Virtual Flash(虚拟闪存),我们将在下一篇中继续讨论。

最新文章

  1. 9月23日JavaScript作业----用DIV做下拉列表
  2. 第10章 使用Apache服务部署静态网站
  3. [译]rabbitmq 2.2 Building from the bottom: queues
  4. 如何使用IAR仿真环境查看CPU类型字长?
  5. python 实现excel转化成json文件
  6. SpringMVC+Spring+hibernate整合及分页
  7. 小tips:用java模拟小球做抛物线运动
  8. spring的Convert机制
  9. 51 Nod 1057 N的阶乘【Java大数乱搞】
  10. linux 硬软链接区别
  11. 关于iOS9 HTTP不能正常使用的解决方法
  12. [译]Ocelot - Configuration
  13. ANSI C、ISO C、Standard C联系与区别
  14. 20145203盖泽双 《网络对抗技术》实践九:Web安全基础实践
  15. plsql 操纵表数据的2种方式
  16. shell分析日志常用指令合集
  17. openstack--8--控制节点部署Dashboard
  18. Markdown进阶指南
  19. a5调试
  20. java代码水仙花

热门文章

  1. 在CentOS4上安装JMagick
  2. View Programming Guide for iOS_读书笔记
  3. Java 字符串包含
  4. 使PropertyGrid控件的属性值可以显示多行的方法
  5. Git每次进入都需要输入用户名和密码的问题解决
  6. 在linux下创建自定义service服务
  7. curl win
  8. 【转】解决Android因加载多个大图引起的OutOfMemoryError,内存溢出的问题
  9. Asp.Net Core获取当前上下文对象
  10. 虚拟私有云(Virtual Private Cloud,专有网络)配置方式总结