AWS现在发布新的Open Distro for Elasticsearch,提升其在开源界的美誉度。
该公司表示,该版本是“一款增添价值的Elasticsearch下游发行版,百分之百开源”,采用Apache 2.0许可证来发布,得到AWS的支持。Open Distro for Elasticsearch基于常规Elasticsearch项目的开源代码,还包含来自Kibana的代码,而Kibana是面向Elasticsearch的数据可视化插件。
Elasticsearch是一种面向商业的分布式搜索和分析引擎,可处理结构化数据和非结构化数据,基于开源Apache Lucene项目。它最常用于日志分析、全文搜索、安全智能、业务分析和运营智能等使用场合,被Adobe、思科、Netflix和斯普林特等大公司所使用。AWS认为,它也已被性质不确定的代码所污染。
AWS通过AWS Elasticsearch Service提供该软件的自家版本,AWS Elasticsearch Service是一种托管产品,便于用户在其云基础设施上部署、运营和扩展Elasticsearch集群。
AWS的云架构战略副总裁Adrian Cockcroft在一篇博文中坚持认为,Open Distro版本不是Elasticsearch的一个分支,而是打算作为这个平台的一个独立的、“功能丰富”的版本,且完全开源。
Cockroft认为,Open Distro之所以必不可少,是由于Elasticsearch Global BV在代码库中增添大量的专有软件,“搅乱局面”。这家名为“Elastic”的公司是Elasticsearch的主要开发商。
添加专有代码来创建新功能本身并不是问题。大多数开源软件的商业支持者都这么做,然后通常还会添加一些支持服务,以便从软件中获利。但是就Elasticsearch而言,现在开源用户获得的内容方面“极其缺乏清晰度”。
Cockroft说:“比如说,软件发布说明和说明文档都没有清楚地表明什么是开源源代码、什么是专有源代码。企业开发人员可能会无意中对专有源代码添加修复程序或增强功能。这就很难追踪和管理,可能导致违反许可证、立即终止权利。“
AWS担心的另一个问题是,它认为创新的焦点已从改进Elasticsearch的开源版本转向促进专有版本的实施。
Cockroft说:“我们已经与Elasticsearch的维护者Elastic讨论了我们担心的问题,包括主动提供大量资源,帮助支持社区驱动、非混合版的Elasticsearch。Elastic明确表示,它打算继续沿目前的道路前进。”
因此,亚马逊决定单独推出Open Distro,它拥有常规版本中所没有的新的开源功能,包括对传输中数据进行加密、用户身份验证、基于角色的细粒度访问控制及更多功能。
Cockroft表示,新功能旨在填补Elasticsearch开源版中的许多空白;在该版本中,安全、事件监控和SQL支持等功能仅面向采用(并购买)Elastic专有代码的那些用户。
Cockroft说:“其中许多功能是我们一直致力于添加到Amazon Elasticsearch Service中的功能。Open Distro for Elasticsearch使用户能够在他们希望的任何地方运行功能丰富的同一发行版,比如内部环境、笔记本电脑或云端。”
Constellation研究公司的分析师Holger Mueller告诉IT外媒SiliconANGLE,亚马逊在这种情况下大力支持Elasticsearch是明智之举,原因是该软件是其云基础设施产品的一个关键部分。
Mueller说:“这表明AWS可以成为为社区做贡献的优秀的开源公民。”
虽然Cockcroft表示此举表明AWS支持开源,但许多开源项目声称自己并没有从AWS及其他云提供商处得到足够的支持。Confluent、Redis、MongoDB和Neo4J等项目已催生出了各自的商业公司,这些公司愤怒地表示云提供商从它们的代码中获利,却没有回馈。于是一些修改了某些项目组件的许可证,设法阻止云提供商坐享其成。
AWS的首席宣传官Jeff Barr坚持认为,Open Distro for Elasticsearch并不是分支(fork)。他说:“我们会继续向上游贡献我们的代码和补丁,以促进这些项目的发展。”
现在可以下载Open Distro for Elasticsearch:
链接:https://opendistro.github.io/for-elasticsearch-docs/