前書き
ソーシャルコンピューティング研究者の@Yam3939です。
ACCESS Advent Calender 2022年の25日目へ投稿します。
昨日は、@rheza_h さんの話でした。
この記事は社内勉強会用に準備していた内容をマークダウンに書き直しました。
OSSはOpen Source Softwareです。
OSSの浸透
いまさらいうまでもないですが、OSSは浸透しています。
企業引継ぎにおけるソフト資産査定会社(日本シノプシス)の調査(出典:https://monoist.itmedia.co.jp/mn/articles/2105/24/news039.html 2021年) によると企業ソフトの98%にOSSが利用され、コードベースの75%はOSSです(下図)。
新技術とOSS
新技術の中でOSSは積極的に利用されています。
- AI, ML: Tensor, PyTorch, ...
- ロボット: ROS(v2)
- 車載: Automotive Grade Linux
- クラウド: Openstack, Kubernetes, ...
- 3Dプリンタ: RepRap
- AR SDK: ARkit, ARCore
-ブロックチェーン: Ethereum, OpenChain, Multichain, HyperLedger Fabric, ...
企業がOSSを使う理由
- 1位は「イノベーションへのアクセス」44%
- 2位はコスト削減 38%
- 3位はテクノロジースタックの現代化 37%
- 4位は開発効率の向上 35%
出典: https://www.openlogic.com/blog/2022-open-source-report-overview#motivations
ファウンデーションによる大型開発
主要なビジネスプレイヤーが結集して非競争領域をOSSで作成維持管理する流れは続いています。
- Apache Software Foundation: 2021年時点で1134プロジェクト、12億行のコード
- Linux Foundation: 2015年時点で56プロジェクト、11.5億行のコード
--(2021年次報告書では750プロジェクトで10億行以上のコードを維持と記述)
もやは大きすぎて何を数えているのかもわからないレベルですが、規模間をざっくりつかむために載せてみました。
パーミッシブライセンスの増加
コピーレフト(GPLなど)に対してパーミッシブのOSSライセンスの比率が増加しています。
出典: https://www.ricksoft.jp/blog/articles/001299.html 2021年
OSSライセンスの傾向
少し古いですが、2018年のBlackduckによる調査では以下の通りです(1%以上のみ)。
- 1 MIT License 38%
- 2 GNU General Public License (GPL 2.0) 14%
- 3 Apache License 2.0 13%
- 4 ISC License 10%
- 5 GNU General Public License (GNU) 3.0 6%
- 6 BSD License 2.0 (3-clause, New or Revised) License 5%
- 7 Artistic License (Perl) 3%
- 8 GNU Lesser General Public License (LGPL) 2.1(バージョン) 3%
- 9 GNU Lesser General Public License (LGPL) 3.0バージョン) 1%
- 10 Eclipse Public License (EPL) 1%
- 11 Microsoft Public License 1%
- 12 Simplified BSD License (BSD) 1%
- 13 Code Project Open License 1.02 1%
出典 https://www.sbbit.jp/article/cont1/34811 2018年
Whitesourceによる2021年の調査では以下の通りです。
- 1 Apache License 2.0 28%
- 2 MIT License 26%
- 3 GNU General Public License (GPL 2.0) 10%
- 4 GNU General Public License (GPL 3.0) 10%
- 5 BSD License 3 5%
- 6 GNU Lesser General Public License (LGPL) 2.1(バージョン) 4%
- 7 BSD License 2 License 2%
- 8 Microsoft Public License 1%
- 9 Microsoft .NET Public License 1%
- 10 GNU Lesser General Public License (LGPL) 2.0(バージョン) 1%
出典: https://www.ricksoft.jp/blog/articles/001299.html 2021年
Strip-mining問題(OSSと巨大企業の確執)
Strip-mining問題が浮上し大きな話題となっています。
Strip-miningとは露天掘りのことで、転じて、違法な資源採掘を示します。OSSの世界では巨大企業によるOSSへのただ乗りを示します。
Strip-mining防止のために新しいライセンスが続々登場しています。
例えば、Amazonに関しては:
- 2018年10月にMongoDBが発表した新しいライセンス「Server Side Public License(SSPL)」はMongoDB Community Serverおよび関連エコシステムを利用したサービスを提供する場合、商用ライセンスをMongoDBから購入するか、もしくは当該サービスをオープンソースとして公開することを義務付けた
- AWSがElasticsearchとKibanaのフォークによる「OpenSearch」プロジェクトを発表しました
- Elasticは2019年1月のAWSを非難する声明のなかで、「私たちはマイクロソフト、Google、Alibaba、Tencent、Clever Cloudやそのほかのクラウドベンダとは協力関係を結んでいる。」と、AWS以外とは問題ないことを示し、問題はAWSにあるのだと指摘しました
- AWSとElasticsearchは商標権で法廷闘争をしましたが、今年2022年に和解しました。
OSSの最近のライセンス
- Source-available License
- 2018 年以降、 MongoDB, Inc. や Elastic 社が AWS に対抗するためにライセンスを変更
- Commons Clause
- 「当該ソフトウェアの価値を、実質的にそのまま提供するようなサービスで利益を得てはならない」という一文を追加
- SSPL
- SSPL は、 MongoDB が 2018 年に独自に作成したライセンス
GPL, AGPL を更に強力にしたようなもので、「当該ソフトウェアの機能をサービスとして提供する場合、その周辺ソフトウェア (管理用ツールなど) も公開しなくてはならない」というような内容
各 Linux の Distribution が MongoDB の配布を取りやめた
- SSPL は、 MongoDB が 2018 年に独自に作成したライセンス
- PolyForm
- ソフトウェアのためのクリエイティブ・コモンズ」を目指したもので、Heather Meeker さんという方が起草。非営利での使用は許可する
OSSのセキュリティ
Log4j
- 脆弱性Log4Shell(CVE-2021-44228)が2021年12月9日に一般に公開されました。これはLog4jがLDAP(Lightweight Directory Access Protocol)とJNDI(Java Naming and Directory Interface)のリクエストをチェックしないことを利用し、任意のJavaコードを任意のサーバー・コンピュータ上で実行できてしまう。
- ソースコードを修正するGitHub登録メンテナーも少ないことが判明し、改修作業も時間が要しました。同様に利用者自体もパッチ適用や新たに発見された脆弱性に対応するために修正作業に追われたので、この10年で最悪の危険性の高い脆弱性とも言われています。
大企業のOSSセキュリティ施策
- Googleはオープンソースソフトウェアの発展や安全性に多額の投資を行っており、2021年8月にはオープンソースセキュリティ対策事業に対する1億ドル(約110億円)の支援策を含む総額100億ドル(約1兆1100億円)の出資を発表しました。
- Microsoftも同様に200億ドルの投資を発表しています。
ブランドとしてのOSS
人材をひきつけるためのブランドとしてOSSが使われています。
例:
- FacebookのJavascript ライブラリ React
- Netflixのカオスエンジニアリングツール Chaos Monkey
OSSのサイズ
大きなOSS企業
2020年のデータは:
- Red Hat 30 billion Linux Distribution (IBMが買収)
- MuleSoft 6.5 billion Integration platform
- Databricks 6 billion data analytics platform
- Elastic NV 5 billion search products
- Confluent 2.5 billion real-time messaging software (Kafka)
- Hashicorp 2 billion management of cloud-computing infrastructure
出典 What Are The Biggest Open Source Software Companies In The World?
https://analyticsindiamag.com/what-are-the-biggest-open-source-software-companies-in-the-world/ 2020年
なお、RedhatはIBMに買収されています。
大きなOSS
-2500万行のLinuxが最大(すべてのドライバを含む)
- 実際にスマホで動いているのは300万行程度
企業境界を越えたOSSの動き:OpenChain
大企業がシステムを構築する、外部に開発を依頼するときに、それらのソフトウェアにOSSを含めた場合、個別のライセンスやアップデートを含めた責任がどうなっているのかが把握しづらいことが、OSS導入の障害です。
OpenChainは、それを解決しようとするLinux Foundationのプロジェクト
米Google、Facebook、MicrosoftやUber、日本のソニー、日立、トヨタ自動車や富士通、ドイツのシーメンスやボッシュが参加しています。
最終的な成果物としてライセンス管理のソフトウェアも作られていますが、それよりも大事なのは要件定義と設計です。
2022年の代表的なOSS
何を代表と呼ぶかは人それぞれ、領域それぞれですが、記事から引用しておきます。
- Mozilla Firefox
- LibreOffice
- GIMP
- VLC Media Player
- Linux
- Blender
- GNU Compiler Collection
- Python
- PHP
- Shotcut
出典: Top 10 Open Source Software Examples Of 2022
https://www.designrush.com/agency/software-development/trends/open-source-software-examples
むすび
メリークリスマス!
みなさんにとって新しい年が良い年でありますように!
また、ACCESS Advent Calender 2023年でお会いしましょう!
参考文献
- OSS ライセンスの最近の潮流: PolyForm License について
https://tech.bitbank.cc/20210823/ 2021年 - 最近見かける新しいライセンスについて
https://blog.kengo-toda.jp/entry/2021/01/20/234622 2021年 - ソフトウェアのオープンソース比率が70%に、5年前の36%からほぼ倍増https://monoist.itmedia.co.jp/mn/articles/2006/03/news043.html 2020年
- オープンソースソフトウェアの採用率は98%に拡大、脆弱性含む割合も増加の一途https://monoist.itmedia.co.jp/mn/articles/2105/24/news039.html 2021年
- オープンソースソフトウェア(OSS)ライセンスの比較・まとめ、GPLやMITは何が違うのか
https://www.sbbit.jp/article/cont1/34811 2018年 - 2021年08月24日2021年オープンソースライセンス:トレンドと予測
https://www.ricksoft.jp/blog/articles/001299.html 2021年 - オープンソースによるサービスの市場規模、2027年に600億米ドル到達予測
https://prtimes.jp/main/html/rd/p/000002099.000071640.html 2021年 - Googleが1億円規模の「オープンソースソフトウェア支援プログラム」への資金提供を発表、1億円は「まだ序の口」
https://gigazine.net/news/20211004-secure-open-source-pilot-google/ 2021年 - AWS、ElasticsearchとKibanaのフォークによる「OpenSearch」プロジェクトを発表。Elasticとの溝は埋まらないままhttps://www.publickey1.jp/blog/21/awselasticsearchkibanaopensearchelastic.html 2019年
- Redis、MongoDB、Kafkaらが相次いで商用サービスを制限するライセンス変更。AWSなどクラウドベンダによる「オープンソースのいいとこ取り」に反発
https://www.publickey1.jp/blog/19/redismongodbkafkaaws.html 2019年 - AWS、Elasticとの商標権訴訟が解決--「Elasticsearch」の表現をサイトなどから削除
https://japan.zdnet.com/article/35183815/ 2022年 - SSPLはオープンソースライセンスにあらず!? Fedora、リポジトリからSSPLソフトを削除へ
https://gihyo.jp/admin/clip/01/linux_dt/201901/17 2019年 - 儲かるオープンソースのカギは大企業の参加
~スマホ屋から金融企業まで盛り上がるコンプライアンスSIG
https://gihyo.jp/dev/serial/01/china-oss-frontline/0003 2021年 - Top 10 Open Source Software Examples Of 2022
https://www.designrush.com/agency/software-development/trends/open-source-software-examples - Ten takeaways from the 2022 State of Open Source survey
https://opensource.org/ten-takeaways-from-the-2022-state-of-open-source-survey 2022年 - The changing economics of open source
https://www.technologyreview.com/2022/04/21/1050788/the-changing-economics-of-open-source/ 2022年 - Free and Open Source Software organizations: A large-scale analysis of code, comments, and commits frequency
https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0257192