在本文中,我们将与广大读者一起来仔细分析一下当前推动着软件定义的存储市场的力量都有哪些;软件定义的存储都有哪些不同的类型;以及每种不同类型的各自的优缺点。
在当前的存储领域,恐怕再没有比“软件定义的存储”(SDS)这一概念术语更能引起更多的意见分歧了。鉴于关于软件定义的存储在业界尚未有一个被普遍广泛接受的定义,SDS都是存储供应商们所特定的。存储供应商们打造了SDS这一定义,以匹配他们的存储产品。其结果是,每一家存储供应商似乎都在提供不同的SDS产品。
最接近的软件定义的存储市场已经对SDS形成了一种一致性的共识,即:其更多的是市场架构(marketecture)的概念,而非单纯的架构。
软件定义的存储将数据存储硬件从对其实施管理的软件进行分离。存储软件本身是独立于硬件的。通常,存储控制面板是(但不总是)与数据面板分离的。
这种宽泛的定义推动了当前存储的每一种变化。所以,这将需要由软件定义的存储市场的企业消费者们自己来确定哪些产品才是最适合他们的。
SDS发展趋势背后的推动力
所有的存储系统都一直是软件定义的。所改变的仅仅只是:该软件已成为便携式。
存储系统软件历来都被捆绑到其所管理的硬件上。当硬件的容量或性能超负荷时,就必须实施更换了,届时企业组织客户将需要与更换的硬件设备一起,再次购买软件许可。
更糟糕的是,存储系统架构创建了孤立的筒仓孤岛。独特的基础设施使得包括从存储配置、数据保护、灾难恢复、技术更新、数据迁移、电力和冷却在内的一切变得越来越站不住脚。而再加上数据的快速增长的趋势,以及对于存储需求不断增长的数据量的增长,现有的架构使得存储系统的管理过于复杂、困难、成本造价昂贵,且最终难以维护。
几大技术因素也同时对推动软件定义的存储市场成为一个现象作出了其贡献。首先,是x86计算架构性能不断的提升所引发的直接的结果。x86性能的改进和针对特定存储功能的内核的可用性,导致x86的架构标准化了存储系统。
帮助推动SDS的另外一项技术因素是服务器、桌面台式机、应用程序和网络(SDN)对于x86虚拟化的普遍接受。其已帮助IT调节适应受理来自其所驻留的硬件中的数据图像的分离。
云技术的普及对于推动软件定义的存储市场也发挥着重要的影响。根据行业标准和商品化的硬件,云数据中心需要一种新的、低成本的存储架构。
推动SDS的其他技术因素包括:服务器端闪存技术、以及允许内存和服务器存储与其他物理服务器主机实现透明的共享的软件。
所有的这些技术因素改变了服务器和存储硬件之间区别,同时加速了存储软件的可移植性和灵活性,以及最后但却不是不重要的:也从根本上降低了存储成本。
不同SDS类别各自的利弊分析
鉴于当前业界对于软件定义的存储尚未形成一个普遍公认的标准化定义,使得各种各样的相关技术已经在软件定义存储市场兴起了。在我们看来,当前市场上的SDS大致可分为如下四类:
· 基于Hypervisor的SDS
· 超融合基础设施(HCI)SDS
· 存储虚拟化SDS
· 横向扩展(Scale-out)的对象或文件S DS
在这些类别的产品中,即存在着显著的差异,也有同样有着显著的相似性。并且有几款产品可能适合于多种分类类别;而有些产品则可能是其所属分类类别的唯一产品,如PernixData或Saratoga Speed。
由于SDS把重点集中在了灵活性、简单性、可扩展的性能和总拥有成本(TCO)方面,我们将用这些标准来评价每种SDS方法各自不同的优缺点。
基于Hypervisor的SDS
VMware公司通过其VMware vSphere Virtual SAN企业存储解决方案产品发明了这一类的SDS产品。这是这款特定产品的唯一分类类别。虚拟SAN被架构设计成为vSphere的一部分,作为vSphere的一项功能运行,并能够与所有的vSphere虚拟机和虚拟桌面台式机兼容。虚拟SAN运行在ESXi层,这意味着其不是一款虚拟存储设备,并不需要一台虚拟机来执行。
基于Hypervisor的SDS的优点:
灵活性。虚拟SAN可以与硬盘驱动器(HDD)和固态硬盘(SSD)包括基于DIMM的闪存驱动器、PCIe、SAS、SATA甚至NVMe兼容工作。VMware的虚拟SAN以混合模式支持HDD和SSD;或全闪存模式 的所有SSD固态硬盘。
可扩展性和性能。虚拟SAN具有高度可扩展性,同时提供很高的性能水平。其通过vSphere集群进行扩展,每个cluster服务器集群可以支持高达64组vSphere主机。每台vSphere主机支持大约140 TB的原始存储容量,每个cluster服务器集群具备8 PB的原始存储容量。在性能方面,每台虚拟SAN主机可提供高达90,000 IOPS,每个集群可以产生超过500万的IOPS。
简单性。虚拟SAN是简单的。因为其本身天然地集成整合成为了VMware堆栈的一部分。对于vSphere管理员而言,这种感觉就像所有其他的功能一样,非常直观。在每台虚拟机的基础上,虚拟SAN自动存储任务,如配置、快照/数据保护、高可用性、弹力集群、灾难恢复和业务连续性。即使将数据迁移到一台虚拟SAN也可以相对简单地通过vSphere Storage VMotion来完成。
总拥有成本(TCO)。较之传统的存储架构,其TCO应该要少。
在一款存储系统中,较之在一台服务器的相同的存储驱动器,成本节省主要来自存储驱动器(HDD和SSD)的价格差异。在存储系统中,这类驱动器的价格通常要贵出三倍。虚拟SAN的其它一些成本优势来自于可预见的按比例支付、统一存储管理、统一数据保护、灾难恢复和业务连续性;以及整合的存储网络。
基于Hypervisor的SDS的缺点:
灵活性的问题。虚拟SAN是一个闭环的SDS,其只能与VMware vSphere 5.5或更高版本兼容。较早的ESXi的部署、其他的hypervisors虚拟机管理程序、或物理机都与虚拟SAN不兼容。其不能被不是vSphere群集的一部分的虚拟或物理机使用。其有一个自己动手(DIY)的虚拟SAN元素。例如,在廉价的商品化的硬件上运行将受限于VMware的硬件兼容性列表(HCL)。如果硬件不在该列表中,其是不支持的。
可扩展性和性能问题。虚拟SAN群集不能超过8.8 PB。如果需要更大的容量,其不是一个很好的选择。如果一台VM需要的IOPS比在其的vSphere主机上可用的90,000的IOPS更多,其可以从集群中的其他节点获得,但在延迟性方面或将受到相当大的影响。跨集群存储的性能是另一个问题。大多数虚拟SAN群集使用10 Gbps至40 Gbps的以太网和TCP/IP与主机互连。这个架构基本上以一个确定性系统总线取代了一个非确定性的TCP / IP网络,所以在主机之间的网络延迟变得高度可变。除非该集群采用更先进的和更快的互连,否则从一个集群主机到另一个的存储性能将是高度可变的,不一致的。
有些事情并非如此简单。从孤立的存储环境转变为一个纯粹的虚拟SAN,首先需要将非VM映像到虚拟机。对于非vSphere环境这将是一个相当耗时的过程。
TCO的问题。直到最近发布的6.2版本之前,虚拟SAN一直缺乏重复数据删除和压缩功能。而这较之那些具备数据缩减功能的SDS产品而言,就提高了每个可用的TB的成本。此外,在一个特定的群集的vSphere主机确保数据和VMDK对于其他集群保持可用,以防主机未能满足当前的多拷贝镜像的需要。最佳实践方案要求至少两份原始数据的拷贝,而许多管理员选择三份拷贝。这种做法消除了驱动器的价格优势。而因为虚拟SAN是vSphere的独特的功能选项,其许可证费用会大幅上涨。
超融合基础设施(HCI)SDS
HCI结合了服务器、存储、网络和虚拟机管理程序,并把它们打包到群集节点。 HCI的设计目的是为了消除自己动手进行整合的麻烦、昂贵的服务器硬件、对于存储过度配置的需要、高可用性的问题、复杂的存储管理和硬件兼容性问题。有许多来自服务器和其他供应商的HCI选项,包括:Atlantis、思科、戴尔、EMC、富士通、Gridstore、日立、HPE、IBM、联想、Maxta、NEC、Newisys、Nutanix、广达、Saratoga Speed、Scale Computing、SimpliVity、StarWind、StorMagic和SuperMicro。
超融合基础设施(HCI)SDS的优点:
灵活性。借助VMware的虚拟SAN,一名虚拟机管理员可以控制存储。事实上,一些HCI部署是基于VMware的vSphere和虚拟SAN,包括VMware的EVO:RAIL参考设计。有几家HCI供应商提供了虚拟机管理程序hypervisors的选择,包括了从vSphere、Hyper-V、KVM或XenServer到可用于Linux使用Docker容器或应用程序虚拟化(Saratoga Speed)的一些“裸机”的产品,而无需管理程序。许多HCI的部署允许在集群内实现不同容量大小的节点。有几款是纯软件产品,如Maxta、StarWind和StorMagic。Maxta与包括戴尔、Quanta和SuperMicro在内的大多数主要的服务器供应商达成了合作伙伴关系。
可扩展性和性能。HCI的扩展缩放是与添加节点到群集同样简单。缩放存储容量只需要添加驱动器(HDD或SSD)到一个节点的最大值或添加额外的节点。每一款HCI产品都有其自己的可扩展性和性能的局限性;然而,大多数产品都能够很好的扩展到PB级,并随着每台服务器节点线性添加性能到群集。
简单性。插入、打开、配置、然后就大功告成了。很少有系统是如此简单,无需DIY。
总拥有成本(TCO)。类似于VMware的虚拟SAN。许多HCI厂商包括了内联的重复数据删除和压缩功能,取决于数据,可以减少总容量需求高达83%到90%,从而大大降低了TCO。
超融合基础设施(HCI)SDS的弊端:
灵活性的问题。HCI是闭环SDS系统,所以它们的存储只能与集群中的服务器节点兼容。任何不属于HCI集群的物理或虚拟主机都将无法访问HCI存储。(当然也有例外:Saratoga Speed提供了他们所谓的全闪存的超融合基础设施(UCI),其可以作为在UCI集群外的物理或虚拟主机的目标。)
群集硬件仅限于HCI供应商所提供的,或只有HCI软件认证的硬件。与VMware虚拟SAN一样,会存在供应商锁定的问题,而更换供应商需要将一切从旧的HCl迁移到新的,这无疑将是一个相当费时且繁琐的过程。
可扩展性和性能问题。 HCI容量受到集群中所支持的节点的数目和每个节点所支持的容量的量的限制。如果一台VM在其vSphere主机所需要的IOPS超出了其可用的90,000的IOPS,可以从其它节点获得IOPS,但在延迟性方面或将受到相当大的影响。跨集群存储的性能是另一个问题。大多数虚拟SAN群集使用10 Gbps至40 Gbps的以太网和TCP/IP与主机互连,所以在主机之间的网络延迟变得高度可变。
有些事情并非如此简单。从一个孤立的存储环境转变为一个HCI集群,首先需要将非VM图像和虚拟机转化为HCI VM,或Docker container容器。这将是一个相当耗时的过程。
TCO的问题。与虚拟SAN一样,HCI在确保数据、虚拟机映像、VD图像和Docker container容器集装箱图像在一个特定的HCI节点上,仍然为集群的其余部分可用方面存在问题。现如今,这需要多拷贝镜像。最佳实践方案至少需要原始数据的两个副本,而更常见的则是三个副本,从而增加了总容量的要求和相关的成本。
存储虚拟化SDS
在软件定义的存储市场上,存储虚拟化SDS可以说是最成熟的SDS。其自2000年代初期就已经出现,当时就叫存储虚拟化。存储虚拟化SDS主要是整个存储软件栈,包括所有的存储服 务、优化在x86架构上的运行,并将主机转换成强大的全功能的存储控制器。其虚拟化服务器存储和外部存储系统,以创建具有不同的容量,数据保护策略和性能特征的一个或多个虚拟存储池。存储虚拟化SDS的本质是将x86服务器转换成存储系统;某些产品还可以作为虚拟机的虚拟存储设备(VSA)运行。存储虚拟化SDS主要是Scale-up(纵向扩展)的架构,但有些产品的Scale-out(横向扩展)也很好。他们的架构用于消除专用硬件昂贵的成本,充分利用服务器驱动器的较低的成本,重新利用旧的存储系统,并简化数据迁移。 一些较知名的供应商/产品包括:DataCore Software SANSymphony、EMC VIPR、IBM SVC、微软Windows 2012 R2 (及更高版本)、NetApp Ontap Cloud、Nexenta Systems NexentaStor、QuantaStor和Starwind Software。
存储虚拟化SDS的优点:
灵活性。其适用于大多数的x86物理主机或虚拟机,只要硬件或虚拟机管理程序已获得认证,由供应商支持。其转换位于其后面的所有的存储到虚拟存储池,使旧的存储实现再利用。横向扩展的版本允许物理或虚拟机访问任何节点。多拷贝镜像是没有必要的,以防止一个单个控制器故障,虽然其是可用的。与HCl类似,存储虚拟化SDS可以被作为软件或与服务器硬件捆绑。
可扩展性和性能。缩放是多维的,集群中的每个节点都可以放大,而且更多的节点可以被添加到扩展缩放。一般情况下,存储虚拟化SDS相当于最活跃的筒仓存储系统。
简单性。当与硬件捆绑在一起时,存储虚拟化SDS是一款非常简单的存储系统。其利用商品化的现成硬件,具有更好的可扩展性,并在某些情况下,同时提供块(SAN)和文件(NAS)。但最终,它仍然是在一个廉价的container容器中的孤立的存储系统。
总拥有成本(TCO)。在存储虚拟化SDS中,最大的成本节约来自于商品化硬件和基于服务器的驱动器。另一个节约成本来自内联数据缩减技术。相比于对等的存储系统,大多数存储虚拟化SDS将产生一个更有利的TCO。
存储虚拟化SDS缺点:
灵活性的问题。大多数存储虚拟化SDS只能在由供应商认证的和支持的特定的商品化的硬件上运行。可作为VSA运行的产品需要hypervisors认证,并且需要供应商的支持。
可扩展性和性能问题。在纸面上,这些系统支持巨大的容量的可扩展性,但 务实的做法则有点不同。存储虚拟化SDS容量受到X86服务器限制的约束。在性能下降到可接受的水平以下之前,每台服务器只能够处理很低的容量能力。存储虚拟化SDS的横向扩展也被集群限制,因为所支持的存储控制器节点的数目是有限的。性能也可能受到同样的限制的约束。
有些事情并非如此简单。存储虚拟化SDS主要是DIY系统集成整合需要测试,需要质量保证以确保软件正常与硬件兼容工作。部署实施可能需要专业服务或系统集成商。
TCO的问题。取决于供应商的不同,其许可授权可能有点贵。并不是所有的存储虚拟化SDS产品都提供内联的重复数据删除和压缩功能。这些问题无疑会对TCO带来有害影响。
横向扩展(Scale-out)的对象或文件S DS
最近,我们已经看到了横向扩展对象S DS的引进。对象存储将数据作为对象管理,包含数据、元数据和唯一的标识符。市场上有相当多的对象存储供应商,以及OpenStack Swift和Ceph两款开源的产品。
横向扩展文件SDS是一款高度可扩展的NAS,往往具备诸如对象存储的弹性或独特的元数据 (Qumulo)等特殊功能特点。某些横向扩展文件SDS产品实际上是在对象存储(Exablox)之上,其他在本质上则是IBM的通用并行文件系统(Spectrum Storage)的集群扩展部署。
横向扩展(Scale-out)的对象或文件S DS的优点:
灵活性。所有的横向扩展SDS架构是基于x86服务器而设计的。某些产品可以在由供应厂商认证的硬件上被作为软件部署,而其他某些产品则能够与服务器硬件捆绑。它们不是设计成VSA的,并且通常旨在用于辅助性或非关键性的任务应用。
许多横向扩展对象或文件SDS产品可以为Hadoop的部署作为HDFS存储。可通过减少所需的镜像副本的数量,并允许重新利用NFS或SMB数据,以显著降低HDFS存储的成本。
可扩展性和性能。缩放是多维的:每个节点都可以单独进行缩放,一般集群本身可以为容量或性能添加节点。性能将永远不会接近高性能块存储。
简单性。当与硬件捆绑在一起时,横向扩展的对象或文件存储的设置、配置和管理非常简单。其作为软件的部署实现需要DIY手动进行系统集成。这两种类型的商品化硬件,有着特殊的可扩展性——在横向扩展的对象存储的情况下,通过擦除编码具备无与伦比的数据恢复能力和长久性。
总拥有成本(TCO)。这两种类型的设计都是低成本的,并提供非常少的附加功能,通常的授权许可是基于年度购买的。横向扩展的对象存储通过擦除代码可以降低每GB的整体成本,因为其较之传统的RAID和复制数据保护需要较少的开销。
横向扩展的对象或文件S DS的缺点:
灵活性问题。无论是作为软件交付或与硬件捆绑,硬件必须认证和获得供应商的支持。
可扩展性和性能问题。横向扩展文件SDS一般不具备横向扩展对象存储一样高规模的扩展,但对象将有略高的延迟。对象存储已经从元数据和数据弹性功能具备了明显额外的延迟。这两种类型是最适合用于不要求高性能的辅助应用程序。
有些事情并非如此简单。当横向扩展文件或对象存储SDS被作为软件购买时,其是一个DIY项目,所以可能需要特别的技术,专业的服务或者系统集成商。
此外,当这些类型的SDS被用于扶助应用程序,如存档时,数据必须从其当前的位置迁移;一些供应商有产品可以做到这一点,但大多数产品需要依靠第三方软件。
TCO的问题。数据缩减——重复数据删除或压缩的功能目前在横向扩展的对象SDS产品中不具备,很少的横向扩展文件SDS具备该功能。这增加了总体拥有成本。
软件定义的存储市场总结
SDS是一个广泛的营销术语,当前具有多种软件定义的存储市场,每一种都各自有其自身的优缺点。
企业组织想要选择合适的SDS以满足其工作需要,必须对应用程序、存储容量和性能的要求、技能需求、以及怎样的软件定义存储市场能够处理哪些具体问题有准确的理解。