开源危机:云计算厂商成为开源吸血鬼?

为什么一些开源公司变得越来越“闭源”

阅读数:9142 2018 年 11 月 27 日

处于巅峰的开源软件现在正面临着潜在的危机。

毫无疑问,开源软件的概念已经彻底改变了软件世界。在软件世界接受这种新的格局之前,它们花了数十亿美元与这个想法斗争了好多年。但是,现在有不少人开始怀疑开源软件的本质——几乎所有人都可以使用开源软件,并将它们用于任何目的——这种想法导致开源软件开发者在分布式云计算服务时代出了大问题。

两家著名的开源软件公司决定改变其部分软件的发行许可,目的是让云计算提供商更难或无法提供基于这些软件的服务。

亚马逊将在 AWS re:Invent 2018 大会上宣布他们为即将到来的一年制定议程,开源项目和云计算服务之间的交集已经开始引起人们的注意。


Cloud Foundry Foundation 执行董事 Abby Kearns 在 2017 年 GeekWire 云技术峰会上发表演讲

Cloud Foundry Foundation 执行董事 Abby Kearns 说:“在我看来,开源在创造商业机会中的作用已发生了变化,我们将会看到更多这种类似的观点”。

变迁

我想直率地说:多年来,我们就像个傻子一样,他们拿着我们开发的东西大赚了一笔”。

Redis Labs 首席执行官 Ofer Bengal 直言不讳。他的公司以开源内存数据库 Redis 而闻名,公司已经存在了八年,在快速变化的现代企业软件世界中算是一颗常青树。

云计算在 2011 年起步,它是早期采用者或初创公司的福音,因为这些公司无法承担在服务器上投入数百万美元来验证一个有前途但未经证实的想法。大多数成熟的公司仍然以老式的方式构建自己的技术基础设施,但他们越来越意识到,开源软件让他们可以以比传统软件公司提供的专有软件包更灵活、更便宜的方式构建基础设施。


Redis Labs 创始人兼首席执行官 Ofer Bengal

Redis 在那个时期变得非常流行,美国运通、Home Depot 和梦工厂等大公司使用 Redis 构建了他们的技术基础设施。Redis Labs 推出了自己的产品 Redis Enterprise,它将数据库作为部署在公有云上的服务,也支持在自有基础设施上运行,并继续为 Redis 开源项目做出贡献。

AWS 坚持把客户放在第一位,同时在寻找那些有吸引力的技术和服务,以便为他们的客户也提供类似的服务。AWS 在 2013 年推出了由 AWS 托管的基于开源版 Redis 构建的云服务。

Bengal 说,从那时起,AWS 从客户身上赚取了“数亿美元”,但却没有为构建和维护 Redis 项目贡献那么多。我们不可能确切地知道这些钱的具体数目,但可以肯定的是,AWS 和其他云提供商肯定会从开源开发者的工作中受益,但他们却没有为这些人支付一分钱。

Bengal 说:“Redis 的 99%贡献是由 Redis Labs 提供的”。一直以来,在开源世界中流行着这么一个观点,认为项目是由贡献者社区驱动的,但实际上,付费开发者在大多数现代开源项目中贡献了大部分代码,正如 Puppet 创始人 Luke Kanies 在我们之前的故事中所解释的那样。

付给开发人员的钱必须来自某个地方。在很长一段时间内,Redis 是开源商业模式的一个成功的案例,在开发基础项目的同时开发自己的软件和服务。但随着越来越多的公司采用云计算,并将其现有的应用程序和基础设施“迁移”到 AWS 等提供商提供的平台上,同时使用 AWS Redis 服务和其他服务(如 EC2 和 S3 等 AWS 服务)就变得理所当然(而不只是通过 AWS Marketplace 使用 Redis 服务)。

Bengal 说:“这个问题不仅仅是针对我们,而且针对迄今为止所有成功的开源项目”。AWS 因为在市场上的影响力成为这些话题的焦点,但它并非全球唯一提供这类将开源项目作为服务的云提供商。

8 月份,Redis Labs 决定将基于 Redis 构建的新数据库扩展的许可——没有针对 Redis 本身——改成了 Commons Clause,该许可规定其他公司不允许将这些扩展作为云服务提供。

Bengal 说:“对于将我们的软件置于宽松的开源许可证还是置于 Commons Clause 许可之下,我们有我们的自由。这基本上是一种商业决策”。

10 月份,另一家著名的开源数据库公司也做出了类似的决定。MongoDB 宣布,在未来,它将使用一个叫作 SSPL 的许可授权 MongoDB 社区服务器软件,该许可允许云提供商提供 MongoDB 作为服务,但他们必须开源所有相关的代码,或者与 MongoDB 达成商业协议。


MongoDB 总裁兼首席执行官 Dev Ittycheria

MongoDB 总裁兼首席执行官 Dev Ittycheria 说:“每当一个新的开源项目变得非常流行时,云提供商就会剥夺我们的技术,将免费软件放在他们的平台上,然后从中获取大部分(如果不是全部)价值,但几乎不回馈开源社区”。MongoDB 目前在纳斯达克市场估值 43 亿美元。“我们认为,需要像我们这样的人来领导和帮助下一批开源公司和项目的发展和成长”。

这两家数据库公司同时做出类似的决定并非巧合。数据库是非常复杂的项目,对于任何规模的企业来说都是非常重要的。

Ittycheria 估计,MongoDB 多年来在研发方面花费了 1.5 亿美元来创建和维护数据库的开源版本。在上一财年,MongoDB 通过其商业软件和支持服务获得了 1.545 亿美元的收入。

在 Redis 宣布它的决定后,Bain Capital Ventures 董事总经理 Salil Deshpande 在 Techcrunch 上发表了一篇文章,他写道:“我们的观点是,开源软件从来都没有打算让云基础设施公司拿去销售获利”。Deshpande 是 Redis Labs 的投资者,同时也在组织开源公司一起开发 Commons Clause 许可。

开源软件逐渐成为企业软件世界的重要组成部分,商业利益不可避免地会越来越多地影响其发展方向。现在的问题是,开源的意义是什么?那些通过开源项目提供服务而获利丰厚却没有参与开源项目开发的公司欠了这些项目的创建者和维护者些什么?

开和关

在考虑第一个问题时,最重要的是要意识到,Redis 的 Commons Clause 许可绝对不是一种开源许可。Redis 仍然是广泛使用的 BSD 许可之下的开源项目,只是它现在将 Commons Clause 许可应用于基于 Redis 项目而开发的扩展。

MongoDB 则有点不同。SSPL 许可规定,当云提供商将开源项目作为服务提供时,他们也必须开源他们的代码,这并没有违背开源精神。

Ittycheria 说:“每个人都想要更多的开源,但得有人资助它。要资助它,就需要有商业存在”。

Adam Jacob 是西雅图 Chef 联合创始人兼首席技术官,他负责维护三个开源项目,旨在简化基础设施和应用程序管理,他认为这才是开源项目、开发者和未来的正确方向。


Adam Jacob,Chef 联合创始人兼首席技术官

Jacob 说:“我不认为这是一个以社区为基础的运动,开源运动或自由软件运行不应该是这样子的”。

他说,当他们开始筹集资金时,像 Redis 和 MongoDB 这样的公司很乐意利用开源社区的友好和开放向世界宣传他们的杰作。

Jacob 说:“有趣的是,从开源商业模式的角度来看,他们所做的开源部分始终是他们商业模式的组成部分”。他们的主要目标是创建一个“漏斗策略”,吸引用户使用免费版本并在商业版本上追加销售。

然而,对于很多小公司来说,参与开源社区和维护项目是与更成熟的公司展开竞争的唯一方式。作为一家未经证实的年轻企业软件公司,最困难的事情之一就是说服其他公司使用你的产品,并让他们为此支付费用。

Kearns 说:“开源提供了很多机会,特别是对于初创公司而言”。但她也说,在某些时候,早期的战略决策可能会成为沉重的负担。另一件真正难以做到的事情就是说服那些曾经免费享受开源现在却要为它们付费的人。

地平线上的云

这或这会成为争论的焦点:当开源爱好者的时代一去不复返,参与开源软件还有价值吗?那些云提供商仍然能够在不回馈社区的情况下从中获益吗?

Jacob 说:“我认为我们错了,我们实际上已经不再相信自由软件价值是构建更好的社区的必要条件,因为我们很早就认为商业和社区实际上是两个不同的东西”。

Redis 和 MongoDB 认为他们并没有把他们的开源社区置于危险的境地。他们认为他们别无选择,只是在寻找新的方法来为他们的开发人员提供财务支持,开发者对社区来说至关重要,即使这些工作仍然带有附加条件。

三大云提供商目前在这些问题上保持沉默,拒绝让高管们参与有关开源许可转变的讨论。谷歌从一开始就宣传开源的价值,而微软和 AWS 已经走上了不同的道路,走向了这个新世界。

多年来,作为“头号公敌”,微软开始拥抱开源软件,聘请了具有丰富开源经验的开发人员,并为几个社区做出了重要贡献。AWS 与开源社区密切合作的进展较慢,但​​这种局面在过去几年中已经有所改变,并招募到了像 James Gosling 和 Adrian Cockcroft 这样的开源资深人士来转变公司对社区贡献的想法。

如果更多的公司转向这种更强势的许可方式,可能会迫使云提供商的产品开发策略发生转变,因为他们需要评估哪些服务值得进行商业交易,哪些不值得。目前,仍然有很多初创公司围绕传统的开源许可推出他们的产品,这说明整个行业正在等待市场对 Redis 和 MongoDB 的举动做出反应。

但是,云计算已经改变了几乎所有有关现代企业如何构建和管理他们在 21 世纪保持竞争地位所需技术的假设。如果说云计算改变了开源软件背后的一些假设,那也不足为奇。

英文原文: https://www.geekwire.com/2018/open-source-companies-considering-closed-approach/

编者按:就在本文发布前后,知名图数据库 Neo4j 也宣布企业版彻底闭源,想进一步了解可以查看我们的报道

活动推荐


12 月 7 日北京 ArchSummit 全球架构师峰会上,来自阿里、京东、Streamlio 的讲师齐聚一堂,共同分享“Apache Pulsar 解决运维痛点”、“Dubbo 应用实践”和“Flutter 在京东的实践效果”等开源技术相关经验与实践。详情点击 https://bj2018.archsummit.com/schedule

收藏

评论

微博

发表评论

注册/登录 InfoQ 发表评论

最新评论

Geek_092552 2018 年 11 月 27 日 22:01 0 回复
本质上还是云计算厂商威胁到了开源软件公司的利益,因为它们的业务有重叠的地方。非云计算公司使用开源软件也获得了巨大利益,同时也对开源软件没有做什么贡献,但是开源软件公司并没有指责它们。
我支持开源,但也清楚开源如果影响到自己的业务导致自己破产那么开源走不远,如果云计算导致开源公司没法维持业务下去那开源迟早最后会走向闭源。其实这快应该改变下协议,规范下开源可用于的点,不过之前看到一个协议补充了关于云计算这块的漏洞,所以各大开源公司可以跟进 1 回复
fkpwolf 2018 年 11 月 27 日 18:28 0 回复
还真是 Infrastructure as Code
Geek_dada21 2018 年 11 月 27 日 14:55 0 回复
云服务提供商的确是大部分存在不劳而获的情况,包括国内的阿里、腾讯之类
Alenc 2018 年 11 月 27 日 13:19 1 回复
Redis、MongoDB已经在修改开源协议,其他还会远吗?云厂商还是要多多回馈社区,否则土壤恶化,没有赢家
没有更多了