图解软件定义存储-百炼钢成绕指柔

简介:

 新浪微博:@frankfan7 邮件:frank@GetToCloud.com

实现软件定义的数据中心,软件定义的运算、网络还有存储,一个都不能少。继图解网络虚拟化之后本文揭开软件定义存储这位神秘女郎的面纱,看看她是如何化百炼钢成绕指柔

面临挑战

第一个挑战是设计复杂。存储一直是虚拟化架构设计中最关键的环节之一。很多性能的问题都和存储有关。虚拟化架构师需要了解很底层的存储设备及其特性,需要在IOPSLatency和容量等各个方面优化。另外存储的分层、扩展和运维都有很多考虑的方面。

第二个挑战是费用昂贵。如果数据量很大,特别是用存储光纤网络(SAN)的情况下,那是虚拟化平台烧钱的很大一块,平庸的存储设计看起来四平八稳循规蹈矩,殊不知可能会在存储上开销很大。

机会来了

近年来存储技术的发展,本地HDD的价格相对于SAN来说要便宜很多,最大容量期望在2016年达到60TB。价格甚至可以到几分美金/GB。同时SDD的迅猛发展,很大解决了由于IOPS导致的性能问题。价格低到1美金/IOPS.  那么人们有会问了,如果把本地HDDSDD结合起来,是不是既解决了容量,又保证了性能呢?

想法是好,技术上实现的难度也不大,可关键是后期如何有效的管理存储资源就是一个挑战了。

 百炼钢(硬件+软件实现存储虚拟化)

这种模式在运算集群和底层存储阵列之间加入了中间层,典型代表是Datacore SanSymphony-V 和 IBM SVC。 运算集群和中间层通讯就可以,无需了解太多底层的硬件设备特性。这个好处就是有很大灵活性,可以采用不同厂家的存储设备来满足不同的需要。同时扩展也比较容易。

 绕指柔初级(软件实现存储虚拟化)

实现虚拟存储的中间层更向前发展了一步,用虚拟机代替了原来的硬件设备。比如HP Leftehand Virtual SAN Appliance VMware VSA.    

这种模式与DAS结合起来,有很大的用武之地,比SAN要便宜。同时管理上也不算太麻烦。甚至有预测说DAS将会慢慢成为主流。

需要特别强调的是,中间层虽然是用虚拟机实现的,但架构没有本质变化,运算层和存储虚拟层还是分离的。这就意味着除了管理运算层之外,你还需要特别管理存储虚拟层。

 绕指柔高级 VWware分布式存储)

 

分布式存储的主要特点是:

  • ·         完全在Hypervisor层实现,无需其他硬件和软件。
  • ·         与已有的vSphere管理整合,极大的简化了存储层的管理。
  • ·         充分利用DRS实现对运算、存储和网络资源的全面优化分配
  • ·         存储策略的制定可以具体到某个VM
  • ·         扩展性和存储集群

       ESXi主机可以选择把自己本地的存储贡献给Distributed StorageDS采用RADI-1在不同主机的本地存储间同步。这样就保证了在任何本地存储损坏的情况下,还有另外一个备份能正常运行

 小结:

由我们以上的分析,可以看到存储虚拟化发展的一个清晰的脉络,由硬件+软件到软件独立实现,进一步又发展到整合在Hypervisor中。好处显而易见,成本降低,管理简化,而且增加了更多突出的特性。

需要关注的另一个方面是,传统的存储硬件厂商在存储虚拟化的浪潮中选择什么策略呢?以后我们再另文分析吧。

参考

本文插图及部分分析参考了下面一些文章。

A Preview of Distributed Storage

 VMware Distributed Storage – This is Where the (Cloud) World Collapses

 INF-STO2192 – Tech Preview of VMware Distributed Storage

RE: Is VSA the future of Software Defined Storage? (OpenIO)














本文转自frankfan751CTO博客,原文链接: http://blog.51cto.com/frankfan/1189333,如需转载请自行联系原作者




相关文章
|
1月前
|
存储 NoSQL MongoDB
请解释一下文档存储数据库的工作原理,并提供一个使用文档存储数据库的实际应用场景。
请解释一下文档存储数据库的工作原理,并提供一个使用文档存储数据库的实际应用场景。
30 0
|
1月前
|
存储 算法 搜索推荐
请解释一下图形存储数据库的工作原理,并提供一个使用图形存储数据库的实际应用场景。
请解释一下图形存储数据库的工作原理,并提供一个使用图形存储数据库的实际应用场景。
33 0
|
8月前
|
机器学习/深度学习 存储 算法
MXNet定义计算步骤的方式以及数据流编程和 Symbol
MXNet定义计算步骤的方式以及数据流编程和 Symbol
658 0
|
存储 C语言
基于C语言的分页管理方式下存储分配情况模拟
基于C语言的分页管理方式下存储分配情况模拟
65 0
基于C语言的分页管理方式下存储分配情况模拟
通过代码加解析的方式带领大家分析 :数组与指针的关系
通过代码加解析的方式带领大家分析 :数组与指针的关系
51 0
通过代码加解析的方式带领大家分析 :数组与指针的关系
|
存储 SQL 缓存
存储一对一源码数据,可以使用哪些工具
使用图形数据库,一对一源码可以将数据用图片的形式进行存储,而且它使用了灵活的图形模型,可以部署到多台服务器上。
|
程序员
图解计算机中数据的表示形式
应很多小伙伴的要求,我开了一个新的专题【程序员进阶系列】,在这个专题中,我会跟大家分享有关计算机和软件的一系列 底层 知识,让小伙伴们更好的理解计算机的底层架构知识,能够更好的提高自身的编程能力和软件设计能力。本篇就作为整个专题的开篇,希望能够为小伙伴们带来实质性的帮助。
218 0
图解计算机中数据的表示形式