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

简介:

 新浪微博:@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,如需转载请自行联系原作者




相关文章
|
5月前
|
自然语言处理 算法 测试技术
【数据结构原理】系统生命周期 | 算法规范 | 笔记
【数据结构原理】系统生命周期 | 算法规范 | 笔记
43 0
|
16天前
|
算法 项目管理 数据中心
【数据结构】拓扑网络(AOE算法举例+源码)
【数据结构】拓扑网络(AOE算法举例+源码)
【数据结构】拓扑网络(AOE算法举例+源码)
|
1月前
|
存储 NoSQL 关系型数据库
第5章:知识存储:概述、方法、实战
第5章:知识存储:概述、方法、实战
第5章:知识存储:概述、方法、实战
|
3月前
|
存储 NoSQL MongoDB
请解释一下文档存储数据库的工作原理,并提供一个使用文档存储数据库的实际应用场景。
请解释一下文档存储数据库的工作原理,并提供一个使用文档存储数据库的实际应用场景。
42 0
|
11月前
|
存储 编译器 C++
【C++】深度剖析string类的底层结构及其模拟实现(一)
【C++】深度剖析string类的底层结构及其模拟实现
166 0
|
11月前
|
存储 算法 Linux
【C++】深度剖析string类的底层结构及其模拟实现(二)
【C++】深度剖析string类的底层结构及其模拟实现(二)
72 0
|
存储 XML 编译器
【C#基础】C# 程序通用结构
编程语言C# 程序结构的介绍 。
175 0
【C#基础】C# 程序通用结构
|
程序员
图解计算机中数据的表示形式
应很多小伙伴的要求,我开了一个新的专题【程序员进阶系列】,在这个专题中,我会跟大家分享有关计算机和软件的一系列 底层 知识,让小伙伴们更好的理解计算机的底层架构知识,能够更好的提高自身的编程能力和软件设计能力。本篇就作为整个专题的开篇,希望能够为小伙伴们带来实质性的帮助。
229 0
图解计算机中数据的表示形式
|
数据库
【自然框架】之通用权限(一):简介、数据结构
      这次要写一整套的权限方面的文章了,无论我的想法好与不好,先写出来请大家来评判。这个系列我要详细的说明我的权限的思路、想法、实现方式、代码和Demo。可能有人会说,通用是达不到的,最多只能无限接近。
1013 0
【自然框架】内部类库、控件的引用关系(最新整理,基本稳定)
  和以前相比,减少了一个项目,把Control_Interface合并到CommonFunction里面。这样引用关系就简单多了。   基本上分为三个层次:类库、自定义控件、页面基类。其中的 MetaData 负责元数据的定义和加载。
627 0