去年至今,谷歌的开源容器技术应用Kubernetes风靡云服务市场。虽然出现过一次重大的安全漏洞,但依然不减其市场主导地位。长期被AWS和微软“压着打”的谷歌终于有了一个能抗衡的拳头产品。难怪一开年就吭哧吭哧上马数据中心项目,这是要跟AWS和微软正面杠上啊。
虽然,快速浏览一下Kubernetes页面的提交日志就会发现,人们对于开源容器引擎的贡献兴趣可能正在减退。然而,这样快速得出的表面认识并不正确。
因为,对于核心Kubernetes引擎的投入减少实际上正表明,谷歌和不断壮大的Kubernetes社区正在做几乎所有正确的事情,以确保其长期的成功。主要有哪些呢?
不是Windows,Kubernetes不搞核心垄断
在过去,云平台通过向核心添加功能获得强大的功能。例如,许多初创公司发现自己的财富被微软给毁掉了,因为微软将这些功能都变成了Windows的一个功能。但那是过去,现在不同。
Kubernetes本身已经给人留下了深刻的印象,尤其是它管理新功能的方式。正如Ant Stanley所指出的,这种“承诺日志”正在逐渐减少,部分原因是“这是项目成熟和稳定的迹象,而不是兴趣的下降”。“对于许多基础设施项目,”Christopher Schmidt补充道,“这将会是一个极其健康稳定的发展图表。”
他是对的,但这个图表之所以“健康”还有另一个原因,那就是 Kubernetes产品线对核心平台的看法。
正如Kubernetes的开发者Jaice Singer DuMars所强调的那样,“通过云服务供应商提取这样的东西,我们试图从核心提取东西,而不是从导入。”云原生计算基金会主管Chris Aniszczyk对此表示赞同,他补充说:“许多令人兴奋的事情都发生在Kubernetes核心回购之外。像CSI这样的东西显然是在核心回购之外开发的。简而言之,Kubernetes并不需要将所有的好东西(例如Istio和Helm)作为功能紧密地固定在核心中,这是一个共享平台。正如Jesse Ezell所言,关键是要让它周围的其他东西也能生长。
换句话说,这意味着“Kubernetes已经成为一个繁荣的生态系统的中心,但是云原生之旅还有许多其它令人兴奋的地方。”
如果所有的云服务平台团队都能够这样想就好了。
分散还是集中,Kubernetes有个好方法
先要明确一点:分散式的平台构建方法并不典型。大多数公司以及开源项目,比如openstack,并不能帮到自身。增强核心的吸引力,让更多的外围元素能聚拢过来,这样似乎更容易、更有效。然而,在培育云服务社区方面,这是一种非常糟糕的方式。
相比之下,Kubernetes似乎在社区方面做的一切都是正确的。这是它能成功取代那些更早进入容器市场(比如Mesosphere和Docker)的公司的一个重要原因。这也是为什么每个人都将自己的容器财富跟Kubernetes捆绑在一起,不管是AWS和谷歌这样的云巨头,还是VMware和Oracle这样的数据基础设施供应商。
这就是为什么我们应该为Kubernetes的创始人谷歌鼓掌。谷歌在很多方面都做得很好,但是让Kubernetes社区运营如此长久地保持正确是不可思议的。
这也是为什么我们应该提醒在开源领域日益活跃的AWS,应该从谷歌那里学习如何启动和促进开源项目。它有一个很好的机会使用其Firecracker应用来实现这一点,这是一种用于运行多租户容器工作负载的轻量级虚拟化技术。AWS的Matt Wilson指出,Firecracker的开源来自亚马逊的Lambda和Fargate团队,这表明开源正开始深入亚马逊的DNA。
这很好,尤其是AWS正努力应对这样的批评,即它为开源付出了太多,但给予很少。谷歌与Kubernetes最初和持续的合作,以及它如何建立Kubernetes核心来促进而不是控制后续的创新,这是一个很好的可以遵循的例子。
【中国IDC圈编译 未经授权禁止转载】
相关阅读: