Elasticsearch原厂Elastic与云端供应商AWS在2019年,为了Elasticsearch的授权杠上,不只隔空发文相互指责甚至对簿公堂。不过,就在2022年的时候,双方就商标侵权诉讼中达成和解,并进一步深化合作。最新的发展是Elasticsearch重新提供开源授权,供用户选择使用AGPL(Affero General Public License)。
这起事件始可以追溯到2018年,当时AWS指控Elastic虽然Elasticsearch采用Apache 2.0授权,但是却在代码库中混入部分专有代码,使得Elasticsearch虽然名义上是开源项目,实际上却转向私有化,导致许多用户在不知情的情况可能违反授权规范。为此AWS联合Expedia、Netflix等公司合作,分叉了一个新的Elasticsearch开源版本。
Elastic与AWS的战争,发生在开源软件开发商和云端服务供应商间矛盾加剧之际。云端公司被指利用开源软件赚钱,通过所谓露天采矿(Strip-Mining),也就是从开源社群挖掘软件资源,将其重新包装或是稍作修改后,作为自家商业服务销售,却又不回馈社群。
当时包括MongoDB、Redis和CockroachDB等开源项目,都不满云端厂商用其开源项目推出云端服务,不开源修改后的代码且不付费,因此接连修改授权限制云端厂商的使用。Elasticsearch也在2021年的时候,宣布将Elasticsearch和Kibana从原本的Apache 2.0转换到SSPL(Server Side Public License)以及Elastic双授权。
由于诸如SSPL这类授权未被开放源码促进会(OSI)认可为开源授权,虽然允许一定程度的自由使用和修改,并且目的在于保护软件创作者的权益,对一般用户来说仍拥有颇大的灵活性,但是对于商业和云端使用情境则有更多限制,因此在严格的开源社群标准下,并不被视为真正的开源授权。
AWS后来将Elasticsearch分叉版本更名为OpenSearch,Elastic和AWS的僵局在2022年得到解决,双方就侵权诉讼达成协议并同意继续合作,Elastic正式成为AWS的合作伙伴,降低了AWS与Elastic云端服务的集成障碍,使双方用户受益。
Elastic认为当初调整Elasticsearch使用SSPL和自家授权的目的已经达成,成功解决AWS当初分叉Elasticsearch所引发的混乱,因此现在Elasticsearch和Kibana除了SSPL和ELv2双授权,还进一步第三种AGPL授权供用户选用。
AGPL是一个OSI认可的开源授权,要求在网络服务中使用和修改软件时必须公开源码。与传统的GPL相比,AGPL更适合网络应用和云端服务,确保所有修改都必须共享。Elastic选择AGPL作为授权选项之一,表达了他们对开源社群的承诺,也期望消除当初修改Elasticsearch和Kibana授权所引发的争议。



2024-09-02
