Cloudflareでは、オープンソースの持つ力を高く評価しています。オープンソースは単なるコードではなく、インターネットを前進させるコラボレーション、革新、知識共有の在り方そのものです。オープンソースはインターネットの繁栄の基盤であり、世界中の開発者やクリエイターがより大きな総体に貢献できるようにするものです。
しかし、多くの場合、オープンソースを保守する運営者は、プロジェクトの運用と世界中のユーザーへのアクセスの提供に際し発生するコストに苦労しています。弊社はオープンソースプログラムを通じてGitやLinux Foundationなどの見事なオープンソースプロジェクトをサポートする機会に恵まれ、Cloudflareが最大限支援できる分野を身をもって知る経験を得てきました。
本日、弊社より合理化し拡大したオープンソースプログラム「Project Alexandria」をご紹介します。アレクサンドリアは、数多くの図書館、および古代世界の7不思議の1つであった灯台を擁していたことで知られる古代都市です。アレクサンドリアの灯台は文化とコミュニティの象徴として機能し、遠方から人々を市に迎えていました。弊社は、世界中の開発者のための象徴、そしてより良いインターネットを作るための中核となる知識のソースとして、Alexandriaはオープンソースプロジェクトが果たす役割を表すメタファーであると考えています。
このプロジェクトでは、より多くのオープンソースプロジェクトに対し弊社製品を無料で利用していただけるよう、年間クレジットを継続的に提供していきます。これまで、弊社ではProプランへのアップグレードを提供していましたが、現在では、Workers、Pagesなどのより幅広い製品へのアクセスとともに、各プロジェクトの規模とニーズに合わせたアップグレードを提供しています。Project Alexandriaでは、Cloudflareの強化されたセキュリティ、パフォーマンスの最適化、開発者向けツールを無料で利用できるようにし、すべてのOSSプロジェクトが存続だけでなく繁栄を目指せるようにすることを目標としています。
ニーズに基づいたプログラムの構築
弊社では、オープンソースプロジェクトにはさまざまなニーズがあることを認識しています。パッケージリポジトリのような一部のプロジェクトでは、ストレージと転送のコストが最たる懸念となります。DDoS攻撃からの保護を必要とするプロジェクトもあります。また、プロジェクトによっては、スケーラブルで安全なアプリケーションを迅速に構築しデプロイするため、堅牢な開発者プラットフォームを必要とします。
この新しいプログラムでは、お客様のプロジェクトと協力して、お客様のニーズに基づき、以下の機能を実現できるよう支援します。
Cloudflare Pro、Business、Enterpriseプランへのアップグレード:トラフィックの管理にCloudflare Rulesを追加することで柔軟性が向上、画像のダウンロードを高速化し、Webアプリケーションファイアウォール(WAF)によりセキュリティを強化できるPolishによる画像の最適化、潜在的な脅威や脆弱性からプロジェクトを保護できるSecurity Analytics、Page Shieldなど様々なプラットフォームが提供されます。
Cloudflare WorkersとPagesへのリクエストが増加し、より多くのトラフィックを処理し、アプリケーションをグローバルに拡張できるようになります。
ビルドとアーティファクト用にR2ストレージを増やし、プロジェクトアセットの効率的な保存とアクセスに必要なスペースを確保できます。
リモートブラウザ分離、ユーザー制限なし、アクティビティログの保持拡張などZero Trustアクセスを強化し、より深い洞察とプロジェクトのセキュリティ管理を実現します。
プログラムに参加するすべてのオープンソースプロジェクトは、弊社のDiscordサーバーの専用チャネルを通じて追加のリソースとサポートを受けられます。また、現在弊社が提供していないものでお客様に役立つと思われることがある場合、その実現方法をご紹介いたします。
多くのオープンソースプロジェクトは、Cloudflareのお得な無料利用枠の範囲内で運営されています。弊社では、より良いインターネットの構築を支援することを使命としており、プロジェクトの規模にかかわらず、お客様のオープンソースパッケージをグローバルに作成、保護、配布する際に、コストが障壁となるべきではないとの信念を持っています。新興またはニッチなオープンソースプロジェクトでなら、クレジットを必要とせず無料で運営することもできます。大規模なオープンソースプロジェクトの場合、パッケージやWebサイトの保存、保護、配信にインフラストラクチャに資金を費やす代わりに、資金をイノベーションに再投資し続けられるよう、年間クレジットを進呈しています。
弊社では、革新的なだけでなく、インターネットの継続的な成長と健全性にとって極めて重要なプロジェクトの支援に取り組んでいます。プログラムの基準は、以下の通り変わりません:
非営利で運営されていること。
認知されたOSSライセンスを持つオープンソースプロジェクトであること。
これらの要件を満たすオープンソースプロジェクトであれば、こちらからプログラムにお申し込みいただけます。
オープンソースコミュニティのエンパワーメント
弊社のプログラムでは、OpenJS Foundation、OpenTofu、JuliaLangなど、称賛に値するオープンソースプロジェクトや、そのプロジェクトを支える優秀な人材が存在しています。
OpenJS Foundation
Node.jsは、2019年から私たちのOSSプログラムの一部となっており、最近になったOpenJS財団と提携し、財団が運営している他の主要JavaScriptプロジェクトであるFastify、jQuery、Electron、NativeScriptなどのプロジェクトに技術サポートとインフラストラクチャの改善を提供しています。
Cloudflareを利用したOpenJS Foundationの顕著な例には、Node.js CDN Workerが挙げられます。現在、Node.js Webインフラストラクチャとビルドチームによって積極的に開発が行われており、Webサイトで提供されるすべてのNode.jsリリースアセットバイナリ、ドキュメントなどを提供することを目指しています。
Aaron Snell氏は、これらのリリースアセットが現在、Cloudflareが提供する単一の静的なオリジンファイルサーバーによって提供されていることを説明しています。これは、新しいリリースに問題が発生し始めた数年前まではうまく機能していました。新しいリリースでは、キャッシュパージが発生しました。つまり、リリースアセットに対するリクエストはすべてキャッシュミスとなり、Cloudflareは静的ファイルサーバーに直接転送され、過負荷が発生します。Node.jsは毎夜ビルドをリリースするため、この問題は毎日発生します。
CDN Workerは、Cloudflare WorkersとR2を使用してリリースアセットのリクエストを処理し、静的ファイルサーバーからすべての負荷を取り除き、その結果、Node.jsのダウンロードとドキュメントの可用性が向上し、最終的にはプロセスをより速くすることでこれを修正する予定で、長期的な持続可能性を高めます。
OpenTofu
OpenTofuは、自社開発の「コードとしてのインフラストラクチャ」プラットフォームの無料でオープンな代替プラットフォームの構築に注力してきました。同社では、コストを低く抑える一方で、レジストリの信頼性と拡張性を確保することを主な課題の1つとしています。CloudflareのR2ストレージおよびキャッシングサービスはこの点において完璧でした。OpenTofuは、帯域幅やパフォーマンスのボトルネックを心配することなく、静的ファイルを大規模に提供できるようになりました。
OpenTofuチームは、帯域幅と人件費の両方の観点から、レジストリの運用コストを可能な限り低く抑えることがOpenTofuにとって最重要であると述べました。ただし、インフラストラクチャがダウンした場合、何万もの開発者にとってインフラストラクチャを更新する手段がなくなるため、レジストリが100%に近いアップタイムで稼働しているようにする必要がありました。
レジストリコードベース(Goで記述)は、OpenTofu Registry APIであり得るすべての応答を事前生成し、静的ファイルをR2バケットにアップロードします。R2により、OpenTofuはレジストリを無料で実行できるため、サーバーやスケーリングの問題を心配する必要はありません。
JuliaLang
JuliaLangは、最近になって弊社のOSSスポンサーシッププログラムに参加したプロジェクトです。弊社は、同エコシステムのスムーズな運営を確保するため、重要なインフラストラクチャを積極的にサポートしています。主に、JuliaLangがパッケージをユーザーベースに配信しやすくするよう、Cloudflareのサービスを利用できるようにしています。
Elliot Saba氏によると、JuliaLangは以前は費用対効果の高さからAmazon LightsailをグローバルCDNとして使用し、ユーザーベースにパッケージを配信していました。しかし、ユーザーベースが拡大するにつれ帯域幅の上限を超えることとなり、クラウドコストが増大し、トラフィックスパイクによってロードバランサーVMが過負荷状態になるため、パフォーマンスが低下するのは明らかです。現在、JuliaLangはCloudflareのR2を使用しています。R2オブジェクトストレージの速度と信頼性は、自社のデータセンター内ソリューションをはるかに上回っています。帯域幅料金がないため、JuliaLangは10分の1未満のコストでより速くより信頼性の高いサービスを利用できるようになりました。
弊社がサポートします
貴社のプロジェクトが弊社の基準に適合しており、コスト削減と予期せぬ請求の排除をお考えの方は、ぜひご応募ください。次世代のオープンソースプロジェクトがインターネット上にその名を残せるよう、弊社がとことん支援いたします。
詳細および参加申し込みについては、刷新したProject Alexandriaページをご覧ください。また、このプログラムから恩恵を受けられる他のプロジェクトをご存じであれば、ぜひ当情報を拡散してください。