Elastic使客戶端庫與亞馬遜主導的開源分支不相容以回擊OpenSearch

在搜尋和分析引擎Elasticsearch的製造商Elastic重新授權其核心產品使其不再是開源之後,亞馬遜領導了一個社羣努力對其進行分支。2021年7月,該專案的貢獻者宣佈了OpenSearch 1.0的第一個普遍可用性 (GA) 版本,這是Elasticsearch 7.10.2和Kibana 7.10.2的Apache 2.0許可分支。

opensearch logo

似乎是對開源分支的回擊,Elastic已開始使其客戶端庫與OpenSearch不相容。Python客戶端已更新為執行API請求,該請求將驗證與Elasticsearch的連線並在未收到正確響應時引發錯誤。在討論停止之前,PR收到了來自社羣的40個“不贊成”的反應和一輪簡短的批評。

“看到這一點令人失望,” Invenio產品經理Lars Holm Nielsen說。“你在迫使我們作為旁觀者在戰鬥中選邊站。我們開發了一個開源產品,可以輕鬆地與Elasticsearch或OpenSearch一起使用,然後使用者可以自己選擇是否需要Elasticsearch或OpenSearch。

“現在,如果我們想要OpenSearch或Elasticsearch,我們可能必須為所有使用者做出選擇。Elastic的這種行為和其他行為確實沒有讓我對Elastic以及您將來可能會做的事情有任何信心。不要把這一切都歸咎於亞馬遜——你已經更改了伺服器許可證,你不必再採取行動。”

Elastic高階工程經理Philip Krauss在關閉對討論的評論之前做出了迴應。

“亞馬遜OpenSearch是一種不同的產品,”克勞斯說。“雖然有一些共同的歷史,但已經存在許多導致真正混亂和問題的差異。”

Elastic還修改了其用於Elasticsearch的.NET 聯結器,以包括“首次使用前的pre-flight檢查”,使用者認為這不是增強功能。

Elastic高階工程師Steve Gordon表示,此更改並未破壞受支援的配置,其目的是“通過快速失敗來避免消費者錯誤地假設他們在未經測試且可能無法按預期執行的受支援配置中明確顯示這種不相容性。”

上週,OpenSearch迴應了Elastic最近導致許多客戶端不相容的變化,承諾建立一組新的客戶端庫,使應用程式可以輕鬆連線到任何OpenSearch或Elasticsearch叢集:

許多在其應用程式中使用Elasticsearch和OpenSearch的開發人員也使用Elastic 維護的開源客戶端庫,這些庫為幾種流行的程式語言提供了方便的高階介面。在過去的幾周裡,Elastic 向其中幾個客戶端新增了新邏輯,這些客戶端拒絕連線到OpenSearch叢集或執行Elasticsearch 7開源發行版的叢集,甚至那些由 Elastic自己提供的叢集。雖然客戶端庫仍然是開源的,但它們現在只允許應用程式連線到 Elastic 的商業產品。

OpenSearch釋出了一份包含十幾個客戶端的列表,貢獻者計劃為這些客戶端建立分叉,以保持與所有Elasticsearch發行版的相容性,即使是那些由Elastic製作的發行版。

“我們不建議將任何由Elastic維護的客戶端更新到最新版本,因為這可能會導致應用程式中斷,”OpenSearch維護者在最新的專案更新中敦促使用者。

Elastic 阻止官方客戶使用開源分支的決定進一步削弱了該公司在重新獲得Elasticsearch許可後剩餘的商譽。

“看起來Elastic已經吸取了開源帶來的所有好處,現在正在吐槽,”OSI標準和政策總監Simon Phipps

ElasticPress.io服務的製造商10up是WordPress生態系統中最著名的Elasticsearch驅動產品之一,它仍在考慮在Elasticsearch放棄其開源許可後的下一步行動。該公司並不急於選邊站。10up平臺和系統副總裁Vasken Hauri表示,這場爭端“不是我們在短期內(未來 2-3 年)擔心的事情。”

升級到Elasticsearch 7.11+需要在繼續使用Elastic的專有產品或切換到開源分支之間做出選擇。Hauri表示,該公司“幾乎沒有利用Elasticsearch現在提供的大部分功能”,並預計當前的路線圖“可能會再執行幾年,而無需從Elasticsearch獲取新功能。” 目前,ElasticPress WordPress 外掛的6,000多名使用者和ElasticPress.io服務的客戶沒有什麼可擔心的,因為Elastic與亞馬遜重新開戰。

評論留言