容器技术的未来发展道路

容器已经成为计算基础设施的共同语言,它植根于一个充满活力的开源生态系统中。开放容器计划(Open Containers Initiative,OCI)正致力于确保这一点不变。

 

如今,容器作为计算基础设施的一个重要组成部分的作用似乎已不言而喻,但是,如果没有技术领导者为其未来投资而采取的有意识的行动,它们很可能会成为马后炮。尽管 OCI 对开放标准的持续推动可能会使 IT 巨头损失几十亿美元的收入,但是开发者已经受益于多种免费的开源容器技术。

 

OCI 认为,为了确保这项重要技术持续发展,它们的开源遗产需要在未来长期存在。而且他们的工作还没有结束。就像很多业界人士指出的那样,我们还需要做更多的工作来让这项技术更容易实现,让刚刚进入这个生态系统的开发者更容易接触到它。

 

过去就是现在

 

最开始,有 VMware。2000 年,这家软件公司刚刚成立一年多,就以一己之力为企业的 x86 虚拟化市场打开了大门。2002 年,该公司已经赚到了第一个 100 万美元。2004 年,EMC 以 6.35 亿美元收购了 VMware,但其业务还在增长,到 2010 年,它已经占据了虚拟化市场的 84%。对于 VMWare 来说,五年多的统治地位是个好消息,但是它却让 OCI 的执行董事、云原生计算基金会(CNCF)的首席技术官 Chris Aniszczyk 和其他开源倡导者为下一代云计算寻找更公平的选择。

 

从 2000 年发布 FreeBSD 的 jail 机制,到 2001 年发布 Linux VServer,再到 2004 年发布 Solaris 容器的测试版,容器与开源精神一直相互交织。它们也是起源于 Linux 的产物。专注于 Kubernetes 实施的软件公司 Weaveworks 的 CEO 兼创始人 Alexis Richardson 说:“这里几乎是所有相关技术的发源地。”

 

Phil Estes 是 AWS 的首席工程师,也是 OCI 技术监管委员会的成员,他补充道:“这和以前的文明层一样,都建立在前一个文明之上,都有一个贯穿始终的线索,那就是所有这些都是(在开源生态系统中)合作开发的。”

 

但是到了 2013 年,Docker 这一品牌在容器领域的成功让那些希望看到容器技术多样化市场的人感到不满。

 

Estes 说:“有一些人对 Docker 把这些(现有的技术)组合在一起以赢得英雄般的欢迎非常不满,也有一些人说,‘我用这个或者那个工具已经五到十年了’”。

 

在容器领域最著名的支持者是 CoreOS。2014 年,它发布了 rkt 容器运行时规范时,该领域的一些人看到了冲突的产生,并采取了行动。

 

“OCI 几乎直接回应了一个事实,即许多业界人士认为这是一种冲突过程,有人会说 CoreOS 有更好的想法。有人会说 Docker 有更好的想法,而我们将分裂市场。”——这可能会通过制定不同企业所遵循的竞争标准来阻止市场采用这些标准。“用更加友好的方式说:‘嘿,让我们一起来创造一些关于什么是容器以及如何运行容器的通用规范。’但暗流涌动的是,大家都知道,rkt 和 Docker 可能会分化这个行业。”

 

在 2015 年 OCI 成立之初,它的主要重点是标准化容器运行时,以避免市场分裂。但是 Aniszczyk 和 OCI 的其他人认为这是一种零敲碎打的解决方案,而额外的标准化工作可以帮助使容器技术变得更加强大并且能够互操作,从而得到更广泛的采用。Aniszczyk 说:“最后,我们要对这个栈进行标准化,下一步是镜像格式,然后下一步就是分发。”

 

现在塑造未来

 

Aniszczyk 表示,OCI 推动标准化,拥抱协作的开源社区,这使得容器有了立足之地。类似 Kubernetes 的竞争技术早在 OCI 的标准化运动之前就已存在,但是对于开放标准的推动使得它们在 Docker 格式和协议上有更多的自由。

 

“如果你回到整个容器运动的开始,假如有很多不同的容器格式的话,你将看不到 Kubernetes 和所有这些生态系统的爆发。”Aniszczyk 说,“对于一个用户来说,会有太多的干扰而无法完全融入其中。事实上,在不同的云供应商和注册中心之间切换起来很容易,这很好,而且这样做也很简单。”

 

Estes 补充道:“Linux 开创了一个时代,从企业到初创公司,围绕开源的构建对于所有人都是非常普遍的。”OCI 延续了这一传统,它的成员包括诸如 AWS、谷歌、IBM、微软、Docker 和 VMWare 这样的大公司。开源和围绕 OCI 标准进行整合的容器技术创立者们描绘了一条通向未来的道路——甚至是科技巨头都采用开源的理想。

 

对于一些公司来说,OCI 的努力是他们开发容器生态系统产品并为开源容器项目方面做出贡献的一个原因,并且他们计划长期这样做。比如 Weaveworks 提供了 Kubernetes 的商业产品和支持。Richardson 说:“目前,在希望一切免费的终端用户的利益和为最终用户支持的企业利益之间存在一个平衡。双方所使用的技术中许多共同的部分都是开源的,但是工作流程、活动和结果都与商业交易相关。”

 

未来不会私有化

 

Aniszczyk 和 OCI 希望确保容器的未来能在未来几年中以开源范式为根基。OCI 并不满足于阻止有可能破坏容器应用的潜在的标准军备竞赛,因为,在撰写本文时,OCI 希望发布新的镜像规范,使容器的应用变得更有效。Aniszczyk 进一步指出:“运行时是标准化的,镜像规范也是标准化的,分发规范也是标准化的。建立规范是最后要做的事情,因此在未来的一两年里可能会有类似的事情要做。”

 

OCI 主席希望容器有一个明确的前进方向:开源的未来意味着社区不会陷入混乱。

 

“容器总体上来说,我们已经在行业上实现了现代化,并且使用了一系列良好的原则来完成开源的基础设施,”Aniszczyk 说,“它从容器开始,但是它正在向下一个编排工作负载转移。Kubernetes 是事实上的方式,但是谁知道接下来会发生什么呢?”

 

Richardson 同样对容器技术的发展道路感到好奇。他说:“我并不担心开源容器或者 Kubernetes 会在某种程度上成为闭源。但是,对 Linux 和 Kubernetes 进行投资并从中获益的公司是否会有长期的兴趣?”

 

考虑到容器作为“计算机基础设施通用语言”的角色,他说,这个问题是至关重要的。据他估计,现在有 2000 到 3000 万人能写软件应用程序:这个数字大约每五年翻一番。“十年内,将会有 1 亿到 1.5 亿的开发者,”他表示,“这意味着,75% 的开发者甚至还没有开始。它们并不想知道关于 Kubernetes 的事情——他们想知道如何为朋友或企业编写有趣的应用程序。他们在广泛性和价值性上有一定的技能,但在工程方面并不深入。这些都显示出一个趋势,即(需要)更好的开发者体验,因此,容器和其周围的产品需要很好地配合才能做到这一点。”为了确保容器继续得到广泛使用,就必须使其易于访问,而具有高门槛的碎片化系统对此无益。

 

不管计算机世界发生了什么变化,处于生态系统核心的那些人坚信,容器的未来绝对是开源的。就像 Aniszczyk 说的那样:“所有这些技术都是开源的,这是肯定的。对于基础设施而言,我认为,现在秘密已无从隐藏。”

 

作者介绍:

 

Chris Stokel-Walker,《经济学人》(The Economist)、彭博社(Bloomberg)、BBC、《连线英国》(Wired UK)的驻英国特约记者。

 

原文链接:

 

https://increment.com/containers/containers-and-open-source/