12月9日,以“新存储、新常态、新应用”为主题的2016中国存储峰会在北京悠唐皇冠假日酒店举行。
在当天下午举行的“软件定义技术”分论坛上,企事录联合创始人张广彬(狒哥)、紫光西部数据产品及解决方案副总裁胡晓雷、联想资深超融合业务拓展经理郭立、红帽软件资深架构师张家驹、XSKY产品总监张旭明、ZETTAKIT(泽塔云)技术副总裁(创始合伙人)黄扬、杉岩数据解决方案总监游长繁、OStorage(奥思数据)创始人&CTO李明宇等嘉宾分别发表演讲。
以下内容根据张广彬(狒哥)题为《超融合架构的“逆流”》的开场演讲内容整理,供参考。
大家下午好!欢迎来到软件定义技术论坛。这个会场位置虽然稍偏,但是人很多,是不是因为走错会场了——不是软件定义吗,怎么一上来讲什么超融合?我在会前也和主办方开玩笑说,我这个主题放到哪个分会场都可以讲,超融合技术、应用论坛不用说,闪存的论坛我也可以沾得上边。
可能有人觉得我命题有问题,为什么说“逆流”?超融合那么火,我为什么说“逆流”。屏幕稍微小了一点(后面的观众可能看不太清),这是半年来我们公众号发的一些文章,关于超融合的文章有概念普及,有产品流派分析的,还有里面的软件架构介绍的,甚至我们还主办过一个超融合会议(2016中国超融合技术论坛 )。9月下旬我在上海有一个演讲,标题比较长大家看不清楚,叫《你以为你以为的超融合就是超融合?》 ,为什么说这个“逆流”呢?“Are you Bing?”这个话是我调侃自己的,正确的理解不是“我全家都用百度”,而是“你是不是有病?”即之前说超融合好,现在怎么又说超融合不好。
这里套用村上春树的话,当我们谈超融合时在谈什么?我认为在销售数字还不是很大的情况下,超融合对行业最大的贡献就是把Server SAN引进了企业级市场。说到Server SAN,跟软件定义存储(Software Defined Storage,SDS)就有关系了,软件定义存储包含的范围太大,我们可以说Server SAN是软件定义存储其中一个流派,主要是面向(传统意义上的)块(存储)场景,其他的流派还有对象存储。
为什么说超融合最大贡献是把Server SAN引进企业级市场呢?其中的部分原因在于,直接以分布式的Server SAN取代传统的SAN设备,要说服用户需要一个较漫长的教育过程。而如果借助超融合这个易于部署的一体化方案,相对更易于打动用户,用户在接受超融合的同时,也就用上了Server SAN,因为Server SAN是超融合架构的基础。
所以我也说过,超融合主要是一种商业模式。因为,从技术难度角度讲,如果你能开发出比较好的Server SAN,分布式块存储(场景)的软件,再去和已经比较成熟的服务器虚拟化对接,开发出一个易用的管理界面,相对而言都是比较简单的事情。简而言之,就是Server SAN的技术难度是很高的,你如果能够解决了存储的这个软件问题,要做一个超融合的架构,相对来说不是那么难。说到这里,我突然有一种“搞OpenStack的听了会沉默,做Ceph的听了会流泪,不转你别做超融合”的感觉?
当然,超融合是个不断演进的架构,它将来可能不是我们今天所说的这个样子,而我们今天也不去讨论它未来的发展。但是我们必须在今天这么多人都在说超融合的时候,正视超融合的局限性。大家会说,什么东西没有局限性?什么东西没有适用场景?Server SAN也有局限性,但是局限性比超融合要小一些。从现在来说,Server SAN肯定符合软件定义存储的这个概念,但是Server SAN在SAN的这一面,其实还有一些不够SAN的地方,这个也是行业内下一步发展的一个方向。
那我们首先还是先来说一说超融合。因为我们必须说清楚超融合跟Server SAN的关系,我们简单的回顾一下因为超融合的概念。不管是IDC还是Gartner,超融合都属于融合系统中的一个分类,一共有三大类,其中一种是集成系统,一种是集成平台,还有一个就是超融合系统。前两类产品我们可以把它称为传统融合系统,或者统一称为集成系统。因为他们都是服务器、网络加存储,硬件架构本质上是一样的(有些区别后面会展开),到了超融合其实就把专用存储设备去掉,硬件上只有服务器+网络。
这是IDC今年第二季度融合系统市场份额的一个统计,三个柱状图分别是集成架构、集成平台、超融合系统。超融合是销售量最小的,也是增长率最高的,达到百分之一百三十几,不可能一直保持这个增长率。Gartner预估到2020年前后,超融合的市场规模会超过中间的(集成平台),至少如果超融合产品还是目前这个样子的话,它没法取代这个市场中的所有或者大部分系统/架构。
刚才说超融合或者跟Server SAN或者跟软件定义存储关系很密切,其实整个融合系统跟存储关系都很密切。还是IDC的数字:今年第二季度融合系统市场产生1693PB(约1.7EB)新的存储容量,同比增长31.8%,对整体存储市场出货容量增长的贡献超过40%,也就是说融合系统产生存储销售收入属于存储市场的一部分,它的增长率是比较高的,占的比重也不算很小,但是整个存储市场的容量增长只有百分之十几,也就是说增长率不到融合系统带来的一半。
IDC存储统计,服务器里面的硬盘、存储HBA/RAID卡等销售是算在存储市场收入中的。我们可以看到这样数字,服务器内部存储销售增长差不多百分之十,这是销售额,容量增长很快,但是收入增长不快,这也是IT行业的特点。服务器内部存储市场增长了,作为对比,但是外部的专用存储设备(包括SAN/NAS)市场没有,这个其实跟超融合/Server SAN体现的趋势有很大的关系。
那我们简单再看一下这个集成系统就是三件,计算机、网络、存储,这是两种典型的集成系统。集成系统中有独立的存储设备,如果把里面的这个相对独立的存储部分拿掉的话,它就不能叫集成系统,如果只有服务器和网络。显然,使用存储就是满足存储密集型应用的需求,当然存储密集型应用很多,最典型的就是虚拟化,左边的这个是就是以虚拟化为主要目标市场,还有就是数据库,如右边这个Oracle的Exadata数据库一体机。现在简单一些背景交代完了,我们就切入到正题。
典型的融合系统的样子,(左图)最上面这个(以太网或InfiniBand)交换机当然是为服务器准备的,服务器之间有一个网络。为了使用磁盘阵列,要有FC交换机,下面有SAN存储,这是典型的集成系统。(中图)往前进一步把SAN存储和FC交换机,也就是蓝色线下面部分拿掉,只剩下服务器一种硬件,但它仍然是分角色的,只剩服务器一种硬件只有一种网络,但是服务器里面分计算和存储两种角色,这是向Server SAN迈进一步。存储型服务器上运行类似Server SAN的分布式存储系统。(右图)如果用多节点服务器,服务器既跑计算应用又跑存储应用,就是超融合系统。
我们可以看到集成系统它是Rack(机柜)级别的,因为服务器、交换机还有磁盘阵列(至少)是三个东西,尤其磁盘阵列往往会很大,你很难做成一个设备,我们就把它放到一个机柜里,有专用存储设备还有网络,理论上运行虚拟化或数据库应用都没问题。
然后另外一种集成系统有点进步,就是刚才说的它把这个专用的(SAN)存储设备换成基于x86存储服务器的Server SAN,Server SAN即用Server做SAN,属于软件定义存储(SDS)的一类实现,但整体上仍然是Rack级。
得益于2U4、4U8等多节点服务器,乃至刀片式服务器(传统刀片式服务器仍然要外接SAN存储),超融合系统的起步可以缩小到Chassis /Box(机箱)级,基于2U4或4U8的方案都可以放到桌面上。第一没有专用存储角色,第二不像左边两个(集成系统),从左到右就是软件定义成分越来越浓的一个演进过程。
这个逻辑图可能看的更清楚一些,我们先看左侧,中间这三部分,最下面是服务器,然后最上面是磁盘阵列,当然为了连磁盘阵列要用光纤(FC)交换机,服务器上还要有FC的HBA,这样为了接SAN存储要增加三种设备。
到右侧的超融合架构就很简单了,只剩下服务器装软件,当然下面网络这些东西还是要有,这其实更证明了整个融合系统的演进过程主要就是存储的演进过程。
那以前为什么会做SAN,把好多硬盘放到一个大盒子里去?这个大家都很理解, CPU和内存都是半导体,遵循摩尔定律,个头基本不变但每一两年性能可以提高一倍,但硬盘就不是了,这些年来光长容量但性能几乎没有提升,所以时间长了以后存储的性能就很成问题。为了跟上计算的速度,我们只有靠增加盘的数量,以量取胜,于是存储就从服务器中独立出来,形成外置的SAN存储,个头也越做越大,譬如这就是五六年前的一款中端存储系统,多配些硬盘就是Rack级的(高端存储系统要更大得多)。
那为什么Server SAN可以把存储重新做到服务器里面了呢,就是因为闪存的出现。闪存这个东西也是半导体,也遵循摩尔定律,但是它在一定程度上比CPU逻辑更简单,近些年来性能提升比CPU更快。这儿我们可以看到一个小小的盒子,里面放几块或者十几二十块SSD,所以我们可以突破原有物理设计,在一个服务器机箱里面,有与计算相匹配(甚至明显更高)的存储性能。
简单做一个概括:
首先存储是各种融合系统的核心;
超融合用Server SAN分布式存储软件替换专用的SAN存储设备;
超融合架构=计算虚拟化+软件定义存储。
那么Server SAN和超融合是什么区别呢?Server SAN就是服务器即存储(Server as Storage),超融合是服务器亦存储(Server also Storage)。
下面两句话(以前讲过)不展开讨论。集成系统是硬盘时代走向尾声的产物,差不多2009年前后出现的,那时候闪存时代即将到来,几年后出现的超融合系统则伴随着闪存存储的崛起。
接下来说Server SAN到超融合,其实在Server SAN就有两种场景,一种是分离的部署,还是就像刚才说的我有单独的服务器,用来跑客户的应用,(左边)这个跑在x86服务器上的分布式存储,(右边)如果在同一个硬件上跑计算和存储就是超融合。之前是融合的过程,但今天我们要讲的还是需要有一定的分离,因为是用户场景需要。
那Server SAN和超融合的关系是很密切的,而且中间其实界限很模糊。我们这个图差不多就是以三个节点为例,每一个节点都运行分布式存储的任务,可以作为操作系统的一个进程,也可以是VSA(虚拟存储设备)即一个虚机。甚至也可以有两个进程,是分离式的组件,后面会进一步提到。
基本任务有两个:把本地的存储资源如硬盘和闪存贡献到大的存储池,并且让本机(所在节点)可以访问到这个存储资源池。Server SAN,只要在上面运行一个用户的虚机,那么按照超融合的定义,它立刻就变成超融合了,哪怕这个用户用的虚机只占1%的资源。如果再往上走再多加一些虚机就无所谓了,这整个就是超融合,你能加多少虚机取决于你有多少资源。
通常大家认识到的超融合系统,我们姑且称之为狭义的超融合系统。严格意义上要遵守超融合定义的话,每个节点上都要既提供存储资源,然后提供存储服务,也运行用户应用(计算任务)的,这样对存储资源的要求就是说你每个节点至少要有SSD,企业级Server SAN如果没有SSD(起码作为硬盘的缓存),性能是没法接受的。然后它要做成单一的存储池。另外,如果SSD性能高,就需要很多的计算资源来匹配,简单的说狭义的超融合就是每个节点都能运行计算(用户应用)和存储任务。
这是一个产品配置实例表,我们可以看到中间这里从下到上,要么就是存储的资源从硬盘加SSD缓存换成全闪存,要么就是需要运行的客户应用也就是虚机更多。那它总的来说看中间其实CPU的核数是增加的,内存容量也是增加的过程,意味着都需要有更多的计算资源相配合。
举一个我们最近测试的一个产品的例子,比如计算资源少到一定程度,可能只能做Server SAN。我们的测试就是这样,原来是一个Server SAN产品,有两个节点配置的是至强E5-2609 v3这样的CPU,虽然物理核心数和E5-2620 v3一样,但不支持超线程,内存也不够,也就是计算资源不足。后来我们想把它“升级”成超融合,结果没有足够资源升不上去,计算资源太少了就只能做Server SAN——如果计算和存储资源都太少呢?那就连Server SAN都做不成呗。
我们刚才说狭义的超融合只是理想状态,现实应用中已经有分离的部署。比如说在一个超融合系统的集群里可能有很多节点,允许有一些节点不贡献存储资源,比如说VMware的Virtual SAN允许集群里的部分节点不贡献存储。那没有存储资源的原因有可能是这个节点上没有硬盘位,或者有两个硬盘用来装操作系统,做数据存储也不够,这样就像这种状态,比如中间这个节点没有存储,没有SSD也没有硬盘,但它上面有比较强的计算资源,在这种情况下它这个节点也是要运行存储任务的,它如果不运行存储任务就没法访问整个存储,这是部分节点不贡献存储资源。
还可以有节点不运行用户应用,比如说还是中间的节点,计算资源不够,运行不了用户虚机,就像刚才讲的例子一样,这里不再展开。
所以我们可以看到,这是我个人的叫法——广义超融合系统,有些节点是既有计算又有存储的,有些节点只有计算的,有些节点是只有存储的。那我们还要再找出什么名词来吗?我们说这不是超融合?我觉得没有必要,我们可以说有些节点是超融合节点,有些节点是Server SAN节点,但这整个系统就是超融合的,但在这种情况下,分离部署主要是产品本身的原因造成的,要么是计算资源不够,要么就是存储资源不够。
我们现在简单来说一下,超融合部署有其局限性。理论上,基于SAN存储的集成系统对虚拟化和数据库场景都是很好支持的,而现在超融合架构大部分还是基于虚拟化的,一方面里面会有一些还是类似集成系统的计算和存储分离部署,但这主要是资源决定,如果有些应用,如数据库应用就是要跑在裸机(物理机)上,现在的超融合可能就不太合适。
所以我们可以看到一些以超融合产品著称的厂商,或者比较早做超融合的厂商,他们其实都有那种不那么“超融合”的配置方案,而且原先坚持只做超融合的,现在也开始转向支持分离部署,也就是说更像之前集成系统的做法,允许节点里有纯计算节点和纯存储节点。
比如说其实华为在这方面的宣传不够多,虽然它做超融合的产品时间比较早,但是不太会炒概念。其实有的时候我们觉得华为比较能宣传,可华为也不是所有方面都能下足够力气去宣传,这个我们不展开了。刚才我们说有的分布式存储服务是两个组件完成的,华为就是这样,一个接入组件(VBS,虚拟块服务),一个存储端资源池化的组件(OSD),这两个组件可以分离的,当然也可以部署在同一个机器上,所以我们去华为的官网上可以看到华为的FusionCube分为两种,一种叫数据库超融合,一种叫虚拟化超融合,也就说在分离部署的情况下,计算节点上还要运行一个Server SAN或者软件定义存储任务(如VBS)。
我们可以用更标准的方法来解决,这个答案就是iSCSI接口。SAN隐含的一个属性就是提供块存储接口(NAS提供文件存储接口)。既然SAN是这样的,那Server SAN在前面加一个前缀,应该只是实现方式不同,也要能提供块存储接口才对。所以我觉得iSCSI比较好,标准接口,操作系统广泛支持,简化计算节点部署。
所以我们可以看到像Nutanix,超融合概念的提出者,也是市场开拓者,很大程度上感谢它创造出超融合这个市场,创造出这个商业模式。Nutanix之前就是纯超融合的,他的口号就是“运行所有虚拟化的工作负载”(Runs All Virtualized Workloads),但是后来它发现这样不行,增长到一定程度还是需要支持物理机,支持物理环境,不能说虚拟机就是先进的,所以今年6月份,它宣布支持iSCSI接口,也就能把虚拟化去掉,变成“运行所有工作负载”(Runs All Workloads),因为前缀越多局限越大,市场也就越小。
VMware也在10月份发布了vSAN 6.5。Virtual SAN刚推出时,简写用小写的v,即vSAN,vSphere的v也是小写。但是转年VMware官方改称VSAN,V必须大写,强调重视。一直到前一个版本,也就是VSAN 6.2,V还是大写的,但是到vSAN 6.5,又变回小写的v,是不是说虚拟化(Virtualization)不能代表一切了?VMware这家公司喜欢在产品名称上玩文字游戏,有些产品过一两年就改个名,所以我认为他们的改口还是有深意的。
最后总结一下:超融合架构的核心是Server SAN,超融合并没有带来特别多新东西,对市场的最大贡献就是让传统(非互联网)企业用户接受Server SAN,做软件定义存储的同行都应该感谢超融合厂商在概念上的宣传。那x86因为Server SAN也好,超融合也好,这个通用的硬件平台是基础,而真正让Server SAN和超融合系统的性能让大家可以接受,关键就是SSD,这也是为什么我们可以看到英特尔(Intel)公司在超融合和Server SAN领域大力支持并投资了很多公司的原因。
第二个观点,Server SAN是大的趋势,Server SAN市场肯定会更大,适用场景也会越来越多,包括软件定义存储。软件定义存储是大的趋势。但是超融合不要盲目去追,超融合有其适用的场景,如果不是它特别适用的场景也不要硬去上。所以简单说Server SAN会越来越多,用不用超融合真的要看企业应用的具体情况,不要盲目赶时髦。
谢谢大家!