重新定义计算的边界

谈到重新定义,说及计算边界,也许感观上还带有些神秘。但如果谈及信息技术(Information Technology),那信息技术为当前 30 年的社会进步作出的不可磨灭的贡献,相信无人再会质疑。

1946 年,第一台电子计算机在美国宾夕法尼亚大学诞生,计算机从此登上历史舞台;辗转至 1971 年,Intel 公司推出全球第一个微处理器,掀起一波计算机领域的革命,几乎是简化并制定了硬件标准;而上世纪 80 年代末,Windows 的横空出世,迅速革新软件模式,一举吃下大部分的软件市场。作为 IT 领域的中坚部队,20 多年的计算市场,几乎被 Intel 与 Microsoft 的软硬强强联手,占领殆尽。你会发现,那时候的计算边界,细想来,不可谓不清晰。

千禧年前后,全球互联网的潜力开始凸显,由于商业、成本、规模等因素的考量,互联网公司不得以转向当时的开源新锐 Linux。借势,喷薄,可以说是当时对 Linux 最生动的描述。随后,虚拟化、云计算、大数据技术、容器技术等接踵而至,无一不是当时的宠儿,均一石激起千层浪,的确起到助力时代发展的作用,却也并未独领风骚至十年。虚拟化模糊了软件,云计算集中了资源,技术的发展就仿佛是“千层叠”,回过头来再看计算,甚至有点“雾里看花”。

如果细细体会如今的 IT 现状,是牵一发而动全身,还是一马平川,发展趋势几何,都是规划 IT 投入时不可回避的话题。换言之,IT 发展已经面临十字路口,路口转向何处,哪些可以用来帮助企业 IT 选型,我们不妨仔细来看。

标准化

IT 发展,往往会呈现“动态的稳定”,技术的发展,是创新的原力,最终势必趋于秩序化。秩序化的生产模式,是技术理应为社会带来的价值。这种形式,我们也时常称之为“标准化”。

共享经济与移动互联网,最近五年内给社会带来了巨大变化,IT 模式也颇受冲击。野蛮生长成了一个代名词,迅速响应成了业务提出的重要新需求。对于企业运营而言,积淀的文化与流程,或许会成为支撑企业运作的基石;而对于“互联网+企业信息化”而言,往往会有更多要求。细想而来,信息化新格局无非分为以下四点:

  • 更敏捷的业务交付
  • 更丰富的服务目录
  • 更弹性的数据中心
  • 更融合的运营支撑

交付的标准化

十年前,也就是“互联网+”还没有盛行之时,企业 IT 对于交付的响应速度等,并未达到如今的要求。对于当时的业务需求,软件工程领域也逐渐流行着不少着实高效的软件研发模式,比如瀑布模型。软件研发严格按照设计的一系列阶段顺序展开,往往强依赖于前期需求分析,模型构建等环节的可靠稳定。然而在十年之后的“互联网+”世界中,明确的需求,稳定的模型,似乎永远是一个“伪命题”。如此一来,业务的交付始终难免存在问题,业务系统也很难抓住市场需求的痛点,有的放矢。

提升业务交付能力,已然成为企业无法回避的挑战。

近年来,云计算的发展,让企业面对资源的时候,能更加游刃有余,但管理业务时候,始终难以收获效果。我们也明显感觉到,传统“面向资源的云”,如今有必要重新审视,开始转向“面向应用的云”。面向应用的云,绝非空穴来风,为企业带来的价值绝不可估量,这样的云具有的特性是:

  • 高速迭代
  • 永远可用
  • 弹性扩展
  • 移动优先
  • 自动运维

交付的标准化,没有合适的开发模式,几乎没有实践成功的可能性。升级开发模式,自然成为企业首要考虑的问题。开发如何高效产出,流程如何对接代码资源,如何自动化完成测试和构建,如何提高业务的发布能力,如何提高业务系统的高效运营能力,如何迅速响应市场变化持续迭代,都至关重要。企业级业务交付,丰富的实践经验告诉我们,完全遵守“短板效应”,整个的业务交付并不会因为某个环节的卓越突出,而整体提速,往往是某个存在弊病的环节,直接导致交付的延时缓慢,甚至停滞不前。

合适的开发模式,除了合适的人力资源外,合适的流程也很重要,合适的技术支撑更是不可或缺。技术发展到了 2013 年,容器技术随着 Docker 的兴起,让行业看到了“标准化”的曙光。以容器为标准交付件,打造企业应用商店,实现负载分布式应用的秒级部署,完全可以帮助企业打开拥抱互联网能力的大门。容器技术的实践,结合 DevOps 的理念、微服务架构,一时间成为跃变边界上,最炙手可热的话题。

其实,交付的标准化,在互联网企业中需求甚广,但并非是互联网领域的专属需求。传统企业的信息化产物交付,都在悄然变化。容器技术从再次被挖掘价值、到如今的红透半边天,其间有不少于五家传统公司找到我,希望尝试使用 Docker 来重新定义软件交付。比如,一些 2B 的制造行业软件提供商,已经拥有成熟的商业模式,然而依然苦于传统的软件交付模式,难以接受巨大且不确定的企业级软件实施成本。容器的盛行,反而是这样的跨界企业在内部驱动下寻求突破,得到强有力的支撑。

交付的标准化,不仅在互联网领域成为刚需,在跨界领域同样成为信条。

资源的标准化

交付的标准化,常以“应用的云”为中心,但这并不意味传统“资源的云”不再重要。数据中心依然在企业内部扮演着重要的角色,同时数据中心为了支撑业务的健康运作,重新有了新的挑战。数据中心的构建,需要拥有面向业务的运维能力,同时有必要构建面向服务的平台,从基础架构转向以应用为中心的运维架构。面向业务的“数据中心”,如何实现“资源的标准化”,拥有重大意义。

图片描述

<图1>

数据中心的技术发展多年,我们看到的是技术“千层万叠”的现状。传统的硬件基础设施不可改变,而后到接受虚拟化技术,接着到三层云计算架构的洗礼,开始在虚拟化数据中心中规划 IaaS 平台,再逐渐完成业务系统管理组建 PaaS 平台,最终构建 SaaS 服务。每一次技术的选型,企业都将投入大量的人力物力,而其中的必要性是否成立,客观上行业也在不断地思考。

图片描述
<图2>

很有幸,在 IT 技术的发展过程中,我们可以看到容器形态的实际价值。如今的容器形态,让我们看到一个全新的技术边界正在逐渐形成。传统的层级架构中,操作系统、中间件、软件包、软件定义的网络、软件定义的存储,甚至是虚拟化技术,都被囊括进了一个新的边界,进而在这个边界上形成了新的标准。应用云的边界就此上移,容器之上为应用,容器之下为资源,计算的边界由传统的硬件(Hardware)端,走向容器(Container)端。

去中心化

图片描述

区块链的面世,让世人见识了“去中心化”的价值,区块链也以开放、安全、易用得到银行和金融业的广泛关注。而在 IT 领域,似乎“去中心化”的理念,也逐渐被实践以及接受。从互联网发展的层面看,去中心化代表了社会化关系的转变,也在重新打造内容产生的形态,自然也将计算的边界开始向 C 端转移,最终互联网更加扁平,内容的多元化得到充分的发挥。
回到传统“中心化”的 IT 基础架构,中心化云服务器,网络设备的基础设施与运维成本往往非常昂贵。服务器/客户端模式已经被运用了数十年,但如今的大规模移动场景开始难以为继,更何况是大规模物联网场景下数百亿的设备连接。单纯的C/S通信模式,对于服务器造成的压力太过于庞大,而在电子技术发达的今天,端的能力挖掘不足势必带来能源的巨大浪费以及管理成本的大幅增长。

去中心化,必将成为趋势。系统计算能力的边界已经从集中化开始转向互联的万物。值得注意的是,以 Docker 为代表的容器,其计算能力,再一次给行业提供了一个很大的可能性。Docker 目前与 Linux 操作系统几乎可以捆绑谈之,容器引擎也几乎已经成了操作系统发行版的标配。如此一来,目前引擎原生支持的分布式集群能力,完全在操作系统层面,即完成了节点之间的互联,完全不需要额外的平台支撑。而 Docker 对于跨平台、跨机器架构等方面的支持,更是将容器生态的边界极大地扩展到其他范围,比如嵌入式领域、物联网场景。未来,借助容器技术实现去中心化,很快即变成一种新的探索道路,技术已经支撑,场景的磨合需要时间。再者,我们可以发现,容器层已经完全承载了业务,面临在一些特殊领域的能耗、资源使用等额外需求,Docker 这样的容器技术,完全有可能促进传统操作系统发行版的变革,发行版有望走向微型、单一、精简,更贴近行业场景。

面对困境,没有人会第一个想到使用最复杂的方式解决问题,反而简单高效的方案总是成为首选。容器目前的发展方向,正是以一种大道至简的方式,重新塑造未来去中心化的 IT 模式。

总结

行业的变迁,内部的需求,外力的推动,是一个重新思考计算边界的绝佳良机。计算的力量,推动着人,推动着 IT 移向新的位置。重新定义,人将从低级的信息排列和筛检工作中释放出来,逐渐走向创造和洞悉。徘徊在边界,在跃变的一刻,有人得道蜕变,有人就此留下。

作者简介:老司机孙宏亮|毕业于浙江大学,现为 DaoCloud 技术合伙人,在 DaoCloud 主要负责企业级容器云平台的研发工作。数年来一直从事云计算领域,是国内第一批研究和实践 Docker 的工程师,在国内起到重要的 Docker 技术布道作用。目前,拥有个人著作《Docker 源码分析》,同时是 Docker Swarm 项目的全球 Maintainer,并对 Docker 等其他项目有着大量的代码贡献。

posted @ 2016-09-19 16:25  张同光  阅读(108)  评论(0编辑  收藏  举报