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

勝手に!深堀り!Cloud Run worker pools / Deep dive Clou...

勝手に!深堀り!Cloud Run worker pools / Deep dive Cloud Run worker pools

Avatar for iselegant

iselegant

April 24, 2025
Tweet

More Decks by iselegant

Other Decks in Technology

Transcript

  1. 新井 雅也 Synspective Inc. プリンシパルエンジニア 
 
 現在は衛星の開発・運用を手掛けるスタートアップ企業にて、 
 クラウドを中心とした技術力を活かしつつ、宇宙業界の発展に尽力し

    ている。クラウド関連の技術書を多数執筆。 
 
 好きなサービス: GKE、Cloud Run 
 趣味:Red Bull(日課)、LEGO、読書、キャンプ、植物収集、 
    世界遺産巡り(世界遺産検定1級保持) 
 msy78

  2. まずは Google Cloud Next 2025 で発表された 
 GKE & Cloud

    Run 関連の 
 アップデートのおさらいから 

  3. Google Cloud Next 2025 期間中に発表された 
 GKE 関連アップデート一言サマリ 
 GKE

    Inference Gateway 
 Performance HPA profile 
 Container-optimized Autopilot 
 プレビュー 
 ・LLM推論ワークロード向け負荷分散機能 
 ・LLM固有のメトリクスに基づいてルーティング 
 ・GKE水平スケールの判断に必要な計算が高速化 
 (従来比の3倍) 
 ・Autopilotリソース最適化を標準GKEクラスターに適用可能 
 ・利用できるのは2025Q3から(予定) 
 GA
 ロードマップ 

  4. Google Cloud Next 2025 期間中に発表された 
 Cloud Run 関連アップデート一言サマリ 


    Cloud Run IAP built-in 
 Cloud Run GPU 
 Cloud Run Worker Pools 
 Cloud Run Health for regional failover 
 VPC egressの改善 
 Cloud Run Threat Detection 
 プレビュー 
 ・ロードバランサ不要でIAPが適用可能 
 GA
 ・その名の通り、Cloud RunでGPUが利用可能 
 ・Tokyoリージョンは未サポート 
 プレビュー 
 ・service/jobsとは異なる新しい実行モデル 
 ・詳細はのちほど 
 
 GA
 ・確保が必要なサブネットIPアドレス数が半減(4倍→2倍) 
 ・Cloud Run jobsでも利用可 
 プレビュー 
 ・Security Command Centerとの統合 
 ・ランタイム攻撃や脆弱性等を検知 
 プレビュー 
 ・マルチリージョンにおけるフェイルオーバーサポート 
 ・startupProbeのシグナルとServerless NEGの連携 

  5. Google Cloud Next 2025 期間中に発表された 
 Cloud Run 関連アップデート一言サマリ 


    Cloud Run IAP built-in 
 Cloud Run GPU 
 Cloud Run Worker Pools 
 Cloud Run Health for regional failover 
 VPC egressの改善 
 Cloud Run Threat Detection 
 プレビュー 
 ・ロードバランサ不要でIAPが適用可能 
 GA
 ・その名の通り、Cloud RunでGPUが利用可能 
 ・Tokyoリージョンは未サポート 
 プレビュー 
 ・service/jobsとは異なる新しい実行モデル 
 ・詳細はのちほど 
 
 GA
 ・確保が必要なサブネットIPアドレス数が半減(4倍→2倍) 
 ・Cloud Run jobsでも利用可 
 プレビュー 
 ・Security Command Centerとの統合 
 ・ランタイム攻撃や脆弱性等を検知 
 プレビュー 
 ・マルチリージョンにおけるフェイルオーバーサポート 
 ・startupProbeのシグナルとServerless NEGの連携 

  6. Cloud Run Worker Poolsとは? 
 ※Google Cloud Next 2025: What’s

    new in Cloud Run (https://www.youtube.com/watch?v=PWPvX25R6dM)より一部参照

  7. Cloud Run Worker Poolsとは? 
 ※Google Cloud Next 2025: What’s

    new in Cloud Run (https://www.youtube.com/watch?v=PWPvX25R6dM)より一部参照

  8. Cloud Run Worker Poolsとは? 
 ★ service / jobs とは異なる新しい実行モデル

    
 ★ HTTP エンドポイントは不要
 ★ 常駐稼働型 でアイドル時のコスト発生を低減 
 ★ CPU 使用率等に応じた自動スケーリング or 手動スケーリング
 ◦ 常駐稼働型に適したスケーリング 
 ★ ユースケースとしては、Pub/Sub のサブスクライバー、
 Kafka コンシューマー処理、GitHub / GitLab によるホストランナー等

  9. Cloud Run Worker Poolsとは? 
 ★ 現在はPrivate Previewステータス 
 ◦

    特定のユーザー向けにのみ限定公開
 ◦ Public Previewの最終段階でフィードバックを収集している状況
 
 ★ ドキュメントも非公開
 

  10. Cloud Run Worker Poolsとは? 
 ★ 現在はPrivate Previewステータス 
 ◦

    特定のユーザー向けにのみ限定公開
 ◦ Public Previewの最終段階でフィードバックを収集している状況
 
 ★ ドキュメントも非公開
 
 現時点で情報が限定的なた め、公開情報ベースで 
 「勝手に」 深堀りします

  11. ここまでの疑問をいったん整理 
 🤔 Cloud Run serviceでも代替できるのでは? 
 🤔 Cloud Run

    jobsでも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 

  12. ここまでの疑問をいったん整理 
 🤔 Cloud Run serviceでも代替できるのでは? 
 🤔 Cloud Run

    jobsでも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 

  13. Cloud Run service のおさらい 
 疑問1: Cloud Run service でも代替できるのでは?

    
 ★ 当初のCloud Run ServiceにはCPU利用に厳しい制限 があった
 ◦ Cloud Run serviceはRequest&Response型のサービス 
 ◦ Response後はCPUがスロットリングされ、利用が厳しく制限 
 ◦ そもそも、HTTP Request&Responseがないと、CPUが利用できない 
 ▪ HTTPエンドポイントを必要としないWorkerとしては不向き 
 
 

  14. Cloud Run service のおさらい 
 疑問1: Cloud Run service でも代替できるのでは?

    
 ★ 当初のCloud Run ServiceにはCPU利用に厳しい制限 があった
 ◦ Cloud Run serviceはRequest&Response型のサービス 
 ◦ Response後はCPUがスロットリングされ、利用が厳しく制限 
 ◦ そもそも、HTTP Request&Responseがないと、CPUが利用できない 
 ▪ HTTPエンドポイントを必要としないWorkerとしては不向き 
 
 
★ 「Always on CPU」の登場によりHTTPリクエストに依らず、CPU利用が可能 に
 ◦ インスタンスが存在している間は、CPUの割当が可能 
 ◦ ただし、HTTPリクエストが発生しないと、約15分でインスタンスが終了 
 ▪ インスタンス最小数(--min-instances)を1以上にすれば、 
 常駐可能なWorkerが実現できそう
  15. Cloud Run service のおさらい 
 疑問1: Cloud Run service でも代替できるのでは?

    
 なんとなく、Cloud Run serviceで Worker Pools実装できそうなのでは?
  16. 疑問1: Cloud Run service でも代替できるのでは? 
 ・HTTPリッスンしないと、そもそもCloud Run serviceが起動できない
 ・Cloud

    Run serviceのHTTPエンドポイントのセキュリティ対策が必要
 制約1: Worker としては不要な HTTP リッスンの実装が必要 

  17. 制約1: Worker としては不要な HTTP リッスンの実装が必要 
 疑問1: Cloud Run service

    でも代替できるのでは? 
 ・HTTPリッスンしないと、そもそもCloud Run serviceが起動できない
 ・Cloud Run serviceのHTTPエンドポイントのセキュリティ対策が必要

  18. 制約2: インスタンス常時起動で コストが常に発生 する
 疑問1: Cloud Run service でも代替できるのでは? 


    ・Always on CPUにより、コストモデルがリクエスト課金からインスタンス課金に変わる

  19. 制約2: インスタンス常時起動で コストが常に発生 する
 疑問1: Cloud Run service でも代替できるのでは? 


    ・Always on CPUにより、コストモデルがリクエスト課金からインスタンス課金に変わる

  20. 制約2: インスタンス常時起動で コストが常に発生 する
 疑問1: Cloud Run service でも代替できるのでは? 


    ・Always on CPUにより、コストモデルがリクエスト課金からインスタンス課金に変わる

  21. 制約3: タスクの処理負荷状況のみ でスケールが機能しない 
 疑問1: Cloud Run service でも代替できるのでは? 


    ・リクエスト数、CPU使用率、インスタンス数を加味して自動でスケール判定 
 ・Taskが蓄積しても、HTTPリクエストが発生しない限りスケールしない可能性あり 

  22. 制約3: タスクの処理負荷状況のみ でスケールが機能しない 
 疑問1: Cloud Run service でも代替できるのでは? 


    ・リクエスト数、CPU使用率、インスタンス数を加味して自動でスケール判定 
 ・Taskが蓄積しても、HTTPリクエストが発生しない限りスケールしない可能性あり 

  23. ここまでの疑問をいったん整理 
 󰢃 Cloud Run service でも代替できるのでは? 
 🤔 Cloud

    Run jobs でも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 
 → 代替はできるが、 不要な HTTP リッスンの実装とセキュリティ対策、 
   常時コストの発生、スケーリングの制約観点 から最適とは言えない。 

  24. ここまでの疑問をいったん整理 
 󰢃 Cloud Run service でも代替できるのでは? 
 🤔 Cloud

    Run jobs でも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 
 → 代替はできるが、 不要な HTTP リッスンの実装とセキュリティ対策、 
   常時コストの発生、スケーリングの制約観点 から最適とは言えない。 

  25. Cloud Run jobs のおさらい 
 疑問2: Cloud Run jobs でも代替できるのでは?

    
 ★ HTTPリクエストは不要でCPUの割り当てが可能
 ◦ アプリ側で不要なHTTPリッスン実装は不要となる

  26. Cloud Run jobs のおさらい 
 疑問2: Cloud Run jobs でも代替できるのでは?

    
 Cloud Run serviceと比較して、 HTTPリッスン実装不要だし、いけそう?
  27. ここまでの疑問をいったん整理 
 󰢃 Cloud Run service でも代替できるのでは? 
 󰢃 Cloud

    Run jobs でも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 
 → 代替はできるが、 不要な HTTP リッスンの実装とセキュリティ対策、 
   常時コストの発生、スケーリングの制約観点 から最適とは言えない。 
 → 常駐処理というユースケースに適さない 

  28. ここまでの疑問をいったん整理 
 󰢃 Cloud Run service でも代替できるのでは? 
 󰢃 Cloud

    Run jobs でも代替できるのでは? 
 🤔 GKEでも代替できるのでは? 
 → 代替はできるが、 不要な HTTP リッスンの実装とセキュリティ対策、 
   常時コストの発生、スケーリングの制約観点 から最適とは言えない。 
 → 常駐処理というユースケースに適さない 

  29. 疑問3: GKEでも代替できるのでは? 
 ★ すでにGKE中心のワークロードなら何ら問題なし 
 ◦ GKE上でDeployment + HPA構成でWorker

    Poolsを構成可能
 
 ★ Cloud Run中心のアーキテクチャでは、オーバーエンジニアリング 
 ◦ Worker Pools導入のためだけに、新規GKE立てるのは、
 導入・運用コスト的にも見合わないケースがほとんど
 ◦ それならCloud Run serviceでなんとか頑張るはず....

  30. ここまでの疑問をいったん整理 
 󰢃 Cloud Run service でも代替できるのでは? 
 󰢃 Cloud

    Run jobs でも代替できるのでは? 
 󰢃 GKEでも代替できるのでは? 
 → 代替はできるが、 不要な HTTP リッスンの実装とセキュリティ対策、 
   常時コストの発生、スケーリングの制約観点 から最適とは言えない。 
 → 常駐処理というユースケースに適さない 
 → 代替はできる。一方、Cloud Run 中心のアーキテクチャでは 
  オーバーエンジニアリングとなる可能性 

  31. Cloud Run Worker Poolsとは? 
 ※Google Cloud Next 2025: What’s

    new in Cloud Run (https://www.youtube.com/watch?v=PWPvX25R6dM)より一部参照
 再掲
 コスト・スケールの観点で最適化、 
 HTTPエンドポイント不要 常駐型の新しいモデル
  32. Cloud Run Worker Poolsとは? 
 ※Google Cloud Next 2025: What’s

    new in Cloud Run (https://www.youtube.com/watch?v=PWPvX25R6dM)より一部参照
 再掲
 コスト・スケールの 観点で最適化 
 常駐型の 
 新しいモデル 
 GPU 対応も加味すると、Cloud Run は Google Cloud 上で
 あらゆるワークロードに対応可能な一級市民 
 として進化していく方向性が垣間見れる

  33. まとめ
 ★ Cloud Run Worker Poolsはservice / jobsとは異なる新しい実行モデル 
 ★

    常駐稼働型 でアイドル時のコスト発生を低減 
 ★ Cloud Run はあらゆるワークロードに対応していく方向に

OSZAR »