Эта статья — обзор новостей о том, как:

  • Amazon выпустила Open Distro for Elasticsearch
  • почему они это сделали?
  • что это значит для компании Elastic и для Open Source вообще?

Elastic


Жила была компания Elastic.

Было у них несколько Open Source продуктов:

  • сам Elasticsearch: сервер, который получает, хранит логи и позволяет по ним делать поиск
  • Kibana: frontend движок, который берёт данные из Elasticsearch и из них рисует красивые репорты
  • ещё несколько утилит, которые собирают логи. Например LogStash

Elasticsearch бывает называют ELK (лось), как акроним основных элементов:

Elasticsearch
LogStash
Kibana

Хотя компоненты «L» и «K» в общем-то можно заменять на другие: Beats, Grafana,…

Ещё у Elastic есть X-Pack.
Это коммерческий продукт. Часть из возможностей X-Pack — платная (довольно дорогая) и часть — бесплатная (но лицензия всё равно коммерческая).

X-Pack расширяет возможности ELK:

— security
— alerting
— monitoring
— reporting
— graph
— …

Причём если не ставить X-Pack, то отсутствуют некоторые довольно существенные возможности. Например, по умолчанию ELK отсутствует аутентификация, то все данные «торчат» наружу. Можно прикрутить обратный прокси и сделать basic authentication (так себе вариант), а можно купить X-Pack.

Ход 1: Elastic хитро меняет лицензию



В июне 2018 Elastic написал статью в духе, что вот мы мол настолько открытые, что теперь даже наш коммерческий X-Pack делаем открытым.

Но народ быстро сообразил, что это подстава.

Потому что начиная с версии 6.3 репозиторий для ELK и X-Pack один, а лицензии две:

  • для ELK — Apache 2.0
  • для X-Pack — коммерческая лицензия. То есть код теперь открытый, но платить надо как и раньше.

image

И поставив теперь себе ELK вы никогда точно не знаете — у вас Open Source версия или коммерческая?

Когда вы исправляете что-то в ELK и отсылаете PR — это уходит в открытую часть кода или в коммерческую?

То есть Elastic сделала так, что поставить Open Source версию ELK'a стало очень непросто.
И народ стал переживать, что если у вас стоит коммерческая версия Elasticsearch, или Elasticsearch является частью вашего продукта, то может случиться так, что вы будете должны денег.

Хотя некоторые представители Elastic объясняли, что это не так: вот был раньше закрытый коммерческий X-Pack, а теперь есть открытый коммерческий X-Pack — как это может быть хуже?

Для обычных пользователей дело осложнялось ещё тем, что в образы Docker, Elastic включил X-Pack, который работал в Trial-mode (что было не очень очевидно), и через какое-то время отваливался и требовал платить. Да, X-Pack в этих контейнерах можно было не использовать, но те, кто не в теме, могли попасться.

А Амазону похоже не понравилось то, что с момента этих изменений, все новые возможности (Index Lifecycle Management, APM UI, Infrastructure and Logs UI, Kibana multi-tenancy, Kibana Canvas) Elastic стал добавлять только под коммерческой лицензией (хотя зачастую бесплатно для пользователей) в которой был прописан запрет использовать эти новые возможности для SaaS предложений, то есть как раз для того, что делал Амазон.

Ход 2: Амазон выпускает Open Distro for Elasticsearch


11 Марта 2019 на блоге AWS вышел анонс Open Distro for Elasticsearch.

А также статья, в которой они объясняют почему они выпустили Open Distro for Elasticsearch..

Суть которой:

  • Мы в Амазон любим Open Source и зависим от многих классных Open Source продуктов
  • Мы поддерживаем и вкладываемся в Open Source
  • Нам не нравится то, что сделали Elastic. Мы попросили их, чтобы они сделали чисто открытую версию Elasticsearch и мы были готовы вложиться, но они отказались
  • Поэтому мы выпускаем свою открытую (Apache 2.0) версию которую мы называем Open Distro for Elasticsearch
  • И туда мы включаем многие возможности, которые были в платном X-Pack. Такие как security, notifications, SQL, Performance Analyzer и т.д. Всё полностью открыто и бесплатно.

В связи с этим возникает ряд вопросов, на которые они уже приготовили FAQ. Вот эти пара моментов мне показалась важными:

  • Open Distro for Elasticsearch — это не форк. Amazon будет контрибутить в Elasticsearch
  • Amazon будет стараться не отставать от Elasticsearch: когда Elastic будет выпускать новые версии, то будут выпускаться соответствующие версии Open Distro for Elasticsearch.

Реакция, последствия


С одной стороны, ход Амазона рассматривается, как агрессивный по отношению к Elastic:
— Elastic вкладывается в разработку Elasticsearch, а зарабатывает на этом Amazon: на своём AWS у Амазона есть ряд предложений Elasticsearch.

С другой стороны, Амазон пишет, что Elasticsearch в значительной степени построен на успехе других Open Source продуктов:

— Apache Lucene, который начал развиваться ещё 11 лет до того, как появился Elasticsearch
— Jackson для парсинга JSON
— Netty, как контейнер для веба
— и другие

Если Elastic может зарабатывать на других Open Source продуктах, то почему Amazon не может зарабатывать на Elasticsearch?

Вот тут интересное обсуждение этой новости:
https://news.ycombinator.com/item?id=19359602

Народ пишет, что теперь многие Open Source разработчики дважды подумают: а стоит ли открывать свой код под открытыми лицензиями, когда есть вот такие примеры того, что другие берут этот код и зарабатывают на этом?

Причём даже модель «open core» не является панацеей, потому что заинтересованная сторона может дописать свой код сверху так, как это сделал Амазон для Elasticsearch.

Комментарии (14)


  1. rumkin
    13.03.2019 07:44

    Во-первых, продавать модули для обеспечения авторизации и управления доступом в эпоху грандиозных утечек преступно. Во-вторых, Red Hat успешно продает открытое ПО. В-третьих, Амазон и сам вкладывается, возьмите тот же Firecracker – достойный конкурент Докеру с большим коммерческим потенциалом.


    1. begemoth3663
      13.03.2019 11:49

      ...Red Hat успешно продает открытое ПО.

      https://www.redhat.com/en/store/red-hat-enterprise-linux-desktop-or-red-hat-enterprise-linux-workstation#?sku=RH0844913


      ну, какбэ назвать "успешным" впаривание энтерпрайзам, модно озабоченных мультивендорностью/мультиклаудностью/мульти-etc, окаменевшего г0#нища — весьма спорное утверждение :)


      чем Red Hat лучше AWS'а?
      зацените:
      Desktop (self-support only) — $49
      это без поддержки (!) открытое ПО (!)
      вопрос: за что?


      только включаете поддержку, тут же получаете $299.


      P.S. не апологет венды, но сравнить отношение цена/юзабилити стоит.
      потому, что то, что в венде для энтерпрайза работает искаропки, в окаменевшем редхате и драчевым напильником не доведёшь до вменяемого состояния...


      так что, не пример Red Hat, не пример...


  1. SlavikF Автор
    13.03.2019 08:47

    Вот тут в трэде:
    news.ycombinator.com/item?id=19359882
    народ проводит параллели, что недавно похожая история у Амазона была с MongoDB.
    И MongoDB перешли с открытой лицензии AGPL v3 на более ограниченную лицензию Server Side Public License (SSPL).

    Даже предлагается новый термин: вместо «Open Source» — «Source Visible».

    И в свете работы таких гигантов, как Amazon, это вроде бы имеет смысл: похоже, что по другому компании с открытым кодом (Open Source) просто не выживут.

    Мне кажется, что это глобальный трэнд, и со временем всё больше и больше продуктов будет выходить под подобными лицензиями.

    У меня есть самописная система хостинга аудиофайлов (CMS), и я как-то не горел желанием открывать её. Но вот идея подобной лицензии мне очень по душе…


    1. rumkin
      13.03.2019 08:56
      +1

      По сути злой Амазон делает больше для открытого ПО, чем сами авторы открытого ПО. А Source Visible не решает проблему переписывания открытой разработки. Нужны новые модели монетизации.


      1. SlavikF Автор
        13.03.2019 09:08

        Что такое «переписывание открытой разработки»?

        Вот к примеру, как вы себе представляете переписывание Source Visible Elasticsearch?


        1. rumkin
          13.03.2019 09:48

          Что такое «переписывание открытой разработки»?

          Взяли алгоритм. Написали по нему код.


          как вы себе представляете переписывание Source Visible Elasticsearch?

          Так же как Google переписал проприетарную Java.


    1. dimas
      13.03.2019 19:46

      С MongoDB тоже еще не факт, что это не выйдет им боком… Потому что тут уже озаботились другие разработчики, что делают свои какие-то приложения, использующие монгу, и вдруг оказалось что при определенной трактовке теперь за неё можно платить… а это далеко не везде окупится, да и немного похоже на «первая доза бесплатно»…

      И если действительно пойдет перетекание на использование других БД, то получится что они таки выстрелили себе в ногу…


  1. EvilBeaver
    13.03.2019 09:27
    +1

    Новый виток в опенсорсе. Раньше злые буржули писали код и зарабатывали на этом, а добрые гики писали бесплатное и типа «Viva La Resistance, нам денех не нада».

    Теперь и злые буржуи и добрые гики поняли, что открытый код позволяет зарабатывать и зарабатывают. А идея «открытого кода без денех» подвисла в воздухе и вопросом «а стоит ли открывать свой код под открытыми лицензиями, когда есть вот такие примеры того, что другие берут этот код и зарабатывают на этом» задаются разные авторы статей. А суть в том, что сам вопрос потерял актуальность. Да, теперь на открытом коде зарабатывают все, а закрыть уже и не получится. Мир изменился и придется в нем как-то жить и придумывать новые добрые идеологии.


    1. SlavikF Автор
      13.03.2019 10:04

      а закрыть уже и не получится


      Почему закрыть не получится?

      Да, идеологически, сегодня закрытый код народ не уважает, и наверное это уже не поменяется. С «котом в мешке» никто не горит желанием иметь дел.

      Но, вот нарисовывается новая модель: «код открытый, можете его менять, но не можете продавать как сёрвис» — это в каком-то смысле частичное закрытие.

      Этим путём пошли Elastic, MongoDB.

      Gitlab вообще изначально так и сделал: EE версия — код открытый, лицензия коммерческая, запилить свой публичный Gitlab сёрвис вам нельзя (опубликовать свой проект на своём инстанце Гитлаба — можно, а вот конкурировать с Gitlab.com — нет)

      Думаю, что это «золотая середина».


      1. kmansoft
        13.03.2019 18:46

        > В общем-то если Elastic вложили миллионы долларов и годы времени в разработку Elasticsearch, то наверное у них есть причины ожидать, что Амазон будет делиться с ними, когда AWS продаёт Elasticsearch as a service

        На Hacker News цитируется завление Амазона:

        Они утверждают, что предлагали денег Elastic-у (компании) чтобы Open Source код снова был отделён от кода который требует коммерческой лицензии (и они бы использовали в своём облаке только открытую часть). Elastic отказались.

        > случае с MongoDB получилось как-то некрасиво: Амазон запил DocumentDB, и она вообще не Open Source

        Получается что от MongoDB у Амазона только API (по крайней мере то что торчит наружу), а к этому какие претензии могут быть?

        Сравниваем с Java API на Андроиде — там это как бы считается «хорошо», то есть в целом общество (те обсуждения которые я видел) считает что раз речь идёт только о копировании API а не о копировании кода (Java SDK в Андроиде), то это допустимо и даже хорошо, ну чтобы программы работали. И мысль о том что Google должен платить даже просто за копирование API не находит понимания.

        А вообще для Амазона конечно самое главное — это именно API чтобы клиенты облака могли использовать. И они сделают для этого всё что угодно, и деньги и таланты у них есть.

        Вот интересная параллель: года 2-3 назад Амазон запустили сервис Amazon Mail at Work (или как-то похоже). Они «взяли и сделали» свою реализацию Exchange (конкретно протокола EWS). И он работал, я пробовал. Были ошибки, их исправляли. А теперь сравним с Zimbra или Kerio, где тот же EWS заявлен но годами не исправляется. Такой подход Амазона просто даже с технической точки зрения вызывает уважение.


        1. Stas911
          14.03.2019 05:18

          Дык писали, что DocumentDB вообще основан на системе хранения, которую Амазон сделал для своей serverless Aurora. Про остальную начинку публичной информации нет, но, подозреваю, что там тоже мало общего с монгой.


          1. kmansoft
            14.03.2019 19:25

            Ну тогда возмущение вдвойне непонятно.


  1. Sjam
    13.03.2019 11:21

    >Народ пишет, что теперь многие Open Source разработчики дважды подумают: а стоит ли открывать свой код под открытыми лицензиями, когда есть вот такие примеры того, что другие берут этот код и зарабатывают на этом? 

    А как живет Линус Торвальдс открыв свое ядро? Или тот же RH?


    1. begemoth3663
      13.03.2019 11:56

      А как живет Линус Торвальдс открыв свое ядро?

      неплохо :)
      Red Hat отвалил ему своих акций :)
      такие аттракционы невиданной щедрости — редкость...


      Или тот же RH?

      ну, под IBM'ом, смею предположить, будет ему кисло.