Upgrade to Pro — share decks privately, control downloads, hide ads and more …

15 分で学ぶ Cloud Run のユースケースと代表的なアーキテクチャパターン

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →

15 分で学ぶ Cloud Run のユースケースと代表的なアーキテクチャパターン

Avatar for GoogleCloudPlatformJapan

GoogleCloudPlatformJapan

September 18, 2025

More Decks by GoogleCloudPlatformJapan

Other Decks in Business

Transcript

  1. スピーカー自己紹介 グーグル・クラウド・ジャパン合同会社 アプリケーション モダナイゼーション スペシャリスト 担当プロダクト エリアと普段の業務 • GKE、Cloud Run、CI/CD、Workstations

    など • アーキテクチャ設計や Agent などを利用したアプリ開発の支援 今日伝えたいこと • Cloud Run は規模に関わらず、幅広いユースケースで使えます! 頼兼 孝幸
  2. Google Cloud でアプリを動かす主な実行環境 1. Compute Engine - マネージド VM を稼働

    2. GKE - マネージド Kubernetes を稼働 3. Cloud Run - サーバーレス環境で関数やコンテナを稼働 Compute Engine Google Kubernetes Engine Cloud Run 抽象度 柔軟性 IaaS CaaS PaaS FaaS
  3. Google のスケーラブルなインフラ上でコードを実行するための、フルマネージド プラットフォーム Runtime • 高機能 あらゆる言語のコンテナを実行可能 • オンデマンド 事前プロビジョニングは不要

    • 弾力性 高速な自動スケーリング、 ゼロスケールも可 • インフラ管理不要 VM やクラスタの管理などが不要 Cloud Run Experience(開発体験) • シンプル 利用するまでに必要な設定は最小限 • 自動化 Cloud Run が多くの設定を自動で代行 • 開発者の生産性向上 開発者にとっての体験が自然であり、 開発やデプロイ速度の向上が見込める Pricing コード実行中のみ 100 ms 単位で課金 • CPU • Memory • リクエスト 毎月の無料枠が存在 柔軟な確約利用割引の適用が可能 固定料金なし = 未使用の間は料金がかからない
  4. jobs(バッチ処理) タスクを完了させるための実行 • 指定された数のタスクを最大 7 日間実行 (手動またはスケジュール) • ジョブの実行中のみ課金 •

    エンドポイントなし • スケーリング ◦ 最大インスタンス数を指定して 自動的にスケール • 実行した履歴を保持 services(Web / API など) HTTP トラフィックの配信と負荷分散 • HTTPS、イベント、WebSocket、 HTTP/2、gRPC 経由で呼び出される • リクエスト処理時のみ課金 • すぐに使える HTTPS エンドポイント • 関数(function)単位の実行も可能 • スケーリング ◦ 同時リクエスト数や CPU 使用 率に応じて自動 ◦ 手動(稼働数を固定) • リビジョンの履歴を保持 • トラフィック分割 worker pools(常駐ワーカー) 継続的にバックグラウンドで動く処理 • 常時起動で待機し、継続的にタスクをプル 実行する • 他のタイプより実行時の単価が安い • エンドポイントなし、各インスタンスが直接 ネットワーク通信を開始 • スケーリング ◦ 現在手動のみ • リビジョンの履歴を保持 • インスタンスの処理分割 New Cloud Run には 3 つのリソース タイプが存在
  5. まずはアプリを作って動かしてみるのがおすすめ Google AI Studio(生成 AI のアプリを作る) • Googleの AI モデルである「Gemini」

    ファミリーを、Web ブラウザ上で手軽に 試すためのプロトタイピング ツール Firebase Studio (Project IDX)(生成 AI でアプリを作る) • AI によるコーディング支援を受けながら、 Web アプリやバックエンドをブラウザ上で 開発・デプロイするための IDE Google アカウントがあれば無料で使えます Cloud Run service https://aistudio.google.com https://studio.firebase.google.com or https://idx.google.com Cloud Run へのデプロイ が統合されている
  6. ソースコードがある場合は 1 コマンドでデプロイ - 要件が合えばベースイメージの自動更新機能も利用可能 gcloud run deploy \ --source

    . \ --base-image nodejs22 \ --automatic-updates 再ビルドや再デプロイする必要なく、 セキュリティ パッチを自動適用 Google Cloud の Buildpack ベース イメージをサポート https://cloud.google.com/docs/buildpacks/base-images
  7. Cloud Run services 編 - 開発、社内向け Web アプリ 社員 一般ユーザー

    ✓ Identity-Aware Proxy Cloud Run Web App Cloud Run 用に Identity-Aware Proxy を構成する | Cloud Run Documentation | Google Cloud IAM による認証 / 認可 IAP 認証あり
  8. Cloud Run services 編 - Web アプリ VPC Cloud SQL

    Cloud Run SSR サーバー Cloud Run に Next.js サービスをデプロイする | Cloud Run Documentation | Google Cloud 認証なし Direct VPC
  9. Cloud Run services 編 - Web アプリと API Cloud Run

    に Next.js サービスをデプロイする | Cloud Run Documentation | Google Cloud Cloud Run API サーバー VPC Cloud SQL Cloud Run SSR サーバー 認証なし IAM 認証あり Direct VPC 認証トークン
  10. Cloud Run services 編 - Web アプリと API 応用 Cloud

    Run API サーバー VPC Cloud SQL Cloud Storage 静的コンテンツ Application Load Balancer Cloud CDN Cloud Run SSR / BFF Cloud Run に Next.js サービスをデプロイする | Cloud Run Documentation | Google Cloud 認証なし / Ingress = ALB IAM 認証あり Direct VPC Host / Path ベース ルーティング 認証トークン Cloud Armor
  11. Cloud Run services 編 - クライアントのデータ収集 Google Cloud でのストリーミング データ

    パイプラインの構築 | Google Cloud ブログ Cloud Run データ整形、proxy BigQuery Pub/Sub Storage Write API BigQuery Subscription メッセージ送信 (キューイング) クライアント
  12. Cloud Run services 編 - イベント トリガー Eventarc イベントトリガー Cloud

    Storage ファイル Cloud Run functions or API アップロード イベント発火 呼び出し IAM 認証あり Eventarc を使用して Cloud Storage からイベントを受信する | Cloud Run Documentation | Google Cloud Firestore 書き込み
  13. Cloud Run services 編 - サービス メッシュ - 特に、多くのサービス間で API

    連携がある場合で有用 Cloud Run 用に Cloud Service Mesh を構成する | Google Cloud Cloud Run Cloud Run asia-northeast1 Cloud Run Cloud Run asia-northeast2 Cloud Service Mesh IAM 認証あり IAM 認証あり IAM 認証あり IAM 認証なし Private Network リクエスト時の認証ヘッダを アプリで設定する必要なし 複数リージョンのトラフィック分割 なども可能
  14. Cloud Run services 編 - AI エージェント Cloud Run で

    AI アプリとエージェントをホストする | Cloud Run Documentation | Google Cloud
  15. Cloud Run jobs 編 - 定期 or 手動バッチ処理 Cloud Run

    jobs 1 つのジョブ実行 Cloud Scheduler 定期的 (cron 指定) に HTTP エンドポイントを 呼び出せる スケジュールに従ってジョブを実行する | Cloud Run Documentation | Google Cloud 手動実行も可
  16. Cloud Run jobs 編 - 定期 or 手動バッチ処理 Cloud Run

    jobs 1 つのジョブ実行 Cloud Scheduler 定期的 (cron 指定) に HTTP エンドポイントを 呼び出せる スケジュールに従ってジョブを実行する | Cloud Run Documentation | Google Cloud 手動実行も可 タスクを分散処理し、 完了までの時間を短縮可能 Task 1 Task 2 Task n ︙ 各タスクのインデックスが インスタンスの環境変数に格納
  17. Cloud Run jobs 編 - 定期 or 手動バッチ処理 Cloud Run

    jobs 複数のジョブ実行 Cloud Scheduler 定期的 (cron 指定) に HTTP エンドポイントを 呼び出せる Workflows を使用して Cloud Run ジョブを実行する | Workflows Documentation | Google Cloud Workflows Cloud Run jobs オーケストレーション 手動実行も可 1 2
  18. Cloud Run worker pools 編 - キューの処理(概念) タスクキュー Worker pools

    Worker Worker Worker Task Task Task キューに蓄積したタスクを Worker が処理する
  19. Cloud Run worker pools Pub/Sub Cloud Run worker pools Cloud

    Run worker pools 編 - キューの処理 Cloud Run worker pools Pull Memorystore Valkey / Redis Cloud Run service Rails Web App Cloud Run worker Sidekiq worker Pull Push ワーカープールを Cloud Run にデプロイする | Cloud Run Documentation | Google Cloud Cloud Run service Data publisher Push Pub/Sub キューの処理 Rails の Sidekiq 利用例 Cloud Run service を 利用して Push で連携 するのでも良い 責務を分離 Cloud Run worker Sidekiq worker