分散型と集中型の両輪アプローチで実現するクラウドコスト最適化:内製データ基盤CroisのFinOps実践事例

目次

はじめに

こんにちは。社内横断で利用されるデータ基盤 Crois の開発を担当している、大澤と茅原です。

2025年6月18日に開催された FinOps X Day Tokyo 2025 にて、「分散型と集中型で切り開くクラウドコスト最適化:リクルート横断プロダクトCroisのFinOps実践」と題して発表を行いました。

本記事では、FinOps実践におけるクラウドコスト最適化の取り組みについて詳しくご紹介します。特に、分散型FinOps集中型FinOpsの両輪アプローチによる成功事例を中心にお伝えします。

発表スライド・動画

発表に使用したスライドを公開しています。 動画 も公開されていますので、併せてご参照ください。

FinOps実践の背景と課題

リクルートのデータ組織とFinOpsの必要性

リクルートのデータ組織は、各事業領域に対応する「領域データ組織」と、事業を横断して活用できるシステム(横断プロダクト)を提供する「横断データ組織」で構成されています。

様々な事業領域でデータ活用施策が実施されており、例えば、 機械学習モデルによる予測値を活用した顧客の新ジャンル利用促進 飲食店の調理順序最適化による料理提供遅延の防止 対話型チャットボットによる旅行代理店のような検索体験の実現 など、多種多様な施策があります。

リクルートのデータ組織構成:領域データ組織と横断データ組織による分散・集中アーキテクチャ
リクルートのデータ組織構成と横断プロダクト

これらのデータ利活用施策において、バッチ処理(機械学習の学習・推論パイプライン、ETL等)は不可欠です。

しかし、これらのインフラを各領域データ組織で個別に構築するのは非効率であり、社外製品やOSSでは対応できない特殊要件も存在します。

そこで、リクルートではバッチ処理に特化したワークフローエンジン・ジョブスケジューラである横断プロダクト「Crois」を内製開発し、プラットフォームとして提供しています。

内製ワークフローエンジンCrois:バッチ処理特化型ジョブスケジューラによる横断プラットフォーム
リクルートのデータ組織構成とCrois

Croisについては本ブログ以外にも 関連ブログ を公開していますので、ぜひご一読ください。
特に以下ブログでは、AWS BatchからECS on EC2へ移行することによって得られた、コストパフォーマンス改善の事例について紹介しています。

Croisの成長とFinOps実践の必要性

Croisは、汎用的なワークフローエンジン・ジョブスケジューラ機能、よく使われる処理を再利用可能にした「公式モジュール」、スケーラビリティ・セキュリティを確保したインフラを提供することで、各領域データ組織のデータサイエンティスト・データエンジニアがより創造的なタスクに注力できるよう支援しています。

2019年にリリースされたCroisは、重複する機能を持つ社内基盤の統合・移行や各事業領域でのデータ利活用の拡大に伴い、ジョブ実行数が年平均3倍で増加し続けています。

Crois成長率:ジョブ実行数年平均3倍増加(基盤統合・データ利活用拡大による)
Croisリリース後の成長

2025年5月時点でのCroisの運用規模は以下の通りです。

Crois運用規模:日次22kジョブ、74kコンテナ(AWS40k/GCP34k)、20kワークフロー、1kプロジェクト、300MAU、ピーク30k CPUコア
Croisの運用規模(2025年5月)

マルチクラウド環境におけるFinOpsの課題

Croisのアーキテクチャは、API ServerとワークフローエンジンがAWS上で実装され、コンテナジョブ実行基盤としてECS on EC2、Fargate、GKEを採用したマルチクラウド構成となっています。

これにより、複数の領域の施策が一つのプロダクト上で稼働するマルチテナント環境であり、AWSとGCPの両方でクラウドコストが発生するという特徴があります。

横断プロダクトは、各種クラウドサービスを活用して開発・提供されており、発生したクラウドコストを課金請求(FinOpsにおけるチャージバック)する責任を負っています。

課金の大前提は受益者負担であり、サービスを利用した各領域データ組織がそのクラウドコストを負担することで、領域データ組織側の利用規模の測定および適切な投資意思決定を可能にすることを目的としています。

横断プロダクトチャージバック:受益者負担原則によるコスト配分と利用規模測定
横断プロダクトのチャージバックルール

急成長によるFinOps実践の必要性

2021年までは、会社統合前からの利用者が過半数を占めており、ジョブ実行数やクラウドコストの変動は少なかったため、特定のAWSサービス以外のコストは固定費として扱えていました。

そのため、リソースタグを使用した整理や追跡は十分に行われていませんでしたが、実運用上は収支が均衡していました。

しかし、2022年に入り、複数の事業領域での利用開始とともにジョブ実行数が急成長し、状況は一変しました。

これにより、プロダクト収支が赤字に転落し、クラウドコスト変動の要因が特定のAWSサービスに限定されなくなり、固定費として扱っていたクラウドサービス費用が固定費では賄いきれなくなりました。

さらに、リソースタグによる整理・追跡が不十分だったため、「どのクラウドコストが急増しているのか」「どの利用者起因のコストなのか」を特定するのに苦労しました。

FinOpsを全く実践していなかったわけではありませんが、この状況では確実にFinOps改善が必要であると認識したのが2022年でした。

急成長による課題:収支赤字化、コスト要因特定困難、リソースタグ不備による追跡困難
急成長によって生まれたCroisの課題

現状の課題を痛感した我々は、どこを目指してFinOpsを実践するべきかを考えることにしました。たどり着いた答えは、プロダクト利用者が高い経営効率を実現するためにFinOpsの実践を徹底する必要がある、ということです。

FinOps実践の目的:プロダクト利用者の経営効率向上
ミッションとビジョン

横断プロダクトがプラットフォームとしてできることは、大きく分けて3種類あります。役割を果たすために、機能開発とFinOpsは等しく重要であると、我々は考えています。

プラットフォーム戦略:機能開発とFinOpsの両輪による利得増加とコスト最適化
プラットフォームができること

CroisにおけるFinOps戦略

クラウドFinOps第2版の原則に基づく両輪アプローチ

2022年当時、急成長によって生まれたFinOpsの課題は主に以下の3点でした:

FinOps課題:コストアロケーション不備、データアクセス困難、品質劣化検知不能、請求業務負荷
従来の課題

これらの課題に対し、運用負荷解消のため、以下の取り組みを進めてきました:

FinOps取り組み成果:運用負荷解消、コスト意識向上、共通リソース最適化
運用負荷解消の道のり

CroisのFinOps実践は上述した運用改善から始まり、 クラウドFinOps第2版 の原則「分散型で使用量削減、集中型で料金削減」 に基づく両輪アプローチで成果を実現することで、課題を克服していきました。以降では、両輪アプローチの具体例をご紹介します。

FinOps原則実践:分散型使用量最適化と集中型料金最適化の両輪アプローチ
クラウドFinOps第2版の原則「分散型で使用量削減、集中型で料金削減」

分散型FinOpsの取り組み

利用者側での最適化支援

分散型FinOpsアプローチでは、FinOps原則「すべての人が自分のクラウド使用量に当事者意識を持つ」 を推進し、利用者自身のコスト最適化ループ実現を支援する機能を提供しました。

1. コストアロケーションの適正化

コストアロケーションでは、Croisのインフラコストを利用料に応じて請求するため、変動費と共通費の分類を設計しました。コンテナジョブを動かすインスタンスコストなどの変動費は、リソースにラベルやタグを付与して利用者ごとの利用量を取得しています。通信量、ログ、APIサーバーなどの共通費は、変動費の割合によって按分し、負担分を計算しています。

コストアロケーション:利用量ベース変動費請求、共通費按分計算による適正配分
コストアロケーションの適正化

2. データ提供による透明性の確保

データ提供においては、BigQuery Tableとしてコストデータを公開し、利用者ごとに好ましい形で活用できるようにしています。プラットフォーム側での可視化だけでなく、利用者独自でクエリを探索したり、利用者側のコストダッシュボードと統合したりすることも可能です。

データ提供:BigQuery公開による自由活用、可視化・クエリ探索・ダッシュボード統合対応
データ提供

3. コスト見積もりツールの提供

利用者自身でCroisコストを見積もれるツールも提供しています。共通費(共有リソースの按分コスト)についても、過去の利用実績から予測して見積もりを提供しています。

コスト見積もりツール:最適化・費用対効果予測、過去実績ベース共通費予測
コスト見積もりツールの提供

4. 利用者側でのコスト最適化文化の醸成

利用者側でコスト最適化を行う環境を整備したことで、利用者側でのコスト最適化文化が醸成されました。例えば、Crois以外のサービスのデータと統合したコストダッシュボードを作成したり、Croisを効率よく使うためのルール(インスタンスのリサイジングポリシー、NATを通さずに通信量を抑える設定など)を自発的に策定したりする動きが見られるようになりました。

コスト最適化文化醸成:独自ダッシュボード作成、効率利用ルール自発策定
コスト最適化を行う文化

集中型FinOpsの取り組み

基盤側でのコスト削減

集中型FinOpsアプローチでは、プラットフォーム側から利用の全体感を把握し、全体最適な状態を目指しています。コストデータ整備によって、これまで見過ごされていたリソースの無駄を発見し、対応ができるようになりました。

1. 共有リソースの最適化

例えば、NATのコストが高いという課題がありました。Croisのスケジュール実行は毎分実行するECS Taskによって実現されており、このECS TaskがNATを持つネットワークに配置されていたため、毎分コンテナイメージをプルする際にNATを経由し、NATコストが高騰していました。これに対し、毎分実行するECS Taskのネットワークを変更することで対応しました。

共有リソース最適化:ECS Task NAT経由イメージプル→ネットワーク変更によるNAT利用削減
共有リソースの最適化

2. サービスの見直し

もう一つの例として、AWSのSecret Managerコストが余計にかかっているという課題がありました。Croisではパスワードなどの機密情報をセキュアにコンテナタスクに渡す機能を提供しており、Secret Managerを利用していましたが、利用増加に伴い保管コストが負担になっていました。そこで、AWS Parameter Storeに移行することで、セキュアなまま保管コストをゼロにすることができました。

サービス見直し:Secret Manager→Parameter Store移行による機密情報保管コスト削減
サービスの見直し

FinOps実践の成果と今後の展望

FinOps実践による成果

Croisでは、プロダクト利用者の経営効率向上を目的にFinOpsを実践し、クラウドコスト最適化を実現しました。

具体的には、FinOps推進の基盤となる信頼性の高いコストデータ基盤を構築し、新鮮なコストデータを提供することで請求業務の運用負荷を削減しました。

クラウドFinOps第2版の原則に基づく「分散型アプローチによる使用量最適化」(利用者側のコスト意識向上・自律的最適化)と「集中型アプローチによる料金最適化」(プラットフォーム側の共有リソース・サービス見直しによるコスト削減)の両輪で効率的なFinOps推進を実現しました。

Crois FinOps実践:分散型使用量最適化と集中型料金最適化の両輪アプローチ成果
CroisにおけるFinOpsの実践

FinOps実践の主要な成果

  1. コストアロケーションの適正化

    • 利用量ベースの変動費請求
    • 共通費の適切な按分計算
  2. 利用者側のコスト意識向上

    • 透明性の高いコストデータ提供
    • 自発的なコスト最適化文化の醸成
  3. プラットフォーム側のコスト削減

    • 共有リソースの最適化
    • 効率的なサービス選択
  4. 運用負荷の削減

    • 自動化されたコストデータ基盤
    • 効率的な請求業務プロセス

今後のFinOps実践の展望

今後の展望として、リクルートのデータ活用施策は拡大し続けており、利用者が施策を早く・安く実装し、正確な検証を行うためのFinOps実践は今後も継続していきます。

具体的には、以下のようなFinOps機能強化や運用の効率化を検討しています。

FinOps機能強化の計画

  • コスト異常検知機能の導入

    • リアルタイムでのコスト異常検知
    • 自動アラート機能の実装
  • コスト改善レコメンド機能の導入

    • AIを活用した最適化提案
    • 過去データに基づく改善案の提示

FinOps運用の効率化

  • AIOpsの導入による課題の発見・解決
    • FinOps基盤と連携してクラウドコスト課題に取り組む
    • AIOpsに対してもFinOpsによって適切な投資となるよう最適化

FinOps実践のベストプラクティス

本記事で紹介したFinOps実践のポイントをまとめると、以下のようになります:

  1. 分散型FinOps集中型FinOpsの両輪アプローチ
  2. 透明性の高いコストデータ基盤の構築
  3. 利用者側のコスト意識向上と自律的最適化支援
  4. プラットフォーム側での共有リソース最適化
  5. 継続的なFinOps機能強化と運用効率化

最後までお読みいただき、ありがとうございました。
本記事が、皆様のFinOps実践クラウドコスト最適化の取り組みに少しでもお役に立てれば幸いです。

記事内容及び組織や事業・職種などの名称は、編集・執筆当時のものです。

キャリア採用の関連職種ページはこちら

関連職種の採用情報
詳しくはこちら

関連組織の特設ページはこちら