Redis、MongoDB、Kafkaらが相次いで商用サービスを制限するライセンス変更。AWSなどクラウドベンダによる「オープンソースのいいとこ取り」に反発
オープンソースソフトウェアの開発元がクラウドベンダへの不満を表明し、商用サービス化を制限するライセンス変更を行う例が続いています。
高速なインメモリデータストアを実現するオープンソースソフトウェアとして知られる「Redis」の開発元「Redis Labs」は、2018年8月に同社が開発したRedis拡張モジュールに関するライセンスの変更を発表しました(Redis本体のライセンスはBSDライセンスのまま)。拡張モジュールには、全文検索を行うRediSearchなどが含まれています。
変更後のライセンスでは、クラウドベンダによる商用サービスでの利用を制限するものとなっています。
ライセンス変更を発表した記事「Redis’ License is BSD and will remain BSD」では、クラウドベンダへの不満を次のようにストレートに説明しています。
Why make that change?
Cloud providers have been taking advantage of the open source community for years by selling (for hundreds of millions of dollars) cloud services based on open source code they didn’t develop (e.g. Docker, Spark, Hadoop, Redis, Elasticsearch and others). This discourages the community from investing in developing open source code, because any potential benefit goes to cloud providers rather than the code developer or their sponsor.
なぜ変更するのですか?
クラウドプロバイダはオープンソースコミュニティの特長を用いて、彼らが開発していない(例えばDocker、Spark、Hadoop、Redis、Elastisearchやその他)オープンソースのコードを用いたクラウドサービスを何年にもわたって販売し、(何億ドルもの)売り上げをあげてきました。
これは、コミュニティがオープンソースコードの開発に投資することを妨げるものです。なぜなら、そこで得られたはずの利益がコード開発者やそのスポンサーではなくクラウドプロバイダーへ行ってしまうのですから。
MongoDBはAWSの互換サービスを「お粗末な模倣」と
2018年10月にはMongoDBのライセンスが変更され、商用サービスでの利用に制限がかかりました。
MongoDB社の共同創業者兼CTOのEliot Horowitz氏は、ライセンス変更を発表した記事「MongoDB now released under the Server Side Public License」で、その理由が大手クラウドベンダにあると次のように説明しています。
The revenue generated by a service can be a great source of funding for open source projects, far greater than what has historically been available. The reality, however, is that once an open source project becomes interesting, it is too easy for large cloud vendors to capture most of the value while contributing little or nothing back to the community. As a result, smaller companies are understandably unwilling to wager their existence against the strategic interests of the large cloud vendors, and most new software is being written as closed source.
オープンソースプロジェクトにとってサービスで得られる収入は、大事な資金源となり得ます。しかし現実は、あるオープンソースプロジェクトが人気になると、コミュニティにはまったく、あるいはほんの少しだけしか貢献していない大規模クラウドベンダがあっさりとその大部分を獲得していくのです。結果として、小規模な企業はこうした大規模クラウドベンダの戦略的な利益の対象になることを望まず、多くの新しいソフトウェアがクローズドソースとして開発されています。
AWSは、このライセンス変更が行われた数カ月後、2019年1月10日にMongoDB互換のサービス「Amazon DocumentDB」の提供を発表しました。
このサービスで提供されるのは、最新のMongoDBのバージョン4.0ではなくMongoDB 3.6互換のAPIです。しかも内部的にはMongoDBをそのまま使ったサービスではなく、AWS独自のデータベースを基盤としてMongoDB 3.6 APIをエミュレーションしているとされています。
こうしたことになっているのは、MongoDBのライセンスが商用サービスを制限するものとなっていることが影響している可能性があります。
MongoDBのCEO兼社長 Dev Ittycheria氏は、Techcrunchの記事でAWSのMongoDB互換サービスを「お粗末な模倣」だとして、次のようにコメントしています。「十分な技術力のあるデベロッパーなら、本物とお粗末な模倣の違いをすぐに見分けるだろう。MongoDBは今後も引き続き、市場に存在するどんな‘そっくりさん’にも勝る性能を維持するだろう」
AWSによる競合サービスをきっかけにライセンス変更
高いスケーラビリティを備える分散メッセージキューとしてビッグデータ処理などに使われる「Kafka」の開発元であるConfluentも、同社が提供するKafkaの一部のコンポーネントである「KSQL」「Confluent Connectors」「REST Proxy」「Schema Registry」などのライセンスを変更。商用サービスでの利用を制限しました。
同社CEOのJay Kreps氏は、ライセンス変更を説明する記事「License Changes for Confluent Platform」で、その理由をクラウドベンダ対策だと説明しています。
The major cloud providers (Amazon, Microsoft, Alibaba, and Google) all differ in how they approach open source. Some of these companies partner with the open source companies that offer hosted versions of their system as a service. Others take the open source code, bake it into the cloud offering, and put all their own investments into differentiated proprietary offerings. The point is not to moralize about this behavior, these companies are simply following their commercial interests and acting within the bounds of what the license of the software allows.
主要なクラウドベンダ(AWS、マイクロソフト、アリババ、Google)はそれぞれのオープンソースに対するアプローチを持っています。ホステッド版のサービスを提供しているオープンソース企業と提携する企業もあれば、オープンソースのコードを使って自社クラウドの独自サービスとして組み込み、差別化要因として用いるところもあります。
重要な点は、これをモラルの面で語ることではありません。こうした企業は単に商業上の利益に従って行動し、ソフトウェアライセンスが許す範囲内で行動をしているに過ぎないからです。
このライセンス変更の1カ月前に、AWSはKafkaのマネージドサービスである「Amazon Managed Streaming for Kafka」を発表しています。Confluentの幹部は、このAWSのサービスが発表されたことがきっかけでライセンス変更を行ったことを認める発言をしています。
オープンソース開発元がクラウドへの影響力を持とうとしている
それぞれの企業のライセンスの変更の理由は、クラウドベンダからコミュニティに対する貢献が小さいといった不満がベースにあるように見えます。一方で、ここであげた3社とも、すでに自社でRedis、MongoDB、Kafkaのマネージドサービスを提供しており、AWSなどのサービスはそれらと競合関係にあります。
すなわち大手クラウドベンダとの競合対策として開発元がオープンソースのライセンスを変更した、という見方もできるわけです。
多くのオープンソースが自由に誰でも利用できるソフトウェアであったことから、開発元企業だけでなく大規模クラウドベンダがそれを利用してサービスを立ち上げることも、これまでは自由に行えました。
これをオープンソース開発元企業から見ると、コミュニティにたいした貢献もしていないクラウドベンダが「いいとこ取り」しているように見えたわけです。
そこでオープンソースを開発する企業がこうした大手クラウドベンダによる「いいとこ取り」を許さず、ライセンスを通じてその利用形態に一定の影響力を持とうとして、具体的なアクションをとりはじめたのが今回のRedis、MongoDB、Kafkaで起きたことと言えます。
果たしてその影響力は今後のクラウドサービスをどう変えていくのでしょうか、あるいは今度はクラウドベンダ側から何らかのアクションが起きてくるのでしょうか。
いずれにせよこうしたライセンス変更は、クラウドベンダが提供するオープンソースソフトウェアのマネージドサービスに何らかの影響を及ぼすことになるでしょう。今後こうしたサービスを利用するときには、開発元が提供するサービスの有無やライセンスのあり方などを以前より気にする必要がありそうです。
(開発元による変更後のライセンスは、「オープンソースライセンスではない」という意見もあります。この記事ではそこには踏み込まず、そのままオープンソースと表記しています。ご了承ください)
商用サービスを制限するライセンス変更の流れ
オープンソースとして開発されてきたソフトウェアが、クラウドなどによる商用サービスを制限するライセンスへの変更は、2019年以後いくつも行われてきました。下記はそれらを紹介した記事です。この項目は随時更新します。
- Redis、MongoDB、Kafkaらが相次いで商用サービスを制限するライセンス変更。AWSなどクラウドベンダによる「オープンソースのいいとこ取り」に反発
- [速報]Google、大手クラウドに不満を表明していたMongoDB、RedisらOSSベンダと戦略的提携。Google CloudにOSSベンダのマネージドサービスを統合。Google Cloud Next '19
- オープンソースのCockroachDBも大手クラウドに反発してライセンスを変更、商用サービスでの利用を制限。ただし3年後にオープンソースに戻る期限付き
- AWSをElasticが名指しで非難。ElasticsearchとKibanaのライセンスを、AWSが勝手にマネージドサービスで提供できないように変更へ
- HashiCorp、全製品のライセンスを商用利用に制限があるBSLライセンスに変更すると発表
- Redis、クラウドベンダなどによる商用サービスを制限するライセンス変更を発表。今後はRedis社とのライセンス契約が必須に
あわせて読みたい
厚生労働省、IT業界の長時間労働是正のため、システム受発注時に気をつけるべき点を紹介した動画をYouTubeで公開。ナレーションは乃木坂46
≪前の記事
AWSが「CloudEndure」を買収。マルチクラウド対応のライブマイグレーションツール