“用户需要什么?”
从营销专员、产品经理、架构师、程序员甚至公司CEO,都会不停的问这样的问题。并且随着行业和领域不同,问题的答案也是五花八门的。用这样一个篇幅去讨论各行各业的用户需求是不现实的,也偏离的这边文章的主旨。因此,我们收拢一下思维,仅仅聚焦在数据中心的IT架构领域,来看一看用户的需求和我们所能提供的最好的方案。
——其实这个领域同样很广泛,同样千差万别,本文仅讨论共性的内容。
如果把开篇的那个问题,转换一下人称,然后抛给大型数据中心的管理员,你就会得到相对明确,并且有价值的答案。对于大型数据中心的管理员来说,或者称之为运维技术人员,他们最渴望得到什么样的礼物呢?很可能是“简化管理,统一平台,高效低碳”这类相对明确的答案。而且,看似奇怪却又在意料之中的是,简化管理常常被用户排列在了需求的第一位(对于产品经理来讲,似乎更希望用户对产品的性能给予更多的关注)。
如果你在IT领域工作经历够长久的话,回顾一下数据中心的发展历程,就不难发现,从性能时代到低耗时代再到易管理可扩展时代,用户的需求引领着数据中心的产品和技术经历了由底层到应用的必然发展趋势——同时,三个阶段并非彼此替代的关系,而是如垒塔般的叠加——到今天,性能和低耗技术依然在不断的提升,只是我们又加入了对易于管理和可扩展的更高要求。
《人月神话》的作者Fred Brooks曾经提出过一个关于软件工程的经典理论(或者说是预言),No Silver Bullet(没有银弹)——即没有技术和方法可以大幅度的提升软件工程的效率。当我们把目光投放在数据中心IT基础架构领域时,会惊喜地发现,我们比软件工程要幸运得多。统一网络(Unified Networking)似乎就是我们所要寻找的银弹。当然,这枚银弹还没有完全释放全部的能量。
银弹之:统一网络的融合与简化
银弹是需要有奇妙的力量的,对于数据中心统一网络技术来说,它给我们的第一个惊喜就在于简化了网络的连接。
如果你进入过数据中心机房,并好奇的转到了服务器机架的背面,一定会为密密麻麻的线缆所震惊。那时的数据中心网络,更确切的说,是服务器到交换机之间的连接,简直可以用恐怖来形容。一台服务器为了获取更高的网络带宽,并且与不同的协议和存储建立链接,通常需要多达10根的线缆与不同功能的交换机相连。如果以一个机架上安装20台服务器计算,每组机架至少需要200根线缆来实现服务器与交换机之间的LAN和SAN连接。对了,你还需要支持LAN和SAN的不同交换机。抛开这些线缆和交换机的成本不谈,抛开多路千兆线缆带来的性能问题不谈,仅仅是如果有一条线缆故障了,你如何从200条线缆堆中尽快的找到故障所在?
这是一个足以杀死IT管理员大量时间和精力的问题。
别忘了,还有我们刚刚“抛开不谈”的成本和性能问题。因此,我们确实需要“银弹”了。
让我们看看统一网络针对主机端网络的解决方案:
首先,在最底层,数据中心桥接(DCB)的推出实现了我们梦寐以求的融合网络传输的可能。这项由Intel及其合作伙伴所提出和推进的技术标准,通过流量分化(智能识别和分离LAN、SAN和IPC的数据)、最优桥接(数据中心中最短传输路径桥接)、无损传输(满足SAN传输要求)等技术,从2004年启动至今,由最初的设计理论到支持DCB的Intel以太网控制器发布,再到融合网络适配器CNA发布,以及基于软件的开放式DCB引导,在厂商和专家的努力下,成功为服务器到交换机的网络简化和融合提供了技术基础。
在DCB之外,我们还需要一项技术来统一服务器网络出口与交换机入口的数据传输。这就是FCoE(Fibre Channel over Ethernet)。FCoE是一项支持在以太网协议上传输光纤数据包(Fiber Channel Protocol)的技术。对于传统数据中心来说,服务器传输以太网数据包和光纤数据包需要通过不同的线缆,并连接到不同的以太网交换机和光纤交换机,然后才能抵达以太网存储或光纤存储上。而FCoE/DCB技术彻底改变了I/O传输上的这种各走各路的弊端,将以太网数据和光纤数据统一在无损万兆以太网上传输。这就大大简化了线缆的部署成本的维护困难,同时也降低了网络设备(交换机)的数量和成本。
融合:基于Intel所倡导的DCB和FCoE技术,我们实现了不同协议数据包在统一的以太网通道传输;
简化:我们不仅减少了不同传输协议的线缆和交换机数量,同时,由于FCoE是天生的万兆传输,因此,基于统一网络的万兆以太网,Intel所支持的产品可以基于万兆以太网传输所有的服务器数据,过去一台服务器上连接10条线缆,如今只需要1条万兆以太网链路和FCoE/DCB协议即可实现。(为了实现冗余,可以考虑增加一条万兆以太网线路)。
哦,对了,还有被逐步降低了的能耗。
银弹效应:
1、 整合传输方式,省去不同类型(FC和LAN)的交换机数量和线缆种类;
2、 万兆以太网简化布线,提升带宽效率,大幅减少线缆数量和维护复杂度;
3、 基于DCB/FCoE技术统一了数据和存储网络,降低TCO(总体拥有成本)。
银弹之:统一网络的开放性
如果数据中心统一网络架构的发展到此截止的话,刚刚我们谈过的基于DCB和FCoE的融合与简化已经提升了网络性能并减少了维护复杂性和成本。至此,“银弹”任务似乎已经完成。
但实际上,技术的发展是无止境的,在iSCSI以廉价的成本替代了传统的光纤存储,FCoE和DCB又融合了以太网和光纤传输之后,又有了新的挑战等待着我们:
面向云的数据中心最终是要走向开放的,基于虚拟化的统一应用平台也要求能够将数据处理集中在统一的操作层面上,并减少控制点。因此,虽然支持iSCSI、FCoE的HBA板卡实现了我们对网络融合和简化管理的要求,但如何进一步将这些协议和技术统一到一个开放性的平台上来?
这就需要第二个“银弹”。
为了分别表述清楚,让我们按照技术发展的时间顺序,有请iSCSI先一步走上舞台。
先花费一些文字,介绍一下iSCSI的历史。在iSCSI之前,高端存储领域为昂贵的“光纤系”所垄断。一套基于FC SAN的存储系统,出了存储本身成本外,还有光纤线缆成本,光纤交换机成本以及HBA卡成本。ISCSI的诞生带来了一种基于以太网的廉价SAN解决方案,只需要iSCSI HBA(后来进化为传统的网卡)和普通以太网交换机,就可以在不增加额外成本的前提下,部署一套iSCSI存储系统。为了区别于传统的FC SAN,基于以太网的iSCSI存储又被称为IP SAN(很多存储界的老手更喜欢这个名字)。
iSCSI的产生迅速赢得了市场的欢迎,特别是寻求成本控制的企业用户更加青睐于此。于是支持iSCSI的HBA卡被研发并投入市场。
故事至此,并没有结束。因为iSCSI HBA卡同样需要成本投入,而且,也不符合我们正在讨论的统一和开放性的需求。因此,Intel与MSFT等伙伴共同推进了iSCSI向软件引导的开放性领域突破——基于windows、Linux和VMware的引导程序被开发出来,并且在性能上达到了传统硬件HBA卡所能实现的程度——在省去了额外的iSCSI HBA卡和封闭式的硬件系统后,Intel基于软件的iSCSI引导可以通过传统的网卡,在主机操作系统层面实现全部的iSCSI数据卸载和应用。
到今天,超过80%的iSCSI链接使用了系统自带的软件引导程序,省掉了大量了板卡费用并简化了维护复杂度,实现了开放与统一。为此,主流的iSCSI HBA硬件卡生产商纷纷终止了各自的产品,这其中,也包括Intel自己。
Intel通过力推免费的开放性的软件引导,终止了自己本来可以继续销售的硬件产品,正是基于一个我们都明白的道理:面向云的数据中心,必须要走向开放。
——技术上每一次进步的取得,不仅仅有智慧的力量,还有奉献的精神。
ISCSI完成了基于软件的引导和实现,接下来,轮到FCoE登场了。
实际上,和iSCSI相比,FCoE似乎少了些先天的运气。当年iSCSI出现,作为昂贵的FC SAN的唯一替代方案,几乎没有什么障碍便的得到了市场和用户的爱戴。而FCoE出生时,人们似乎还沉浸在iSCSI带来的喜悦里。对于FCoE,更多的是好奇,而非迫切的需要。
但FCoE是为未来而生的。在第一颗银弹中我们提到,基于DCB和FCoE技术可以实现以太网和光纤传输的完美融合,极大的简化了硬件成本和部署维护的复杂度,随着数据中心的规模越来越大,FCoE的优势也就越来越明显。
和iSCSI一样, Intel和其他致力于推广FCoE的合作伙伴是不满足于仅仅在硬件层面实现网络融合的,除去CNA卡的成本费用之外,面向云的数据中心要求更开放的架构和统一的平台,也是Intel决定启动Open FCoE计划的原因所在。
和iSCSI一样,Intel的开放式FCoE解决方案同样是免费的。对于用户来说,这是一个好消息。目前,Intel已经完成了基于Linux和Windows平台的FCoE软件引导的实现,并且,在业内最为关注的VMware虚拟化平台上,目前也已经进入到了Beta测试验证阶段。
和iSCSI一样,在FCoE的演进道路上,我们同样看到了Intel的杰出贡献。Intel 82598所支撑的第一款CNA板卡的发布,以及第一个单芯片CNA的实现,还有更重要的在开放式FCoE领域,Intel所做的DCB规范、Windows、Linux和VMware平台开源引导等等——如果说最终数据中心的统一网络得以在开放性平台上实现(这一天已经越来越近了),那么这一路上都有Intel的努力和贡献。
面向云的下一代数据中心更多的建立在开放性和虚拟化的环境下。统一网络是现在,更是未来。
银弹效应:
1、 基于开放性的iSCSI和FCoE引导替代了昂贵的板卡成本,统一了主机的接口;
2、 开放性的设计也导致网络设备的统一,降低了成本和功耗,简化IT基础架构;
3、 开放性减少了控制点,简化了IT运维成本,同时提高了系统稳定性;
4、 开放性让数据中心架构更加灵活,同时对于未来数据中心的虚拟化的支持更好。
银弹之:万兆以太网
如果说前面两枚银弹在主机端、控制点和协议层实现了数据中心的网络融合和统一,并简化了网络复杂度的话,其实还有一个重要的部分是不能被忽视的,那就是网络的带宽。不论FCoE所天生具备的万兆基因,还是Intel多次提出了“基于万兆以太网”的统一网络架构,万兆以太网已然成为了统一网络的重要核心组成。从技术角度去理解万兆并不困难,但我们还是有必要了解当今万兆以太网的各项技术的发展情况,以及它可以为我们的数据中心统一网络提供哪些支撑。
从2002年万兆以太网标准通过之时起,从千兆到万兆的升级似乎永远都被寄希望于“下一年”。这其中并非是用户特别是数据中心用户不需要万兆——恰恰相反的是,千兆以太网的性能瓶颈已经越来越成为制约数据中心能效的关键因素之一。但由于万兆以太网的成本、功耗以及从千兆到万兆的业务应用的迁移等问题,导致了万兆的普及并没有我们期待的那么迅速。
但迈向万兆的需求一直没有变,并且越来越强烈。
随着Intel等厂商针对万兆以太网的技术和产品逐渐成熟,并且将成本和功耗日益降低,今天,从千兆到万兆的迁移已经开始发生:
根据Intel提供的数据,去年英特尔的网卡出货中,万兆网卡占5%左右。而到了今年第一季度,这一比例就上升到了9%——可以预见全年的万兆出货比例将会大幅上升。
在讨论应用了哪些先进技术之前,我们先让数据来说话:第一代万兆以太网每端口成本在999美元,而最新的第三代Intel X520系列已经将每端口成本控制在399美元。在功耗方面,和第一代相比,Intel X520也实现了从25W到9W的节能突破。而到了今年下半年,根据Intel介绍,采用更新技术的万兆以太网将会进一步降低成本和功耗。
那么万兆以太网都拥有了哪些技术秘籍,并且这枚银弹到底更为数据中心带来这样的变革呢?这也是我们所要探寻的——
银弹效应:
1、在网络架构方面,由于万兆以太网的加入,过去基于千兆网络的众多网络线缆会被简化为一条,简化后的网络性能和管理都得到优化。
2、基于iSCSI和FCoE的数据传输将会在万兆以太网上得到更好的实现,万兆以太网技术将统一从主机端到存储端的整体网络链路,实现在单一以太网协议上实现全部数据流的高效传递;
3、基于10GBASE-T和光纤的万兆以太网技术更加成熟,特别是10GBASE-T接口,其在成本、传输距离、兼容性等方面的优势更加适合企业计算环境的部署和使用;
4、虚拟化和云计算要求更简化的网络结构和更弹性的网络架构,这也是万兆以太网替代千兆的必然趋势所在;
5、其实是一个总结,正如Intel多次提到了,基于“万兆以太网”的统一网络。因此,没有万兆,就很难实现统一网络。
银弹之:X520融合网络适配器
这次我们将目光聚焦在产品上。当然,谈产品必然离不开技术,Intel X520以太网适配器只是一个典型代表,支撑其实现使命的,有众多优秀的技术和协议,如开放的FCoE和开放的iSCSI,DCB,MPIO等等。对于X520来说,一切都只是开始。
我们来看看如何通过一块网络适配器实现基于FCoE和iSCSI的数据传输:
基于iSCSI传输的存储数据通过以太网在LAN上经交换机传递到安装了Intel X520网络适配器的服务器端口,由X520的以太网物理地址端口接收数据,并实现iSCSI的卸载(iSCSI Off-loads),然后,通过X520内建的基于优先权的流控制和数据分流技术(Classification & Prioritization Engine),将iSCSI数据包分流到以太网通道上,等待派送到操作系统中。
接下来,为了表述的同步性,我们先人为的为iSCSI的传输按下暂停键,让已经分流道X520适配器内以太网通道的iSCSI数据包休息一会,回过头来,我们再看一下基于FCoE协议的数据如何从存储端发送到服务器的——
和iSCSI不同,基于FCoE技术的交换机可以同时接收从光纤存储和以太网存储传输过来的数据,并通过统一的以太网协议和单一的线缆将光纤数据和以太网数据传递给服务器端的Intel X520网络适配器——是的,和iSCSI一样,FCoE也来敲门了,但不同的是,它带来的数据种类更丰富。
后面的故事有些类似,通过FCoE物理地址接收数据包后,再由X520内建的FCoE卸载技术实现卸载,然后,同样经过基于优先权的流控制和数据分流技术,将FCoE数据包分流到SAN通道上。
至此,iSCSI和FCoE数据,通过一块Intel X520网卡,成功传送到了服务器的系统前,并且同时整装待发。
现在,让我们的iSCSI和FCoE数据包进入服务器的系统层面吧——LET`S GO!
由于传统的以太网传输是允许“丢帧”的,这和FC光纤传输所要求的无损不符合,因此,在系统层的第一环节,需要通过内建的DCBx技术(数据中心桥接交换),建立中断和缓冲区机制(Buffers Interrupts),对于丢帧的数据,系统会提示暂时中断传输,将数据暂存于缓冲区,并要求信源将丢帧重新传输,确保数据的“无损”。经过DCBx后,完整的iSCSI和FCoE数据被逮到了网络驱动协议和接口面前,注意,在这里,原本并肩前行的两组数据又要分离了——可惜不是你,陪我到最后……
FCoE数据包被识别后,经过网络驱动接口,传递给FCoE协议链路进行传输,经过Intel提供在操作系统系统内的开放式FCoE引导,完成FCoE数据的最终完全卸载转换;然后经由MPIO(多路径I/O管理),为最后的文件系统所识别的访问。至此,由FCoE这路高效的运输大队负责传递的LAN数据和FC数据成功抵达的终点。实际上看似复杂的描述只是为了让大家了解得更清楚,因为里面凝结了包括Intel在内的各方的技术专家的探索和努力才得以实现——而回到宏观世界里,刚刚这些复杂的过程描述,上万兆以太网上,只是一瞬间的事情……
哦,差点忘了,iSCSI数据包还在等着呢。刚刚说了,经过DCBx的处理后,FCoE和iSCSI又要分道扬镳了。基于LAN传输的iSCSI数据在这里经过TCP/IP协议处理,提供过Intel所提供在操作系统内的开放式iSCSI引导程序,同样完成最后的卸载转换,并经过MPIO,提供给文件系统识别访问和使用。
至此,原本各自独立的FCoE和iSCSI数据,一路经过Intel的万兆以太网,统一网络架构,开放式FCoE和iSCSI技术,以及DCB数据中心桥接,和相辅助的各种软件引导,最终殊途同归。
银弹效应:
1、 Intel X520融合网络适配器基于单一硬件统一了开放式FCoE和iSCSI以及传统LAN网络数据传输三重功能;
2、 X520内建的FCoE和iSCSI卸载和数据分流技术实现了不同协议数据的识别和归类处理;
3、 操作系统层面支持DCB技术实现了无损以太网数据的准确性;
4、 操作系统中基于Intel 的开放式FCoE和iSCSI引导,在统一平台上通过软件实现了过去由HBA卡来完成的数据卸载和最终的访问使用。
统一网络为我们描绘了一个更美好的未来。既然云计算和面向云和虚拟化的数据中心是不可逆转的发展趋势,既然我们都在追求更简化的管理,更高效的网络和更开放性的平台,那么,就没有什么会成为我们拒绝“银弹”的理由了。统一网络的简化、融合、节能和弹性更加符合云计算和虚拟化的要求,并且已经由众多厂商和技术专家将这些美好的想法变为了现实的产品——这不是魔法,虽然,它比魔法还让人心动。
如果你还是心存疑虑,或是不能下决心的话,那么,我们再次回到文章开始的问题,认真的问一次:
“用户需要什么?”
银弹来了。