Cloud Native Computing Foundation(CNCF)は、オープンソースの分散ストレージシステムCubeFSが卒業ステータスに達したと発表した。CubeFSは2017年に設立され、POSIX、HDFS、S3、独自のREST APIを含む複数のアクセスプロトコルをサポートしている。CubeFSの主要なプラットフォームターゲットは、ビッグデータ、AI/LLMアプリケーション、コンテナプラットフォーム、データベースだ。
CubeFSの主要なサブシステムは以下の通りである。
- リソース管理:データおよびメタデータノードを監視し、ボリュームおよびパーティション情報を管理する。
- メタデータ:高可用性と一貫性のためにMultiRaftとメモリベースのシャードを使用し、分割による拡張をサポートする。
- データストレージ:性能とコストのバランスを取るため、マルチコピーと消去コードのオプションを提供する。
CubeFSのバージョン1.0.0は、2019年3月にオープンソースとしてリリースされた。2019年12月にCNCFサンドボックスに入り、2022年にインキュベーターに移り、2025年1月に完全なCNCFプロジェクトとして卒業した。2019年にCNCFに参加して以来、CubeFSの貢献者は大幅に多様化し、わずか5社で働く27人から、42社で働く400人近くにまで増えた。 インストールされているユーザーベース全体で、約350ペタバイトのデータがCubeFSのインストールで管理され、数十万のクライアントをサポートしている。CubeFSは現在、JD.com、NetEase、Shopee、中国の携帯電話メーカーOPPO、Xiaomi、Meizuを含む200以上の組織で使用されている。これらの企業は、コマース、クラウド・ストレージ、オンライン・メディア・ストリーミング・アプリケーションにCubeFSを導入している。
発表の中で、CNCFのCTOであるChris Aniszczyk氏は、「OPPOのような大規模組織はすでに、本番で機械学習プラットフォームを実行し、AIトレーニングを使用するためにCubeFSを利用しています。」と説明している。彼は、「CubeFSの安定性、信頼性の高いパフォーマンス、活発なコミュニティが採用者の信頼を築いており、AIとMLがデータの成長を促進し続ける中で、採用がどのように発展していくかを楽しみにしています。」と述べている。
CNCFプロジェクトとして卒業するために、CubeFSはガバナンスと行動規範を大幅に改善し、包括的なセキュリティ監査を完了する必要があった。この監査には、脅威モデリング、サプライチェーンセキュリティレビュー、セキュリティ脆弱性に対するコード評価が含まれていた。卒業発表の中で、CubeFSの創設者でありメンテナーであるHaifeng Liu氏は、CNCF内でのプロジェクトの位置付けに自信を示し、次のように述べた。「KubernetesやVitessなどの他のプロジェクトを通じてCNCFと協力してきた経験から、オープンソースのクラウドネイティブプロジェクトにとって理想的な場所であることを知っています。私たちは、CubeFSをプライベートおよびパブリッククラウドサービスの両方における最高のオープンソース非構造化データストレージサービスにすることを楽しみにしています。」
CubeFSが分散型クラウドネイティブ・ストレージのCNCFランドスケープに参入したことで、Rook/Ceph、Longhorn、OpenEBSが重要なユーザー・ベースとなっており、同様のオープンソース・プロジェクトが増加している。Rookは、ファイル、ブロック、オブジェクトストレージを備えた分散ストレージプラットフォームであるCephの実装に使用されるKubernetes Operatorだ。OpenEBSは、幅広いストレージオプションにわたって同様の機能を提供し、LonghornはKubernetes向けの分散ストレージプラットフォームだが、ブロックストレージのみに焦点を当てている。
CubeFSは、2024年第3四半期のCNCF Technology Landscape Radarにおいて言及されており、同レーダーの著者は、バッチ処理やAI/ML分野の企業はCubeFSの採用を検討すべきであり、その有用性と成熟度を高く評価している。
ブログ投稿で、分散ストレージ愛好家を自称するBenjamin Arntzen氏は、エクサバイト規模のデプロイメントをサポートするCNCFプロジェクトとしてのCubeFSの地位に後押しされ、CubeFSを探求した経験を共有している。Arntzen氏は、CubeFSのいくつかの主要な機能の利点を説明しており、例えば、ネイティブのS3ゲートウェイ機能、Kubernetesの永続ストレージサポート、ボリューム管理、そして大規模なコントローラーノードを必要としない水平スケーラブルなメタデータストレージなどが挙げられる。CubeFSは、高可用性、データの耐障害性、自己修復、パフォーマンス、消失符号化といった分散ストレージに必要なほとんどの要件を満たしているが、現在のところストレージティアリング、つまり、異なるストレージタイプ(SSD、HDD、NVMe)にデータをインテリジェントに分散する能力が欠けている、と述べている。しかし、CubeFSチームはこの機能を積極的に開発していると彼は指摘している。Arntzen氏が直面した主な課題はセキュリティに関するものであった。デフォルトのCubeFSデプロイメントは適切な認証が欠けており、信頼できないネットワーク上でシステムが脆弱になる可能性がある。この問題に対処するために、彼はCubeFSを修正し、認証と暗号化を統合した。ArntzenはこのコードをGitHubで共有している。
プロジェクトの2025年以降の計画には、メタデータサービスのコスト最適化、階層ストレージの実装、分散キャッシュのアクセラレーション、そしてコールチェーントレーシングを通じた問題追跡機能の向上が含まれている。CubeFS はダウンロード可能で、現在GitHubでも公開されている。