|
この新しい時代において、オープンソースはますます活発に発展しており、オープンソースとクラウドの関係はますます複雑化し、その結合はますます高まっています。クラウドはオープンソースソフトウェアにとって最適な環境の一つであり、オープンソースソフトウェアの飛躍のための安全で効率的なエンジンも提供しています。 1997年5月、エリック・S・レイモンドは「オープンソースのバイブル」と称される『伽藍とバザール』を出版し、オープンソース運動の独立宣言の幕開けとなりました。以来、オープンソースは、リーナス・トーバルズ、ケネス・レーン・トンプソン、リチャード・マシュー・ストールマン、エリック・スティーブン・レイモンドといった個々の英雄たちの登場から、この分野における組織の認知と参加の拡大へと進化を遂げてきました。オープンソースのオープンで平等、協調的で共有的なモデルは、徐々に新世代のソフトウェア開発パラダイムへと発展しました。オープンソースは、特にクラウド時代において、ソフトウェア開発のあらゆる側面を網羅する、世界的なソフトウェア技術と産業革新を牽引する力の一つとなっています。 本稿では、エンタープライズソフトウェアの歴史とオープンソースソフトウェアの開発パターンを検証することで、ソフトウェア開発とデリバリー手法の進化を紹介します。オープンソースソフトウェアの開発と利用に関するよくある誤解を分析し、オープンソースソフトウェアのビジネスモデルとエコシステムを考察し、クラウド時代におけるオープンソースソフトウェアとクラウドの統合と相互促進について考察します。 オープンソースが不可欠な理由機能1: オープンソース インフラストラクチャ ソフトウェア アプリケーションの幅と深さの拡大基盤ソフトウェアはコンピューティング業界の「魂」です。過去数十年にわたり、オープンソースの急速な発展に伴い、初期のオープンソースソフトウェアはアプリケーション側に重点を置いていましたが、オペレーティングシステムやデータベースといった重要な基盤ソフトウェアは、依然として閉鎖的で独自の開発モデルとビジネスモデルを採用していました。今日、基盤ソフトウェアは徐々にオープンソースアプローチへと進化しています。ソフトウェア開発者の97%と企業の99%がオープンソースソフトウェアを利用しており、基盤ソフトウェア、産業用ソフトウェア、そして新興プラットフォームソフトウェアにおけるオープンソースの採用は、飛躍的な発展の重要な原動力となっています。中国情報通信研究院の「オープンソース・エコシステム白書(2020年)」は、近年、中国企業が基盤ソフトウェア分野におけるオープンソースプロジェクトの開発に徐々に注力するようになり、オペレーティングシステム、データベース、ミドルウェアなどの分野で数多くのオープンソースプロジェクトが出現し、国際的な財団によるトップクラスのオープンソースプロジェクトも数多く存在すると指摘しています。 特集2:オープンソースソフトウェアが生み出す価値がより顕著にオープンソースは、世界のデジタル技術革新の原動力となり、強力な技術革新モデルへと進化を遂げています。当初はソフトウェア産業を中心に展開していましたが、ハードウェア、チップ、ビデオ、IoT、AIといった多分野に拡大し、ビジネスモデルも成熟しつつあります。現在では、新製品、新アーキテクチャ、新プラットフォームがオープンソース化され、最先端の研究成果さえもオープンソースとして公開されています。オープンソースは、世界の技術進歩にとって、ますます重要な方向性となりつつあります。 特徴3:国がこれまでにないほどオープンソースソフトウェアを重視している。2021年には、「国民経済社会発展第14次五カ年計画要綱及び2035年までの長期目標」において、「オープンソースデジタル技術コミュニティなどのイノベーションコンソーシアムの発展を支援し、オープンソースの知的財産権と法制度を整備し、企業によるソフトウェアソースコード、ハードウェア設計、アプリケーションサービスのオープン化を奨励する」必要性が明確に示されました。オープンソースは国家戦略レベルにまで高められ、急速な発展が見込まれていることは疑いようがありません。中国人民銀行弁公室、中国サイバースペース管理局事務局、工業情報化部弁公室、中国銀行保険監督管理委員会弁公室、中国証券監督管理委員会弁公室は共同で「金融業界におけるオープンソース技術の応用と発展の規制に関する意見」(以下、「意見」)を発表しました。近年、オープンソース技術は金融業界の様々な分野に広く応用され、金融機関の技術革新とデジタルトランスフォーメーションの促進に積極的な役割を果たしている一方で、セキュリティや制御性など多くの課題にも直面しています。「意見」の公表は、金融機関によるオープンソース技術の合理的な応用を規制し、応用レベルと自立的な制御性を向上させ、オープンソース技術の健全かつ持続可能な発展を促進することに貢献するでしょう。 ソフトウェアの発展とオープンソースの歴史コンピュータ産業の黎明期において、ソフトウェアはハードウェアの機能をサポートする役割を担っていました。1970年代にUnixが登場するまでは、高級言語を用いてオペレーティングシステムを開発する前例はありませんでした。ソフトウェアは汎用性に欠け、独立した単体ではなくソフトウェア開発プロジェクトとして販売されていたため、プロジェクトと共にソースコードを提供するのが一般的でした。顧客はシステムを継続的に保守する必要があり、開発者はライフサイクル全体にわたる保守責任を負うことを望まなかったのです。主にC言語で実装されたUnixの登場により、オープンで汎用的なオペレーティングシステムが実現可能となり、ハードウェアとソフトウェアの互換性と汎用性が追求されるにつれて、ソフトウェアの開発とライセンス供与が現実的になりました。 Unix開発の初期段階において、オーナーであるAT&Tはソフトウェア業界を避けるという異例の姿勢をとった(主力の通信事業が厳しい独占禁止法の圧力下にあり、余計なトラブルを招きたくないため)。そのため、同社はユーザーにソフトウェアをソースコード形式で提供し、その後の技術サポートは一切提供しなかった。これにより、ユーザーは自らの環境で問題を修正し、新しいハードウェアプラットフォームに移植することができた。この時期にライセンスを取得した大学、政府、そして一部の商業組織は、その後のUnix開発の基盤を築いたが、同時に、後のUnixをめぐる論争や分裂の種を蒔くこととなった。 1980年代、コンピュータの多用途化と普及に伴い、多数のコンピュータで動作する汎用ソフトウェアが登場し、商用ソフトウェア産業は徐々に活性化し、隆盛を極めました。Microsoft、SAP、Oracle、Adobeなど、現在も業界をリードするソフトウェア企業が数多く誕生しました。この時代の特徴は、コンピュータ利用者がプロフェッショナルから一般ユーザーへと拡大するにつれ、ソフトウェアの提供モデルがソースコードではなくランタイムプログラムのみの提供へと徐々に移行していったことです。ユーザーにはベンダー定義の利用ライセンスが販売され、ベンダーはソフトウェア販売に加えて、ソフトウェアのアップグレード、問題の修正、新しいデバイスの動作環境の提供など、有償の技術サポートサービスも提供しました。 消費者は、もはやユーザーとしてソフトウェアを変更したり実行したりする権利を持ちません。ソフトウェアライセンスと技術サポートサービスは、商用ソフトウェア業界において重要なビジネスモデルとなっています。パーソナルコンピュータ分野では、顧客のソフトウェア利用方法は根本的に変わっていません。ほとんどのユーザーはソフトウェア開発の専門家ではなく、システムやアプリケーションを自ら変更する必要がないため、このモデルはユーザーのニーズにうまく適応し、存続してきました。サーバー分野では、AT&Tが配布した初期のコードからUnix陣営が生まれました。SUN、HP、DEC、IBMなどは、それぞれ異なるハードウェアアーキテクチャに基づいて独自のUnixシステムを開発し、いわゆるオープンシステムエコシステムを形成しました。汎用性と互換性の必要性は、POSIXなどのその後の統一標準の誕生を促しました。しかし、Unixのライセンスと法的規定の曖昧さ、そして後継者の姿勢と野心は、多くの問題を引き起こしました。様々なUnix派生システムは、Unixバックボーンとの統一的な連携を欠いたまま、異なる企業によって個別にブランド名を変えて開発されました。この断片化はWindows NTに大きな商業的チャンスをもたらし、今日のWindows Serverオペレーティングシステムへと進化しました。これらの商用オペレーティングシステムは、エンドユーザーへのランタイムライセンスの提供と商用テクニカルサポートサービスの提供のみに留まっています。 1980年代のソフトウェア業界におけるもう一つの重要な出来事は、フリーソフトウェア財団(FSF)の設立でした。学術機関や研究機関において、「ハッカー精神」は常に多くの人々の追求の対象であり、究極のソフトウェアの自由を追求するこの基盤は、ソースコードを変更する権利にあります。リチャード・ストールマン氏のGNU(GNU is Not Unix)イニシアチブ(彼に対する様々な批判はありますが、GNUとFSFの意義と価値を損なうものではありません)は、Unixツールシステムのほとんどを再開発・実装し、これらのソフトウェアをGPLライセンスの下でリリースしたことは特筆に値します。GPLは派生ソフトウェアのソースコードの継続的な提供を義務付けています。GNUは一般的なUnixツールシステムのほとんどを実装しましたが、それでもUnixオペレーティングシステムカーネルへの依存から逃れることはできませんでした。このギャップは、1991年にリーナス・トーバルズ氏がLinuxカーネルの開発を開始するまで埋められませんでした。Linuxカーネルとその周辺ツールもGPLライセンスの下で、Linuxエコシステムを形成しました。 Unix の使用と開発に関する豊富な経験を持つ多数の大学、研究機関、商業組織の積極的な参加により、Linux は急速に成長し成熟しました。 1990年代半ば以降、インターネットは急速に発展し始め、初期の発展は様々なUnix派生製品やWindows NTによって支えられました。ユーザーベースが爆発的に拡大するにつれ、コストは避けられない要素となりました。特に、多くの新興インターネットスタートアップ企業は、高価なハードウェアや厳格なソフトウェアライセンスに貴重な資金を費やすことを望まなかったためです。この時期、IntelはPC用CPUプロバイダーからサーバー用CPUプロバイダーへと徐々に移行していきました。そのスケールメリットにより、IntelのCPUは徐々にサーバー用RISC CPUの性能に匹敵するようになりました。これらのCPUは、オープンシステムで稼働する様々なUnixサーバーの中核機能を提供しました。Linuxは、価格設定の自由さとオープンソースコードへの変更の自由さから、多くの新興インターネット企業にバックエンドサービスプラットフォームとして選ばれました。広範な採用と大規模な導入により、Linuxは急速な発展を続け、ミッションクリティカルなアプリケーションを支えるサーバーオペレーティングシステムへと進化しました。同時に、このオペレーティングシステム上に構築された様々なオープンソースシステムが広く利用され、継続的に開発されました。こうして、インターネット大手企業がオープンソースソフトウェアや自社開発のビジネスソフトウェアに依存する現在の状況が徐々に形成されていきました。 21世紀に入り、インターネット分野におけるオープンソースソフトウェアの普及、CPU分野におけるインテルの優位性の確立、そして様々な閉鎖的なオープンシステムの衰退に伴い、多くの商業企業もオープンソースオペレーティングシステムやオープンソース技術プラットフォームソフトウェアの導入を開始しました。応用シナリオの充実は、様々なオープンソースソフトウェアの開発をさらに促進し、今日に至るまで続く競争環境を形成しています。 オープンソースソフトウェアライセンスシステムの定義と開発文字通り、オープンソースとはソフトウェアのソースコードをユーザーに公開することを意味します。しかし、単にソースコードを提供するだけでは、現在の「オープンソースソフトウェア」の標準的な定義ではありません。「オープンソースソフトウェア」とは、ソースコードをユーザーに提供し、ユーザーが自由に改変・進化できるソフトウェアを指します。そのため、改変されたソフトウェアの再配布に関する規制の違いにより、オープンソースソフトウェアのライセンス体系は多様化しています。現在、オープンソースソフトウェアのライセンス体系は主に以下の2つに分類されます。
GPLライセンスシステムでは、下流の「配布」にはソースコードを含めることが義務付けられており、GPLとの互換性を変更することは許可されていません。そのため、オープンソースソフトウェアをクローズドソースソフトウェアに変換することは制限されています(ただし、「配布」の定義には悪用の余地が残されています)。このオープンソースの強制的なアプローチは、サービスプロバイダー、特にクラウドサービスプロバイダー向けに、AGPLなど、様々な派生ライセンスを生み出しました。AGPLは過度の制限と複雑さのため、広く受け入れられていません。より寛容なオープンソースライセンスでは、元のソフトウェアのライセンス部分の帰属表示と保持が求められますが、派生部分のオープンソース化は義務付けられていません。 オープンソースソフトウェアがソフトウェア業界のビジネスモデルに与える影響オープンソースによってソフトウェアの基本的な実行方法が変わることはありません。成熟したソフトウェア市場において、技術サポートサービスはソフトウェア自体の開発とリリースと同様に重要です。現在まで、複雑なソフトウェアの正しさを証明できた人はいません。ソフトウェアの品質は、設計、実装、テスト、運用の過程で明らかになる問題を継続的に修正することにかかっています。オープンソースソフトウェアは開発段階とリリース形式を変えるだけで、他のソフトウェアライフサイクル、特に多数の非開発者に提供される基盤プラットフォームソフトウェアにも同じ法則が当てはまります。技術サポートをユーザーに完全に委譲することは現実的ではありません。技術サポート能力は、ソフトウェアがサポートできるビジネスにも直接影響します。顧客のビジネスオペレーションをサポートし、ソフトウェア自体の進化に適応したサービス品質を確保することは、ソフトウェアビジネスの重要な部分であり続けています。 オープンソースは、分散型共同開発のモデルおよび推進者となっています。今日、オープンソースソフトウェアは、共同開発モデルであることがより重要になっています。オープンソースソフトウェアプロジェクトのガバナンス方法も、クローズドアプローチとオープンアプローチで異なります。オープンソースプロジェクトでリーダーシップと管理権限を確立する一般的な方法は2つあります。1つは、Apacheのようにプロジェクトを財団に所属させること、もう1つはMySQLやLinuxカーネルのように、発起人または作成者が主導する管理モデルです。どちらのアプローチが最適かを明確に判断することは困難ですが、比較的、成熟した組織モデルを持つ評判の良い非営利団体による管理の方が、信頼を獲得し、より幅広い参加者を引き付ける可能性が高くなります。組織間および地域間のコラボレーションは、さまざまなソフトウェア機能の継続的な開発を効果的にサポートします。数千万行のコードを持つLinuxカーネルのようなソフトウェアは、急速に反復を続け、IT業界全体の継続的かつ急速な発展を推進しています。 オープンソースは無料ではないオープンソースソフトウェアは、フリーソフトウェア運動から生まれました。「フリーソフトウェア」という名称はしばしば「無料」を意味すると誤解されますが、この文脈における「無料」は「自由」を意味します。オープンソースはソフトウェアの自由の精神を体現しています。今日でも、Linuxのように完全なオープンソースを謳うソフトウェアは、品質保証されたディストリビューションと技術サポートサービスの提供を主な事業としており、ライセンス料を徴収することは認められたビジネスモデルではありません。MySQLは異なるソフトウェアライセンスを提供しているため、特別なケースとなっています。商用版とコミュニティ版は本質的に別々の製品であり、コミュニティ版のコードの大部分は集中管理下で共有されています。その根本的な理由は、MySQLに関連するすべての知的財産権が単一の商業団体に完全に帰属しているからです。 ソフトウェアを配布物として提供し、クラウドでサービスを提供することが、依然として主流のビジネス モデルです。現在、ソフトウェア利用者の大多数はソフトウェア開発者自身ではありません。システムソフトウェアやプラットフォームソフトウェアは複雑かつ大規模であり、問題解決と継続的な進化をユーザーに委ねることは、必ずしも必要ではなく、現実的でもありません。ソフトウェアディストリビューションやクラウドサービスでは、個々のソフトウェアの提供に加えて、包括的な検証、テスト、最適化が求められます。品質と互換性を確保するためのこうした作業は、プロプライエタリなクローズドソースソフトウェアのリリースと本質的に変わりなく、ソフトウェアがランタイム環境と連携して動作することが不可欠です。継続的な技術サポートはソフトウェアの運用を保証する上で不可欠な要素であり、この作業の価値を認識することは、効率性を向上させ、システムの運用を確実なものにするための選択となります。 オープンソースユーザーとしての企業の課題中国工業情報化部によるオープンソース・エコシステムの構成要素分析によると、オープンソース・エコシステムは5つの要素と3つの段階から構成されています。その中核となるのはオープンソース・プロジェクトであり、オープンソース・コミュニティ内の連携によって形成され、ソフトウェア、ハードウェア、その他のオープンソース・プロジェクトを網羅しています。オープンソース・コントリビューター、ユーザー、オペレーター、サービスプロバイダーなど、多様なステークホルダーが関与し、オープンソースのガバナンス、運用、商用化といった様々な段階が含まれます。オープンソース規制への対応は、コードホスティング・プラットフォームなどのインフラに依存しています。多くの企業は、業界特有のオープンソース・プロバイダーおよびユーザーとして存在し、それぞれが直面する課題も異なります。 ITアーキテクチャガバナンスの課題 - CIOの視点企業によってIT開発の段階が異なるため、オープンソースソフトウェアの活用方法は異なります。しかし、どのようなアプローチをとるにせよ、最終的にはITアーキテクチャの統一されたガバナンスが不可欠です。 最初のタイプは、新しい企業のすべての業務オペレーションが最初からオープンソース ソフトウェアを使用して構築される場合です。これは、オープンソース技術が比較的成熟した後に設立されたインターネット企業や大企業によく見られる現象です。これらの企業では、ソフトウェアやソフトウェアサービスに費用を支払う習慣が一般的にありません。さらに、IT能力こそが自社のコア競争力であると捉え、オープンソース技術プラットフォームを基盤として基幹業務システムを構築しています。プラットフォーム技術チームは、オープンソースやカスタマイズされたオープンソース派生製品を十分に活用でき、カスタマイズや適応は自社の開発チームが担当するケースが多いです。しかし、カスタマイズされたシステムが進化し、ビジネスの重要性が高まるにつれて、コードの変更やソフトウェアのアップグレードは大きな課題に直面します。そのため、技術投資を継続的に増やすか、変更を避ける保守的なアプローチを採用するかを迫られます。時間が経つにつれて、これは停滞と非効率につながり、技術アップグレードを非常に複雑にし、事業継続性に悪影響を及ぼします。 2 番目のアプローチでは、従来の企業が商用ソフトウェアを部分的にオープンソース ソフトウェアに置き換えます。これは、長年の歴史を持つ大中規模企業によく見られる現象です。これらの企業は長年、商用ソフトウェアを活用し、ソフトウェア技術サービスを享受してきました。コスト削減、効率向上、技術統制の追求が、オープンソースソフトウェアへの需要を生み出しました。また、新たな技術と新たな開発手法の登場により、新規事業開発においても、オープンソースソフトウェアを拒否することは不可能となり、オープンソースソフトウェアはもはや主流のプラットフォーム技術となっています。 3 番目のオプションでは、オープンソース ソフトウェアと商用ソフトウェアを選択して切り替えるプロセスを経る必要があります。特定の業界は、開発段階の特定の段階では商用ソフトウェアを選択していました。しかし、これらのハードルを乗り越えた後、オープンソースソフトウェアを採用し、自社の研究開発投資を増やしました。その好例がAlibabaです。同社のeコマース事業は、トランザクションの一貫性に対する高い要件を備えており、主にリレーショナルデータベースに依存しています。Taobaoは当初MySQLを利用していましたが、急成長期には商用データベースソフトウェアに依存していました。その後の開発では、分散アーキテクチャへの依存度が高まりました。蓄積された技術力とアーキテクチャ能力により、Taobaoは最終的に分散アーキテクチャを用いて商用データベース製品への依存を解消し、全体的な技術スタックはオープンソースフレームワーク内で採用され、進化を続けました。オープンソースソフトウェアの特性、異なるバージョン管理パス、そして様々なオープンソースアプリケーションの複雑さを考慮すると、企業ごとに異なるエンタープライズレベルの技術アーキテクチャを選択する権利があります。しかし、すべての企業は、オープンソース技術を使用する際に、車輪の再発明を避けることを考慮する必要があります。 自立と制御の課題「自律性」の意味は、主に2つの方法で理解できます。
「制御可能」なソフトウェアは、オープンソースコミュニティからのものでも商用ライセンスのソフトウェアからのものでも、「ボトルネック」となるソフトウェアとは対照的です。一部の企業は、今後オープンソースソフトウェアの商用ディストリビューションやサービスの購入を停止したいと考えています。確かに、社内での研究開発と管理に注力し、特定のシナリオにおいて外部の商用ソフトウェアへの依存を断ち切り、完全に独立した製品をゼロから構築した成功例もあります。実際にこれを達成した企業もありますが、少数派です。客観的に見て、このアプローチには、オープンソースソフトウェアに関する豊富な経験を持つ優秀なソフトウェアエンジニアが多数必要です。ソフトウェア事業が中核事業でなければ、長期的には非常に困難になるでしょう。ほとんどの企業にとって、自主管理を実現し、リスクを軽減するためには、運用し、依存しているソフトウェアを適度に理解する必要があります。理想的には、オープンソースソフトウェアのコード、アーキテクチャ、テストを綿密に研究する必要があります。たとえそれが不可能であっても、緊急事態に対処できるよう、少なくとも主要な検証とデバッグ機能、そしてソフトウェアのアップグレードとデプロイメント機能を一定レベル以上習得しておく必要があります。ここで重要なのは、主流のソフトウェア製品コミュニティと連携し、学習と模倣を通じて自社の能力を迅速に構築することです。したがって、企業はオープンソースベンダーとの関係を断つことを避けるだけでなく、むしろ、リスクに直面する可能性が高ければ高いほど、外部の客観的かつ不可抗力的な理由によって断ち切られない限り、オープンソースのビジネスエコシステムとの広範なつながりを構築する必要があります。 コスト管理の課題ほとんどのオープンソースソフトウェアのコストは、品質管理、アップグレード、保守サービスといった継続的なコストに起因する、目に見えないものです。オープンソースソフトウェアはソフトウェアであり、ソフトウェアの基本原則を遵守しています。しかし、オープンソースソフトウェアを多用することは、非常に高い技術サポート能力を必要とします。広く普及しているオープンソースソフトウェアは一般的に高い品質と信頼性を誇りますが、膨大なソースコード製品の継続的な運用を単一企業の技術力でサポートすることは非常に困難です。ITを中核的な競争優位性と考える少数の巨大企業だけが、事業に非常に高い安定性をもたらすことができます。デジタル時代において、企業はIT投資を継続的に増加させていますが、誤解してはなりません。それは、単一のソフトウェアアプリケーションのライセンス費用が投資のすべてではなく、その後のサポート投資が鍵となるということです。企業は、単純な最終コストモデルやROI計算ロジックにとらわれず、ビジネスの観点から全体的なコストを考慮する必要があります。 セキュリティ上の課題オープンソースソフトウェアの脆弱性の増加は、オープンソースコンポーネントの広範な採用に起因しています。ここ数年のオープンソースコミュニティの大幅な成長と、近年のデータ侵害に関するメディア報道により、オープンソースセキュリティに対する一般の意識が高まっています。統計によると、オープンソースコードリポジトリの84%に少なくとも1つの脆弱性が含まれており、監査対象のコードリポジトリの60%に高リスクの脆弱性が含まれています。2021年12月に発生したlog4j2のリモートコード実行脆弱性はその典型的な例です。この脆弱性は重大な影響を及ぼし、攻撃者に悪用された場合、深刻な被害をもたらす可能性があります。オープンソースソフトウェアのセキュリティ問題は、多くの場合、管理上の不備に起因すると考えられており、主に次のような形で現れます。
コンプライアンスの課題コンプライアンス要件が最も厳しい金融業界を例に挙げると、「金融業界におけるオープンソース技術の応用と開発の規制に関する意見」では、金融機関はオープンソース技術に関する関連法令およびライセンス要件を遵守し、規制を遵守してオープンソース技術を使用し、オープンソース技術の利用範囲と利用に伴う権利義務を明確にし、オープンソース技術の作者または権利者の正当な権利と利益を保護することが明確に規定されています。オープンソースのコンプライアンスを考えると、ソースコードのライセンスモデルが重要になります。問題を積極的に特定するために、初期段階で集中スキャンアプローチを検討し、リリース前に企業内で使用されているすべてのソフトウェアバージョンに対して、オープンソースコンプライアンスに関するソースコードの一括スキャンを実施することができます。しかし、オープンソースソフトウェアの普及が進むにつれて、スキャン自体が複雑なプロセスとなり、問題が発見された場合、開発者が修正に残された時間はあまりにも短くなっています。企業内のオープンソース製品のライセンスと使用状況に関する統計を効率的に収集し、非準拠の使用状況を迅速に修正し、企業のオープンソースソフトウェアのコンプライアンスの概要を作成する方法は、オープンソースソフトウェアの使用に関するコンプライアンスを確保する上で企業が現在直面している大きな課題の 1 つです。 オープンソース業界のパイオニアとしての企業の課題エコシステム構築の課題初期のオープンソースコミュニティの運営は、様々な業界や企業におけるオープンソース技術の実際の適用状況を正確に反映していませんでした。現在、オープンソースコミュニティや財団は業界間のコミュニケーションとユーザー共有をより重視しており、クラウドベースのソフトウェア製品の使用統計が新たなエコシステム運営メカニズムを形成する可能性があります。 ビジネスモデルの課題オープンソース製品のビジネスモデルは、基本的に以下の4つのモデルを統合したものです。差別化された商用製品を提供するオープンコア、プロフェッショナルサービス、ホスティング、そしてアプリストア、アプリマーケットプレイス、プラグインを提供するマーケットプレイスです。成功しているオープンソース企業にとって、最も一般的なモデルはオープンコア製品であり、ホスティングとサービスを二次的、三次的な収益源として活用しています。これらの組み合わせは、オープンソース製品や特定の業界においては、ある時点では効果的かもしれません。しかし、市場競争や顧客ニーズの進化に伴い、これらのモデルは不適切となり、製品ごとに独自のビジネスモデルを開発する必要が生じる可能性があります。従来のオフラインでのソフトウェア販売、流通、配信モデルは、オープンソース製品にとって現実的なビジネスモデルにはなりにくいでしょう。 クラウド時代における企業におけるオープンソースソフトウェアの利用の変化クラウドコンピューティングがもたらす変化顧客は、ソフトウェア購入後の利用プロセス全体に対する責任から、サービス自体以外のサポートの詳細を気にすることなくサービスを直接利用するようになりました。顧客はソフトウェア自体に関連する商用条件にそれほど敏感ではなく、パッケージ化されたサービスの不透明さも、特に運用と機能提供の責任がクラウドプロバイダーに移行するにつれて、ソフトウェア開発へのユーザーの関与を低下させます。広く使用されているオープンソースソフトウェアライセンスは、クラウドコンピューティングが登場する前、あるいはクラウドコンピューティングが大きな影響を与える前に確立され、これらのライセンスは主に分散型で配布されるソフトウェアを対象としていました。クラウドサービス、特にパッケージ化されたPaaSサービスは、GPLのようなオープンソースの義務を回避します。オープンソースから派生したクラウドサービスの出現は、クラウドベンダーがオープンソースソフトウェア自体への貢献と共有を減らすよう、ある程度促してきました。インターネット大手企業がオープンソースソフトウェアを広く活用してきた成功体験と、パブリッククラウドの継続的な発展は、クローズドソースのインフラストラクチャとそれを支えるプラットフォームソフトウェアが、ほとんどのシナリオにおいてもはや広い将来性を持たないことを証明しています。 クラウドとオープンソースは相乗効果で発展する特定のベンダーに縛られることを望む顧客はいません。パブリッククラウドも同様です。アプリケーションの動作を支える基盤プラットフォームは、ソフトウェア時代のOSやデータベースからコンテナスケジューリングへと進化しており、ハイブリッドクラウドは今後も長く続くサポート手法として、今後も発展を続けていくでしょう。 基于这些条件,云平台应该提供的是一种通用的开放技术,在应用使用的功能性接口方面,遵守标准的通用性,不限制应用的可迁移性;在下层的运行引擎方面,提供差异化的非功能支撑,帮助客户更有效地实现业务目标;结合具有自身特色构建的关键领域差异化服务能力,如数据库等,为用户提供敏捷灵活的开发能力和稳定高效的支撑能力。 主流云计算厂商正在企业IT市场发挥越来越大的作用,主流开源软件与云平台的有效集成是云平台的重要能力体现。开源技术也是云服务未来的发展方向,积极有效的参与主流开源项目是云厂商的重要机会。大型云厂商投入人力和资金帮助开源项目持续发展,有助于云技术能力得到有效发挥。对于使用者来说,市场上主流云平台在容器、中间件和数据库这些主要技术能力方面,提供的功能一致性远远高于客户自主搭建。用户在设计自己的业务系统时,也要充分考虑对技术平台的不同层级的抽象和管理,减少对特定管理能力的硬性绑定。应用想要实现在不同云平台之间一行代码都不改的切换并不现实,但是追求云特有能力不侵入应用代码而只是在管控层面发挥作用,应该是现实可行的做法,这也是平台中立的云原生追求的方向。 公共云和各种形态的混合云是未来IT能力的主流承载形式。开源软件已经证明自身是平台技术软件有效的、主流的发展形态,云计算与开源的结合会成为必然趋势。开源软件以不同程度托管在云上运行,提供技术能力,会是未来企业IT面临的主要选择。不同的托管程度,在管理层和云集成程度的差异,运行时的优化能力,都会是云服务的差异所在,更强的管理能力集成往往会伴随更深的运行优化和更少的管理需求,提供的服务也会具备更强的自主运行能力,形成的结果就是PaaS类服务,如数据库等,客户也会选择自行部署和管理,这种情况下云基础设施需要提供足够开放性供客户自己集成。 同时基础设施的服务能力也会直接反映在最终服务和业务应用的整体性价比上。软件尤其是技术平台软件,需要大量的测试验证和优化调整,来达到稳定性和性价比的最优,公共云的运行环境及其支持的海量、差异化客户场景,为软件的成熟提供了最佳的环境。大型公共云厂商也是未来有能力投入软件开发验证和持续支持服务的最重要资源池。除了优化之外,保持托管的软件服务本身的开放性和兼容性,是非常重要的努力方向,以运行效果而不是黑盒方式吸引并留住客户会成为云平台的核心竞争力。云计算的持续发展为开源软件提供了新的舞台,云平台与开源社区有效合作,并且避免锁定,来获得用户的信任,是云平台开放性的重要体现,也会是未来IT行业持续发展的支撑力量。 总体来说,云自诞生开始与生俱来的特性以及不断发展的能力,天然就具备了解决企业可持续的使用开源软件所带来的挑战。目前,云被证明是最好的企业IT架构治理的平台,这个治理包括对开源技术的治理。云平台能够更好地集中解决安全与合规的问题,针对不同的开源软件合规扫描、漏洞扫描、升级等等。云原生的发展使得各个不同的基础开源软件和创新开源软件的技术融合,云时代开源软件的可观测性、开发效率和管理效能大大提升。云厂商本身就是开源最大的使用者、最佳实践,可以帮企业管理屏蔽试错风险。云平台天然是一个协作平台,可以让开源贡献者、开源使用者,在云上互通需求驱动发展。 新的时代,开源的发展越来越蓬勃,开源和云的关系越来越复杂,耦合度越来越高,云是开源软件允许的最佳环境之一,为开源软件插上安全高效的腾飞引擎。 |