vlambda博客
学习文章列表

因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支

整理 | 苏宓
出品 | CSDN(ID:CSDNnews)

1 月 15 日,知名数据搜索 Elastic 公司宣布,将对旗下 Elasticsearch 和 Kibana 进行开源许可修改,从 Apache 2.0 许可源代码协议修改成服务器端公共许可(Server Side Public License,SSPL)和 Elastic 许可的双重许可下。由此可以让用户可以选择要应用的许可。

同时,根据 Elastic 官方信息,从 7.11 版本开始,两个产品的所有维护分支,默认发行版将继续使用 Elastic 协议。

不过,这一举措引发亚马逊的强烈不满,1 月 21 日,AWS 官方发布声明表示,将创建和维护 Elasticsearch 和 Kibana 的一个分支,继续使用 ALv2 许可证。

因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支


因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支

亚马逊 Elastic “爱恨情仇”


在 2010 年,彼时程序员 Shay Banon 在找工作的闲暇之余,编写了一款搜索引擎来帮助正在蓝带烹饪学校学习厨艺的妻子管理越来越丰富的菜谱。

他的首个迭代版本叫做 Compass。第二个迭代版本就是 Elasticsearch(基于 Apache Lucene 开发)。他将 Elasticsearch 作为开源产品发布给公众,并创建了 #elasticsearch IRC 通道。

在此产品越来越受用户欢迎之际,2012 年,Shay Banon与好友 Steven Schuurman、Uri Boness 和 Simon Willnauer 共同创建了 Elasticsearch Inc 公司。

经过不断的迭代更新,Elasticsearch Inc 公司发展很快。在 2015 年旧金山举行的 Elastic{ON} 大会上,Elasticsearch 公司宣布了两项重要内容:

  • 第一:将公司品牌更名为 Elastic。

  • 第二:与在 AWS 上提供 Elasticsearch 主机托管服务的公司 Found 实现了合作。

回首过往,两家“势不两立”的因或许早在 2015 年这次的合作就已种下。

在合作后不久,亚马逊在 2015 年 10 月1日发布公告表示(https://aws.amazon.com/cn/blogs/aws/new-amazon-elasticsearch-service/):

Elasticsearch 是一个实时的分布式搜索和分析引擎,非常适合云环境。它是面向文档的,不需要预定义架构。它支持结构化、非结构化和时间序列查询,并用作其他应用程序和可视化工具(包括 Kibana)的基板。

今天,我们推出了新的 Amazon Elasticsearch Service。通过亚马逊旗下的管理控制台可以在几分钟内将 AWS Elasticsearch 部署到 Amazon 集群里。”

亚马逊希望借此吸引更多的用户使用 AWS 服务。

果不其然,亚马逊实现了这一小目标。据 2019 年《纽约时报》的一篇文章报道:

尽管 Elastic 的产品 Elasticsearch 已在 Amazon 上架,但 Amazon 仍然我行我素。

在不到一年的时间里,Amazon 靠着 Elastic 开发出来的东西赚到的钱就比这家初创企业赚到的还要多,因为它跟 Amazon 的其他产品结合得更紧密,让别人使用更方便。

在 2018 年,因亚马逊的压制,Elastic 再也受不了了,并被爆料,“正在更改有关共享其软件代码的规则。即不付钱就不能访问其产品中的某些元素,而且代码也不能自由共享。”

当时 Elastic 并没有对这一战略转变做出任何解释。但行业内的专家认为这些变化是为了应对 AWS 日益激烈的竞争

2019 年 9 月,Elastic 在加州联邦法院起诉亚马逊侵犯了自己的商标,因为 Amazon 曾经给自己的产品起来一个一模一样的名字:Elasticsearch 。同时,Elastic 在诉讼中表示,亚马逊“误导了消费者”。不过,亚马逊否认自己有任何的过错。

近日,Elastic 和亚马逊矛盾再次升级。

正如文章伊始所述,Elastic 发布声明(https://www.elastic.co/cn/pricing/faq/licensing)宣布对旗下 Elasticsearch 和 Kibana 进行开源许可修改。

至于为何要修改,官方声明表示:

为了保证社区和用户能够自由开放地访问、使用、修改和分发这两个产品和源码。另外,还通过限制云服务提供商在不共享其修改内容和服务管理层的源代码的情况下限制其将我们的产品作为服务提供,从而保护了我们在开发免费和公开分发的产品方面的持续投资。

同时,Elastic CEO Shay Banon 也解释道:“源代码许可的变更对绝大数免费使用我们默认发行版的用户及社区没有影响。它也对我们的云客户或自我管理的软件客户没有影响。”

那么真的是否没有影响呢?

当然不是。

此前,Elastic 曾表示过,与阿里巴巴和腾讯建立了合作伙伴关系,两个产品不受影响,微软、谷歌、阿里和腾讯甚至是 AWS 的 Elastic Cloud 也可以正常使用。

不过,反过来来看,AWS 不是 Elasticsearch 的唯一云计算提供商,如微软的 Azure 和 Google  Cloud 也提供了分析引擎。但是,两者之间存在很大差异,因为微软和谷歌都与 Elastic 有业务关系,而 AWS 没有。

对此,Elastic 也在声明中也指出:

我们与 Amazon Elasticsearch Service 上的 AWS 没有商业关系。不积极支持该服务,也不再希望我们对软件的投资直接受益于该服务。为了透明起见,我们还在与 AWS 进行持续诉讼。

由此可见,Elastic 对亚马逊的积怨已深。


因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支

亚马逊的“反击”


另一边,亚马逊也不会“坐以待毙”。

昨日,亚马逊发文宣布它将创建和维护 Elasticsearch 和 Kibana 的一个分支,继续使用 ALv2 许可证。

亚马逊称,它是在 ALv2 许可下提供 Elasticsearch 的软件即服务,而且它在 Elasticsearch 上的所有改进都递交到上游。

在公告中,亚马逊表示:

我们于 2019 年推出了 Elasticsearch 开源发行版,为客户提供和开发人员提供功能齐全的 Elasticsearch,提供 ALv2 许可软件的所有自由度。Elasticsearch 开源发行版 100% 开源,几乎提供每个 Elasticsearch 用户或开发人员需要的功能,包括网络加密和访问控制的支持。在构建开放发行版时,我们遵循了"上游第一"的推荐开源开发实践。

同时亚马逊也称,“在 Amazon ES 上提供了 18 个版本的 Elasticsearch,这些版本都没有受到许可证更改的影响。”


因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支

虽说开源软件代表着任何人都可以自由共享和修改的代码,但是我们也需要尊重版权。而针对此事,不少网友也发表了不同的看法(https://news.ycombinator.com/item?id=25865094):

网友 1:

我不明白为什么人们会在这里使用 AWS。Elastic 在 Apache 许可下使用该软这使 AWS 也有权提供此服务。也许他们没有商标权,所以会有法院来解决。

AWS 为该项目做出了贡献。这仅与 Elastic 及其业务模型有关。他们可能没有将其设为开放源代码,也可能不会得到广泛使用和成功。Elastic 可以提出一种行之有效的业务模型,如果不行,则不要责怪其他人。

网友 2:

开源最主要初衷是通过各方努力一起将产品变得更好,而不是拿去给资本资本谋利还不做一点贡献。

网友 3:

如果 Elastic 希望迫使 Amazon 做出修改,那么他们可以切换到 AGPL 进行修改。但是他们没有这样做——因为正如 AWS 博客所指出的那样,AWS 已经将所做的更改归还了。

问题不在于是否违反了开源精神。问题在于,AWS 更擅长通过竞争性托管服务来吸引客户。因此,Elastic 将许可切换到了非开源 SSPL,这使得提供托管服务从根本上是不可能的(要满足这些条款,亚马逊将需要有效地开源所有 AWS)。

参考:

https://news.ycombinator.com/item?id=25865094

https://aws.amazon.com/cn/blogs/opensource/stepping-up-for-a-truly-open-source-elasticsearch/

因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支

程序员如何避免陷入“内卷”、选择什么技术最有前景,中国开发者现状与技术趋势究竟是什么样?快来参与「2020 中国开发者大调查」,更有丰富奖品送不停!

因开源协议“大打出手”,AWS 宣布创建 Elasticsearch、Kibana 分支