27.09.2021

В официальных клиентах Elasticsearch блокирована возможность подключения к форкам

Компания Elasticsearch опубликовала выпуск elasticsearch-py 7.14.0, официальной клиентской библиотеки для языка Python, содержащий изменение, блокирующее возможность подключения к серверам, на которых используется не оригинальная коммерческая платформа Elasticsearch. Клиентская библиотека отныне будет выводить ошибку, если на другой стороне используется продукт, представляющийся в заголовке «X-Elastic-Product» не как «Elasticsearch» для новых выпусков, или не передающий поля tagline и build_flavor для старых версий.

Библиотека elasticsearch-py продолжает поставляться под лицензией Apache 2.0, но функциональность её теперь ограничена только возможностью подключения к коммерческим продуктам Elasticsearch. По данным компании Amazon блокировка затрагивает не только форки Open Distro for Elasticsearch и OpenSearch, но и решения на базе открытых версий Elasticsearch. Аналогичные изменения ожидают включения в клиентские библиотеки для JavaScript и Hadoop.

Действия Elasticsearch являются следствием конфликта с облачными провайдерами, которые предоставляют Elasticsearch в виде облачных сервисов, но не приобретают коммерческую версию продукта. Компания Elasticsearch недовольна тем, что выгоду получают ничем не связанные с проектом облачные провайдеры, перепродающие готовые открытые решения, а непосредственно разработчики остаются ни с чем.

Вначале компания Elasticsearch попыталась изменить ситуацию переведя платформу на несвободную лицензию SSPL (Server Side Public License) и прекратив публикацию изменений под старой лицензией Apache 2.0. Лицензия SSPL признана организацией OSI (Open Source Initiative) не соответствующей критериям Open Source из-за наличия дискриминирующих требований. Несмотря на то, что лицензия SSPL основана на AGPLv3, в тексте присутствуют дополнительные требования поставки под лицензией SSPL не только кода самого приложения, но и исходных текстов всех компонентов, вовлечённых в предоставление облачного сервиса.

Но данный шаг лишь усугубил ситуацию и совместными усилиями компаний Amazon, Red Hat, SAP, Capital One и Logz.io был создан форк OpenSearch, позиционируемый как полноценное открытое решение, развиваемое при участии сообщества. OpenSearch был признан готовым для использования в рабочих системах и способным заменить платформу поиска, анализа и хранения данных Elasticsearch и web-интерфейс Kibana, в том числе предлагая замену компонентам коммерческой редакции Elasticsearch.

Компания Elasticsearch пошла на эскалацию конфликта и решила затруднить жизнь пользователей форков путём привязки к своим продуктам, воспользовавшись тем, что клиентские библиотеки остались под её контролем (лицензия на библиотеки оставалась открытой и форк OpenSearch продолжал использовать их для обеспечения совместимости и упрощения перехода пользователей).

В ответ на действия Elasticsearch компания Amazon заявила, что проект OpenSearch начнёт развитие форков 12 существующих клиентских библиотек и предложит решение для миграции на них клиентских систем. До публикации форков пользователям рекомендовано повременить с переходом на новые выпуски клиентских библиотек, а в случая установки обновления откатиться на прошлую версию.

Источник.