扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
ZDNet至顶网服务器频道 08月29日 分析评论(文/赵效民):软件定义几乎已经成为当今IT圈里开口必谈的词汇之一,人们对其的关注度已经丝毫不亚于云计算、大数据等主流的趋势,从这一点也可以看出它也已经成为了大众普遍认同的发展方向。
软件定义之缘起
“软件定义”之所以会越来越成为大众普遍接受的理念,我认为服务器虚拟化的迅速成熟与普及,让业界已经可以清晰看到“软件定义”的威力所在,以及它所能带来的想像空间(时至今日,软件定义已经不局限于虚拟化的范畴),可谓功不可没。而另一方面,时代的进步与社会的发展,也在从需求的层面对“软件定义”进到了助推的作用,因为它是可以看到的最有效的综合手段来应对未来的IT挑战。
在这一过程中,一个很重要的原因就是互联网与移动化潮流的兴起,当互联网将越来越多的设备和人连接在一起后,遍布其上的信息入口与出口也就带来了极为动态与弹性的信息流,与之对应的就是一个个在后台进行信息汇总与处理的数据中心。很多人在用手机App热火朝天之时,可能往往想不到,远处某个地方的数据中心正因此进行复杂的IT资源管理,以确保用适用的成本投入来更高效的满足前端的应用需求。因互联网带宽提速与普及而诞生的公有云服务商,其数据中心更是如此,否则以传统僵化的资源管理模式,公有云服务在成本与响应速度方面绝对是不可用的。
由此,必须要经历的就是以计算为中心的自动化,它所关注的是IT生产力的提升,而在此之后则将是进一步的互联时代,这会将若干个自动化的计算资源整合起来,从而有效的降低成本,而最终则就是“以人为本”——专注于服务与产品的快速交付,并因此进一步促进当前云与智能设备的变革。
在这一演进过程中,数据中心的角色并没有变。在早期它可能直接与相应的前端设备来连接,提供基础的计算与数据功能,而如今,最终的设备在外延(比如智能终端),人们也更多的在关注于应用的交付,从而在设备与数据中心之间,又加入了新的内容,但无论如何,数据中心仍然将是应用与数据的大本营,也就注定了数据中心内部的变革不可避免,否则不可能有效的支撑起新的设备应用模式与相应的服务。
软件定义之路
从数据中心的内部来看,其IT基础设施主要就三个部分:负责应用执行的服务器、负责应用数据保存的存储系统、负责应用与数据互联的网络,无论IT的形态如何变化,在可预计的未来,这三个基础的要素都是 不可或缺的,唯一可能的变化就其存在的形态。传统的IT都是由物理化的IT设备组成,管理人员都是直接与物理设备打交道,但是物理设备无法做到高效的动态化,其相应的IT资源(计算、存储、网络)也 会因物理的限制而无法高效实现自动化的供给与调配,快速的自动协同更是不可能。
因此,现在越来越多的硬件开始向软件定义方向发展,它们大多可以用SDX来表述(也因此,SDX成为了软件定义)。比如软件定义网络(SDN,Software Defined Network)、软件定义存储(SDS,Software Defined Storage)等等,它们追求的是将设备的逻辑功能和管理性,与设备的物理性相剥离,物理设备最终只是一个执行的角色(业界称之为“数据层”Data Plane),高级的资源整合、调度与自动化协同将由上层的软件来实现(业界称之为“控制层”Control Plane) 。这样做的好处就是,硬件可以更直接的服务于相关的应用,或者说应用可以更好、更直接的利用并控制IT资源。
由此可以看出,软件定义其实是IT发展过程中的一个必然选择。而如果要实现软件定义,肯定就要从基础设施着手,因为它是数据中心的组成要素,它不能很好的被软件定义,那么软件定义的数据中心(SDDC,Software Defined Data Center )也无从谈起,依附其上的IT交付模式的创新也就将是“空中楼阁”。
软件定义之痛
虽然很早就知道软件定义要从基础做起,但在现实中,这条路走的并不顺利,原因就在于“硬件不懂软件”与“硬件标准过于丰富”。
比如服务器,如果要把服务器内的计算资源虚拟化,就等于对CPU调用的方式的颠覆,从某种角度上说,它对于CPU来说是一种新“语言”。而在现实中,我们都知道,对于不懂的语言,需要翻译,但这又需要时间,而在IT中也是如此。当硬件不能很好的理解软件的意图时,软件就必须绕个圈子,将新的指令用一种原来硬件能听得懂的语言表达出来,这显然就要耗费更多的时间,体现在IT结果上,就是效率的降低。测试表明,当时的服务器在虚拟化之后,性能下降达30%之多,很多用户看到这一结果,采购的决策也就可想而知了。这带来的后果就是服务器虚拟化在诞生后的很多年里,市场普及率仍然少得可怜。
而在网络层面,在较早以前存在着大量的专有芯片,它们由相应的厂商独自研发,只在通用协议与指令方面兼容,但很多高级特性,则无法相通。对于这些硬件,针对每款芯片进行软件定义,显然并不是一件可行的事情,也因此也无法从根本上在网络世界中普及真正意义上的软件定义,最多是各厂商自己的发挥,但从全局来看,则明显是各自为战,并没有带动软件定义网络的真正普及。
在存储领域,可以说较网络有过之而无不及,每个存储厂商都有自己独有的存储架构与管理软件。多年以前,存储系统的主控芯片也是五花八门,虽然基础的指令集一样,但高级的硬件功能也是各不相同。也因此在它们之上,想做统一的软件定义,也是一件费力不讨好的事情,虽然可以通过某种方式实现存储虚拟化(如前挂统一访问的控制器),但基本上也是以丧失下层存储系统高级功能为代价的。
然而,软件定义美好的愿景也一直在驱动产业的共同努力,而这一内在动力也带动着必然的规律——硬件为软件定义而优化,并逐渐向某一标准化的开放平台聚拢。
很典型的例子就是CPU虚拟化的硬件加速,它让CPU可以直接理解虚拟化管理器(Hypervisor)的指令,并迅速执行。比如英特尔推出的VT-x就是这样的技术,它的推出反过来也促进虚拟化厂商在开发中进一步优化,从而让服务器虚拟化后的性能只下降不超过5%,实用性大为提升,直接带来的就是迅速的普及。
这一例子充分表明了“皮之不存 毛将焉附”的道理,软件功能虽然可以越来越强大,但如果没有理想的硬件平台,其效果肯定会让你大失所望(或者说,没有强大的硬件也不可能有强大的软件),也将会大大拖慢整体的软件定义普及进程。因此,在我们向往SDX的同时,也必须要正视其发展道路是不平坦的,而如果要平坦则必要从硬件做起,如果软件定义了我们的未来(X),那么硬件也将决定软件定义之“痛”!
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者