上周,Elastic宣布他们将更改其软件许可策略,并且不会根据Apache许可2.0版(ALv2)发行Elasticsearch和Kibana的新版本。取而代之的是,该软件的新版本将根据弹性许可(限制使用方式)或服务器端公共许可(其要求使开源社区中的许多人不接受)提供。这意味着Elasticsearch和Kibana将不再是开源软件。为了确保两个软件包的开源版本仍然可用并得到良好的支持,包括在我们自己的产品中,我们今天宣布AWS将加紧创建和维护由开源Elasticsearch和Kibana获得ALv2许可的分支。
我们于2019年推出了适用于Elasticsearch的Open Distro,以为客户和开发人员提供功能齐全的Elasticsearch发行版,该发行版提供了ALv2许可软件的所有自由。适用于Elasticsearch的Open Distro是100%开放源代码发行版,可提供几乎每个Elasticsearch用户或开发人员所需的功能,包括对网络加密和访问控制的支持。在构建Open Distro时,我们遵循了建议的“上游优先”的开源开发实践。对Elasticsearch的所有更改都是作为上游请求请求发送的(#42066,#42658,#43284,#43839,#53643,#57271,#59563,#61400,#64513),然后我们包含了由在我们的分配中具有弹性。这确保了我们正在与上游开发人员和维护人员进行协作,而不是创建软件的“分支”。
选择派生一个项目并不是一个容易掉下来的决定,但是当社区的需求发生分歧时,这可能是正确的前进之路(就像他们在这里一样)。开源软件的一个重要好处是,当发生这种情况时,如果开发人员有足够的动力,开发人员已经拥有了自己接管工作所需的所有权利。这里有许多成功案例,例如社区开发的Jenkins CI工具。
当AWS决定基于开源项目提供服务时,我们确保有足够的能力并准备在必要时自行维护。 AWS拥有多年使用这些代码库的经验,并为Elasticsearch和Apache Lucene(基于Elasticsearch的核心搜索库)做出上游代码贡献,仅2020年一年就贡献了230多个Lucene。
我们的Elasticsearch和Kibana分支将基于最新的ALv2许可代码库7.10版。我们将在接下来的几周内发布新的GitHub存储库。随着时间的推移,两者都将包含在现有的Open Distro发行版中,以替代Elastic提供的ALv2版本。我们长期以来一直在努力,并将以促进健康和可持续的开源实践的方式工作,包括与贡献者社区实施共享的项目治理。
您可以放心,Elastic的许可证更改或我们作出的分叉决定都不会对您当前使用的Amazon Elasticsearch Service(Amazon ES)产生任何负面影响。今天,我们在Amazon ES上提供了18个版本的Elasticsearch,并且这些版本均不受许可证更改的影响。
将来,Amazon ES将由Elasticsearch和Kibana的新分支提供支持。我们将继续提供新功能,修复程序和增强功能。我们致力于提供兼容性,以消除更新客户端或应用程序代码的任何需求。与今天一样,我们将为您提供无缝升级到软件新版本的途径。
这一变化不会减慢我们为客户提供的增强功能的速度。如果有的话,社区拥有的Elasticsearch代码库为我们提供了新的机会,使我们可以更快地提高稳定性,可伸缩性,弹性和性能。
开发人员使用开放源代码软件的原因有很多,也许最重要的是可以自由选择在何处以及如何使用该软件。
自从1998年诞生以来,“开源”一词就具有特定的含义。Elastic声称SSPL是“自由和开放”的说法具有误导性和错误性。他们试图宣称开放源代码的好处,同时破坏开放源代码本身的定义。他们选择SSPL掩盖了这一点。 SSPL是一种非开放源代码许可证,旨在看起来像开放源代码许可证,这模糊了两者之间的界限。正如Fedora社区指出的那样,“ [认为SSPL是'免费的'或'开源的”会使FOSS生态系统中的所有其他许可证蒙上阴影。”
在2018年4月,当Elastic将其专有许可软件与ALv2代码混合在一起时,他们在“我们打开了X-Pack”中承诺:“我们没有更改Elasticsearch,Kibana,Beats,和Logstash-我们永远都不会。”上周,在兑现这一承诺之后,Elastic在同一页面上添加了一个脚注,指出“情况已经改变。”
弹性知道他们在做什么是可恶的。社区已经告知他们(例如,参见Brasseur,Quinn,DeVault和Jacob)。这也是为什么他们认为有必要在其最初的许可证更改博客的顶部写一个额外的风骚博客,以解释其行为的“ AWS让我们做到了”。大多数人都不会上当。我们没有让他们做任何事情。他们认为,限制许可将使其他人无法提供托管的Elasticsearch服务,这将使Elastic建立更大的业务。 Elastic有权更改其许可证,但他们也应加强并拥有自己的决定。
同时,我们对Open Distro for Elasticsearch所走的长期旅程感到兴奋。我们期待使用ALv2许可证为Elasticsearch和Kibana提供真正的开源选项,并与社区一起建立并支持这一未来。