Możliwość łączenia się z forkami jest zablokowana w oficjalnych klientach Elasticsearch

Elasticsearch opublikował wydanie Elasticsearch-py 7.14.0, oficjalnej biblioteki klienta dla języka Python, zawierające zmianę blokującą możliwość łączenia się z serwerami, które nie korzystają z oryginalnej komercyjnej platformy Elasticsearch. Biblioteka klienta zgłosi teraz błąd, jeśli druga strona użyje produktu, który pojawia się w nagłówku „X-Elastic-Product” jako coś innego niż „Elasticsearch” w przypadku nowych wydań lub nie przekazuje pól sloganu i build_flavor w przypadku starszych wydania.

Biblioteka Elasticsearch-py jest nadal dystrybuowana na licencji Apache 2.0, ale jej funkcjonalność ogranicza się obecnie do łączenia się z komercyjnymi produktami Elasticsearch. Według Amazona blokowanie dotyczy nie tylko forków Open Distro dla Elasticsearch i OpenSearch, ale także rozwiązań opartych na otwartych wersjach Elasticsearch. Podobne zmiany mają zostać uwzględnione w bibliotekach klienckich dla JavaScript i Hadoop.

Działania Elasticsearch są efektem konfliktu z dostawcami usług chmurowych, którzy dostarczają Elasticsearch jako usługi chmurowe, ale nie nabywają komercyjnej wersji produktu. Elasticsearch jest niezadowolony, że dostawcy usług chmurowych niemający nic wspólnego z projektem korzystają na odsprzedaży gotowych, otwartych rozwiązań, podczas gdy sami programiści zostają z niczym.

Elasticsearch początkowo próbował zmienić sytuację, przenosząc platformę na niewolną licencję SSPL (Server Side Public License) i zaprzestając publikowania zmian w ramach starej licencji Apache 2.0. Licencja SSPL jest uznawana przez OSI (Open Source Initiative) za niespełniającą kryteriów Open Source ze względu na obecność dyskryminujących wymagań. Pomimo tego, że licencja SSPL opiera się na AGPLv3, tekst zawiera dodatkowe wymagania dotyczące dostarczenia w ramach licencji SSPL nie tylko samego kodu aplikacji, ale także kodu źródłowego wszystkich komponentów biorących udział w świadczeniu usługi chmurowej.

Jednak ten krok tylko pogorszył sytuację i dzięki wspólnym wysiłkom Amazon, Red Hat, SAP, Capital One i Logz.io powstał fork OpenSearch, pozycjonowany jako pełnoprawne otwarte rozwiązanie opracowane przy udziale społeczności. OpenSearch został uznany za gotowy do zastosowania w systemach produkcyjnych i mogący zastąpić platformę wyszukiwania, analizy i przechowywania danych Elasticsearch oraz interfejs sieciowy Kibana, w tym oferując zamiennik komponentów komercyjnej edycji Elasticsearch.

Elasticsearch zaostrzył konflikt i postanowił utrudnić życie użytkownikom forka, wiążąc go ze swoimi produktami, wykorzystując fakt, że biblioteki klienckie pozostawały pod jego kontrolą (licencje na biblioteki pozostały otwarte, a fork OpenSearch w dalszym ciągu wykorzystywał je do zapewnić kompatybilność i uprościć przenoszenie użytkowników).

W odpowiedzi na działania Elasticsearch Amazon ogłosił, że w ramach projektu OpenSearch rozpocznie się rozwój forków 12 istniejących bibliotek klienckich i zaoferuje rozwiązanie umożliwiające migrację do nich systemów klienckich. Przed opublikowaniem forków użytkownikom zaleca się poczekanie z przejściem na nowe wydania bibliotek klienckich, a jeśli zainstalują aktualizację, przywrócenie poprzedniej wersji.

Źródło: opennet.ru

Dodaj komentarz