Elastic 限制 Elasticsearch 客戶端連接到 OpenSearch
Elastic 開發(fā)者上個月向 elasticsearch-py 提交了一個 PR(已被合并),旨在修改 Elasticsearch Python 客戶端連接到 Elasticsearch 的驗證邏輯。根據(jù) PR 的描述,修改后的客戶端將無法連接到由 AWS 維護的 Elasticsearch 分支 OpenSearch,以及一些版本較低的 Elasticsearch 開源發(fā)行版,或是托管到 AWS Elasticsearch Service 的 Elasticsearch。
AWS 對此表示:“Elastic 維護的開源客戶端庫為多種編程語言提供了方便的高級接口。但在過去的幾周里,Elastic 向多個不同語言版本的客戶端增加了上述的新邏輯。雖然 Elasticsearch 的客戶端仍然開源,不過只允許連接到 Elastic 的商業(yè)產(chǎn)品。”
AWS 認為被廣泛采用的開源項目通常強調(diào)靈活性和包容性,這是為了避免被限制在單一項目上,所以 Elastic 這種行為具有破壞性,并給開發(fā)者帶去了阻礙。因此它決定從 Elasticsearch 的所有客戶端 fork 出新分支,并保證這些分支可以輕松連接到任何 OpenSearch 或 Elasticsearch 集群。AWS 計劃 fork 的客戶端包括:
- elasticsearch-py
- elasticsearch-java
- elasticsearch-net
- go-elasticsearch
- elasticsearch-js
- elasticsearch-ruby
- eland
- elasticsearch-php
- elasticsearch-rs
- elasticsearch-perl
- elasticsearch-specification
- elasticsearch-hadoop
AWS 表示,開發(fā)者只需對其應(yīng)用程序的代碼進行細小的改動,即可像以前一樣正常連接到 Elasticsearch 以及相關(guān)的衍生版本。它還建議開發(fā)者不要將任何由 Elastic 維護的客戶端升級到最新版本,因為這可能會導(dǎo)致應(yīng)用程序中斷。
自 Elasticsearch 變更開源協(xié)議以來,AWS 和 Elastic 這兩家公司就開始逐漸“脫鉤”。AWS 先是創(chuàng)建了一個自稱真正開源的 Elasticsearch 分支,并獲得了不少廠商的支持?,F(xiàn)在,Elastic 修改 Elasticsearch 的客戶端,以阻止連接到 AWS 的 OpenSearch。雙方彼此都不想產(chǎn)生任何關(guān)聯(lián)。
有人認為 AWS 的行為是在赤裸裸地“搶劫”開源項目,也有人認為 Elastic 從最初的變更開源協(xié)議,到現(xiàn)在限制用戶正常使用客戶端,不僅違背了開源精神,更是有拿用戶當做籌碼的意味。
本文轉(zhuǎn)自O(shè)SCHINA
本文標題:Elastic 限制 Elasticsearch 客戶端連接到 OpenSearch
本文地址:https://www.oschina.net/news/154014/aws-fork-clients-of-elasticsearch