Google Cloud 実践コースでは、基礎コースで構築した Cloud Run ベースのインフラを土台に、商用利用を見据えた本格的な構成へと進化させていきます。
基礎コースの次のステップとして、バッチ処理、非同期処理、踏み台サーバー、静的コンテンツ配信、WAF、自動デプロイパイプラインといった、実務で求められる構成を一つずつ構築していきます。Cloud Run を中心に、開発から運用まで必要な知識を網羅的に身につけることができます。
このコースをクリアすれば、Cloud Run をベースとしたアプリケーションの開発・運用で困ることはほとんどなくなるはずです。
Cloud Scheduler によるバッチ処理
Cloud Scheduler から Cloud Run ジョブを起動する構成でバッチ処理を実現していきます。ただ構築するだけでなく、Google Cloud でバッチ処理を実現する際の手法やそれぞれのメリット・デメリットについても解説しながら、設計力も鍛えていきます。さらに、Cloud Scheduler を扱う上で非常に重要なリトライ設計についても深く学んでいきます。

Cloud Tasks による非同期処理
非同期処理については Cloud Tasks で行います。Google Cloud で非同期処理を実装する場合、Cloud Tasks と Pub/Sub という2つの選択肢がありますが、この使い分けは非常に難しいポイントです。そのため、これらの選定基準についても深く解説していきます。
構成としては、API用の Cloud Run から Cloud Tasks にタスクを作成し、Cloud Tasks から Worker 用の Cloud Run に HTTP リクエストを送信する形です。これに付随して、Cloud Run の認証やネットワーキングの設定についても詳しく扱っていきます。
さらに、非同期処理においては、バックエンドとインフラをシームレスにつなげるための知識が必要です。設計をする際のディレクトリ構成やクリーンアーキテクチャの話も多数登場します。インフラだけではなくバックエンドの知識が一気に身につくチャプターとなっています。

Cloud Run 深掘り道場
Cloud Run のネットワーキング、認証、スケーリングを中心に深掘りしていきます。さらにコールドスタート対策、コスト最適化、Cloud Run の環境変数が揺れる問題への対応など、実務で効いてくるポイントについても解説していきます。
このチャプターを通して、これまで雰囲気で理解していた Cloud Run の奥深い部分がしっかり腹落ちし、「Cloud Run なら任せてください」と自信を持って扱える状態になるはずです。
GCE による踏み台サーバの構築
GCE による踏み台サーバーを構築し、Cloud SQL の中身をセキュアに閲覧する基盤を作っていきます。踏み台サーバーを構築することによって、プライベート IP アドレスしか持たない Cloud SQL に対しても、ローカルの DB クライアントツールからポートフォワーディングを通して中身を閲覧できるようになります。
ただの構築作業ではなく、ネットワークについてさらに理解を深められる非常に良いテーマとなっています。

Cloud CDN、GCS による静的コンテンツの配信
Cloud CDN と GCS を組み合わせて、キャッシュを活用した配信基盤を実現します。AWS とは一味違い、GCLB(ロードバランサー)の後ろに CDN やストレージが来るという非常に癖の強い構成ですが、丁寧に解説していきます。
後半では、静的コンテンツの閲覧制限をかけるための手法や CORS 関連の話など、実務に直結する深い内容も扱っていきます。

Cloud Armor によりアプリケーションへの攻撃をブロックする
Google Cloud のマネージド WAF である Cloud Armor を GCLB に紐付け、IP アドレスブロックや SQL インジェクションへの対策など、実務で頻出の内容を扱っていきます。
WAF は導入自体はそれほど難しくありませんが、誤ブロックを避けつつ攻撃だけを正しく遮断するというバランスを取るのが非常に難しいポイントです。そのため、このチャプターでは特にこの点に力を入れて解説しました。

Cloud Build による自動デプロイパイプラインの構築
最後は、Cloud Build による自動デプロイパイプラインの構築まで行います。GitHub Actions vs Cloud Build の選定基準、Cloud Deploy と組み合わせるか Cloud Build 単体で完結させるか、モノレポ・複数マイクロサービス構成の場合のトリガー配置戦略など、設計面に力を入れて作成しました。
「なぜこの構成にするのか」という判断の流れを重視し、楽しく構築しながら設計力も鍛えられるチャプターになっています。
