近日,Elastic 在官网发文称将对 Elasticsearch 和 Kibana 在许可证方面进行了重大的更改,由开源 Apache 2.0 许可证改成采用 Elastic License 和 SSPL(服务器端公共许可证)。html
对于 Elastic 的这一决策,AWS 在 AWS 开源博客官方博客发表文章《Stepping up for a truly open source Elasticsearch》 — Elastic 正在破坏开放源代码自己的定义,而 AWS 将加紧建立和维护由开源 Elasticsearch 和 Kibana 得到 Apache 许可 2.0 版(ALv2)许可的分支。node
如下为 AWS 开源博客发表的文章全文翻译。git
上周,Elastic 宣布他们将改变软件许可策略,将再也不以 Apache License 2.0 版本(ALv2)发布 Elasticsearch 和Kibana 的新版本。取而代之的是,新版本的软件将在 Elastic License(限制了软件的使用方式)或 Server Side Public License(有一些限制让不少开源社区没法接受)下提供。这意味着 Elasticsearch 和 Kibana 将再也不是开源软件。为了确保这两个软件包的开源版本仍然可用并获得很好的支持,包括在咱们本身的产品中,咱们今天宣布 AWS 将出面建立并维护一个 ALv2 受权的开源 Elasticsearch 和 Kibana 的分叉。github
咱们在 2019 年推出了 Open Distro for Elasticsearch,为客户和开发人员提供功能齐全的 Elasticsearch 发行版,提供ALv2受权软件的全部自由。Open Distro for Elasticsearch 是一个 100% 开源的发行版,它提供了几乎每一个 Elasticsearch 用户或开发者都须要的功能,包括支持网络加密和访问控制。在构建 Open Distro 的过程当中,咱们遵循了 "上游先行 "的推荐开源开发实践。全部对Elasticsearch 的改动都以上游 pull requests 的形式发送(#42066, #42658, #43284, #43839, #53643, #57271, #59563, #61400, #64513),而后咱们将 Elastic 提供的 "oss "构建包含在咱们的发行版中。这确保了咱们与上游开发者和维护者合做,而不是建立一个软件的 "fork"。segmentfault
选择分叉一个项目并非一个轻率的决定,可是当一个社区的需求出现分歧时,这多是一条正确的前进道路--就像这里的状况同样。开源软件的一个重要好处是,当这样的事情发生时,若是开发者有足够的动力,他们已经拥有了全部须要的权利,能够本身接手工做。这里有不少成功的案例,好比 Grafana 就是从 Kibana 3 的分叉中产生的。服务器
当AWS决定提供一个基于开源项目的服务时,咱们确保咱们有能力并准备好在必要时本身维护它。AWS 带来了多年与这些代码库合做的经验,同时也为 Elasticsearch 和 Apache Lucene(Elasticsearch构建的核心搜索库)作出了上游代码贡献--仅 2020 年就有超过 230 个Lucene 贡献。网络
咱们对 Elasticsearch 和 Kibana 的分叉将基于最新的 ALv2 受权代码库,7.10 版本。咱们将在将来几周内发布新的 GitHub 仓库。随着时间的推移,这两个版本将被包含在现有的 Open Distro 发行版中,取代 Elastic 提供的 ALv2 构建。咱们将长期参与其中,并将以促进健康和可持续的开源实践的方式开展工做--包括实现与贡献者社区共享项目治理。elasticsearch
您能够放心,不管是 Elastic 的许可证变动,仍是咱们分叉的决定,都不会对您目前享受的 Amazon Elasticsearch 服务(Amazon ES)产生任何负面影响。今天,咱们在 Amazon ES 上提供了 18 个版本的Elasticsearch,这些版本都不会受到许可证变动的影响。ide
将来,Amazon ES 将由 Elasticsearch 和 Kibana 的新分叉提供支持。咱们将继续提供新功能、修复和加强功能。咱们致力于提供兼容性,以消除您更新客户端或应用程序代码的须要。就像咱们今天所作的那样,咱们将为您提供一个无缝的升级路径到新版本的软件。性能
这一变化不会减缓咱们为客户提供的加强速度。若是有的话,一个社区拥有的 Elasticsearch 代码库为咱们提供了新的机会,使咱们在提升稳定性、可扩展性、弹性和性能方面的进展更快。
开发者出于许多缘由而接受开放源码软件,其中最重要的缘由多是能够自由地在他们但愿的地方和方式使用该软件。
自 1998 年 "开源 "一词被提出以来,它就有了特定的含义。Elastic 关于 SSPL 是 "自由开放 "的说法是误导和错误的。他们试图宣称开源的好处,同时又在削去开源自己的定义。他们对 SSPL 的选择掩盖了这一点。SSPL 是一个非开源许可证,它的设计看起来像一个开源许可证,模糊了二者之间的界限。正如 Fedora 社区所说的那样,"[将 SSPL 视为'自由'或'开源'会致使[一个]阴影笼罩在 FOSS 生态系统的全部其余许可证上。"
2018 年 4 月,当 Elastic 将他们的专有受权软件与 ALv2 代码共同混合时,他们在 "We Opened X-Pack "中承诺。"咱们没有改变Elasticsearch、Kibana、Beats 和 Logstash 的任何 Apache 2.0 代码的受权--咱们永远不会改变。" 上周,在违背了这一承诺以后,Elastic 更新了同一页面,并在脚注中写道:"状况有变"。
Elastic 知道他们作的事情很蹊跷。社区已经告诉他们这一点(例如,见Brasseur、Quinn、DeVault 和 Jacob)。这也是为何他们以为有必要写一个额外的虚张声势的博客(在他们最初的许可证更改博客之上),试图将他们的行为解释为 "AWS 让咱们这么作"。大多数人并无被愚弄。咱们没有让他们作任何事情。他们认为,限制他们的许可证将锁定其余人提供托管 Elasticsearch 服务,这将让 Elastic 创建更大的业务。固然 Elastic 有权改变他们的许可证,拥有本身的决定。
同时,咱们对咱们与 Open Distro for Elasticsearch 一块儿踏上的长期旅程感到兴奋。咱们期待着为 Elasticsearch 和 Kibana 提供一个使用 ALv2 许可证的真正的开源选择,并与社区一块儿建设和支持这个将来。