Section 4 の全体像と学習ポイント
試験ガイドに基づく出題範囲と、モダナイゼーションがなぜビジネスに不可欠かを理解しましょう。
4.1 クラウドのモダナイゼーションと移行
4.2 クラウドにおけるコンピューティング
4.3 コンテナとオーケストレーション
4.4 API の戦略的価値
4.5 ハイブリッド&マルチクラウド
4.6 SRE と DevOps の原則
クラウドのモダナイゼーションと移行戦略
7つのR・CAMP フレームワーク・移行の判断基準を体系的に理解しましょう。
なぜモダナイゼーションが必要か
俊敏性の欠如
スケーラビリティの限界
高い運用コスト
7つのR移行戦略最重要
| 戦略名 | 別名 | 内容 | コード変更 | 適用ケース |
|---|---|---|---|---|
| Rehost(リホスト) | Lift & Shift | コードを変えずそのままクラウドへ移行。VMをGCE上にそのまま展開する。 | なし | レガシー移行・DC契約満了の迅速な移行 |
| Replatform(リプラットフォーム) | Lift & Optimize | アーキテクチャを維持しつつ一部をマネージドサービスへ置き換え。例:自社PostgreSQL → Cloud SQL。 | 一部 | 運用負荷削減・コード変更最小化 |
| Refactor(リファクタリング) | Move & Improve | クラウドネイティブ機能を活用するためアーキテクチャを再設計。モノリス→マイクロサービス化。 | 大規模 | スケーラビリティ・俊敏性の最大化 |
| Rebuild / Re-architect | Reimagine | 既存コードを破棄して最新技術でゼロから再構築。長期的に最大の価値を生み出す。 | 完全 | コードベースが陳腐化・完全刷新が必要 |
| Repurchase(再購入) | Drop & Shop | 自社システムを廃止してSaaS(Google Workspace・Salesforce等)に移行する。 | 不要 | 既製SaaSで要件を満たせる場合 |
| Retire(廃止) | — | 価値を生み出していない・重複しているシステムを安全にシャットダウン。コスト削減に直結。 | 不要 | 利用率が極めて低いシステム |
| Retain(保持) | Revisit | 現時点でのクラウド移行が見合わないワークロードをオンプレに残す。将来の再評価を前提とする。 | 不要 | データ主権規制・レガシーHW依存 |
CAMP(Cloud Application Modernization Program)
CAMP の 4 フェーズ
🎯 モダナイゼーションの 3 段階
Stage 1 — リフト&シフト:オンプレ VM をそのままクラウドへ。最速・最低リスク。
Stage 2 — クラウド最適化:マネージドサービス・コンテナ化・オートスケーリングを活用。
Stage 3 — クラウドネイティブ:マイクロサービス・サーバーレス・DevOps・CI/CD で最大の価値。
✅ ベストプラクティス:移行戦略の選択
- まず Stage 1(Rehost)で素早くクラウドへ移行し Quick Win を獲得する。
- ビジネス価値の高いシステムから優先的に Stage 3(クラウドネイティブ)へ移行する。
- 移行前に必ず Retire(廃止)できるシステムを特定してコストを削減する。
- データ主権・規制上の制約があるシステムは Retain 戦略を明示的に採用する。
コンピューティングサービスの選択最重要
制御要件・アーキテクチャ構造・チームのスキルセットに基づいて最適なサービスを選択します。
| サービス | 抽象化レベル | 管理負荷 | スケーリング | 課金モデル | 主な用途 |
|---|---|---|---|---|---|
| 🖥️ Compute Engine | IaaS(VM) | 高(OS管理必要) | 手動+MIG | VM稼働時間(秒単位) | レガシー移行・GPU・特殊OS |
| ☸️ GKE Standard | CaaS(コンテナ) | 中(ノード管理) | Kubernetes自動 | ノードVM+管理プレーン | 複雑なマイクロサービス・GPU ML |
| 🤖 GKE Autopilot | CaaS(マネージド) | 低(Google管理) | Kubernetes自動 | Pod リソース単位 | K8s を楽に使いたい・小規模チーム |
| 🚀 Cloud Run | サーバーレスコンテナ | 最低 | 自動(0〜N) | リクエスト処理時のみ | HTTP API・Web アプリ・マイクロサービス |
| ⚡ Cloud Run Functions | FaaS(関数) | 最低 | 自動(0〜N) | 実行時のみ完全従量課金 | イベント処理・Webhook・軽量タスク |
| 📱 App Engine | PaaS | 低 | 自動 | インスタンス稼働時間 | 既存Webアプリ・モバイルバックエンド |
- 最大 24 時間で強制終了される
- Google がリソース必要時に 30 秒前通知でシャットダウン
- 標準価格から最大 80% 割引
- 段階的に非推奨化・Spot VM へ移行推奨
- 24 時間制限を撤廃(リソースがあれば無期限稼働)
- Google がリソース必要時に 30 秒前通知でシャットダウン
- 標準価格から最大 91% 割引
- フォールトトレラントなワークロードに最適
- 本番 VM はリージョナル MIG + ヘルスチェック + ロードバランサーの組み合わせで高可用性を確保する。
- 安定したワークロードには Committed Use Discount(CUD)を適用(最大 57% 割引)。
- バッチ処理・ML 学習・CI/CD ビルドジョブは Spot VM でコストを最大 91% 削減。
- 開発環境の VM は Instance Schedules で業務時間外(夜間・週末)に自動停止してコスト削減。
- Recommender の提案を定期的に確認して過剰プロビジョニングを修正する(右サイズ化)。
コンテナと GKE(Google Kubernetes Engine)
VM とコンテナの違い・Kubernetes の役割・GKE の 2 つのモードを理解しましょう。
- ⏱️ 起動に数分かかる
- 💾 数GB のサイズ(ゲストOS込み)
- 🔒 完全な分離(強固なセキュリティ)
- ⚙️ OS レベルの完全制御が可能
- ⚡ 起動がミリ秒単位(超高速)
- 🪶 数 MB〜数百 MB(軽量)
- 🌍 環境の一貫性(どこでも同じ動作)
- 📦 高密度デプロイ(リソース効率化)
- ›インフラ管理工数を最小化したい
- ›少人数チーム・スタートアップ
- › GKE のベストプラクティスに自動準拠
- ›GPU ノードプールが必要(ML 学習)
- ›カーネルパラメータを細かく調整が必要
- ›大規模チームが専用の CI/CD パイプライン運用
- 新規プロジェクトはAutopilot をデフォルトで選択し、特別な要件がある場合のみ Standard へ。
- Workload Identity を使用してサービスアカウントキーをコンテナ内に置かない(最重要セキュリティ対策)。
- 本番はリージョナルクラスタ(3ゾーン分散)で耐障害性を確保する。
- Non-Critical ワークロードに Spot ノードプールを活用してコストを最大 60% 削減する。
- Liveness/Readiness Probe を必ず設定して異常 Pod を自動検知・排除する。
サーバーレスコンピューティング
Cloud Run・Cloud Functions・App Engine の違いと適切な選択基準を理解します。
Cloud Run
- ゼロスケール(アイドル時コストゼロ)
- トラフィック分割でカナリアデプロイ
- Cloud Run Jobs でバッチ処理も対応
Cloud Run Functions
- Cloud Storage(ファイルアップロード)
- Pub/Sub(メッセージ受信)
- HTTP・Firebase・Eventarc
App Engine
- Standard: 特定言語ランタイム・超高速スケール
- Flexible: Docker コンテナで任意ランタイム
- コンテナ化された HTTP API / Web アプリ
- 複数エンドポイントを持つアプリ
- 常時起動・WebSocket・gRPC が必要
- 特定イベント(ファイル保存・メッセージ受信)への反応
- 単一の処理・「接着剤」的な役割
- 完全にオンデマンド・ゼロスケール優先
- 新規アプリケーションのデプロイにはCloud Run をデフォルトの選択肢として検討する(Google も推奨)。
- Cold Start が問題の場合は最小インスタンス数を 1 以上に設定(コストはかかるがレイテンシを安定させる)。
- Cloud Run Jobs でスケジュールバッチを実装し、常時起動 VM を不要にする。
- シークレット(API キー等)はコードに直書きせずSecret Manager から環境変数として注入する。
- Cloud Functions は「1 関数 = 1 タスク」の単一責務の原則を守り、複雑な処理は Cloud Run へ。
ネットワークサービスとハイブリッド接続頻出
VPC・ロードバランサー・CDN・Cloud VPN・Cloud Interconnect の役割と選択基準を理解します。
VPC(Virtual Private Cloud)の基本
Google Cloud VPC の特徴
- サブネットで IP アドレス範囲を分割(本番・開発・テストの分離)
- ファイアウォールルールで送受信トラフィックを細かく制御
- Private Google Access で外部 IP なしで GCP サービスにアクセス
Shared VPC(共有 VPC)
- ファイアウォールポリシーをセキュリティチームが一元管理
- 各プロジェクトは独立したコスト管理を維持
オンプレミスとの接続方法の選択最重要
🔒 Cloud VPN
低コスト- 物理専用線不要・低コスト・迅速な設定
- インターネット品質に依存(帯域保証なし)
- 大量データ転送・低レイテンシ要件には不向き
🔗 Cloud Interconnect
エンタープライズ- 低レイテンシ・高帯域・安定した専用線品質
- アウトバウンドデータ転送コストが安価
- コストが高い・設定に時間がかかる
Cloud Load Balancing の種類
グローバル外部
HTTP(S) LB
内部
HTTP(S) LB
外部 TCP/UDP
NLB
Cloud CDN
- VM には原則として外部 IP を付与せず、Cloud NATでアウトバウンドのみを許可する(攻撃面を最小化)。
- グローバルな Web アプリにはグローバル HTTP(S) LB + Cloud CDN + Cloud Armorを組み合わせて配信。
- マイクロサービス間通信には内部 HTTP(S) LBで外部に公開しない安全な負荷分散を実現する。
- Shared VPC でネットワーク管理を中央集権化し、各チームのセキュリティポリシーを統一する。
- VPC Flow Logs を有効化してネットワークトラフィックを記録し、セキュリティ監査の基盤を整える。
ハイブリッド&マルチクラウド管理
GKE Enterprise(旧 Anthos)によるマルチ環境統合管理の仕組みを理解しましょう。
マルチクラウド戦略を選ぶ理由
ベンダーロックイン回避
データ主権とコンプライアンス
既存投資の保護
GKE Enterprise(旧 Anthos)によるサイロの打破最重要
- ハイブリッド環境の複雑さを増やす前に、各環境に残すビジネス上の明確な理由を定義する。
- Anthos Config Management でセキュリティポリシーを Git で一元管理し、全クラスタに均一に適用する。
- Connect Gateway でアクセス認証をIAM に統一し、環境ごとの認証管理のサイロを排除する。
- クロスクラウドの通信には暗号化を必須とし、Anthos Service Mesh の mTLS を活用する。
DevOps と SRE の原則頻出
CI/CD パイプライン・SLO/SLA/SLI・エラーバジェット・DORA メトリクスを理解します。
開発(「早く新機能をリリース」)と運用(「安定性を維持」)の壁を打破し、自動化・継続的フィードバック・責任の共有を通じてソフトウェアのデリバリーを加速させる文化的ムーブメント。
- 📊 デプロイ頻度 — 本番へのデプロイ回数(高いほど良い)
- ⏱️ 変更リードタイム — コミットから本番まで(短いほど良い)
- ❌ 変更失敗率 — デプロイが失敗する割合(低いほど良い)
- 🔧 平均復旧時間 (MTTR) — 障害から回復まで(短いほど良い)
Budget
class SRE implements interface DevOps」。 SRE は DevOps の抽象的な理念を、具体的なソフトウェアエンジニアリングの実践を通じてシステム運用に適用したものです。 両者は競合する戦略ではなく、同じコインの裏表です。- 本番デプロイは必ずCloud Deploy の承認ワークフローを通じて実施し、手動デプロイを排除する。
- Artifact Registry の脆弱性スキャンと Binary Authorization でセキュアなイメージのみデプロイを許可(Shift-Left Security)。
- SLO を設定し、エラーバジェットに基づいてリリース速度と安定性のバランスをデータで管理する。
- Infrastructure as Code(Terraform)でインフラをコード化し、GitOpsで設定変更を管理する。
- DORA メトリクスを定期的に測定し、組織のソフトウェアデリバリー能力を継続的に改善する。
API の戦略的価値と Apigee
API をビジネス資産として捉え、Apigee による収益化・セキュリティ・ガバナンスを理解します。
- ›エコシステム拡大:外部開発者・パートナーが API を使って新アプリを構築 → 自社ビジネスエコシステムが成長
- ›レガシーの抽象化:古いバックエンドを API でラップ → フロントエンドを中断せずにバックエンドを段階的に移行
- ›収益化:API 利用量に応じた従量課金モデルやレベニューシェアを実装
- OAuth 2.0・API キー認証
- レート制限・クォータ管理
- ML ボット検出(Advanced API Security)
- 従量課金 Rate Plans の設定
- レベニューシェア機能
- 開発者ポータル(自動オンボーディング)
- レガシーシステムをいきなり廃止しようとせず、Apigee で API ファサードを設けてフロントエンドを守りながら段階移行する。
- Advanced API Security でシャドウ API(管理外の API)を発見し、組織の脆弱性を可視化する。
- 開発者ポータルで外部パートナーのセルフサービスオンボーディングを実現し、API エコシステムを拡大する。
- API 利用統計を分析して使われていない API の廃止と収益性の高い API の投資優先度付けを行う。
コスト最適化の実践(FinOps)
クラウドコストを可視化・最適化・継続管理するためのツールとベストプラクティス。
適切なサービス選択
適切なサイジング
需要に合わせたスケーリング
最適な価格モデル
試験直前チェックリスト&頻出パターン
CDL 試験 Section 4 の重要ポイントを確認し、頻出問題パターンで理解を深めましょう。
Section 4 チェックリスト
移行戦略・モダナイゼーション
- 7つのR(Rehost/Replatform/Refactor/Rebuild/Repurchase/Retire/Retain)を具体例で説明できる
- Retain(保持)とRetire(廃止)の違いを明確に説明できる
- 「Lift & Shift = Rehost」と「Move and Improve = Refactor」の対応関係を理解している
- CAMP フレームワークの 4 フェーズを説明できる
- モダナイゼーションの 3 段階(Stage 1-3)を説明できる
コンピューティング
- コンピューティングサービス選択のデシジョンツリーを即答できる
- VM とコンテナの違いをビジネス価値を含めて説明できる
- GKE Autopilot vs Standard の使い分け(GPU が必要→Standard)を説明できる
- Spot VM が「最大 91% 割引・中断可能ワークロード向け」であることを説明できる
- Cloud Run と Cloud Functions の違いと使い分けを説明できる
ネットワーク・ハイブリッド
- Cloud VPN(安価・インターネット経由)と Cloud Interconnect(専用線・高コスト)の選択基準を説明できる
- Shared VPC の目的(ネットワーク中央集権化)を説明できる
- GKE Enterprise(旧 Anthos)がマルチクラウドを「単一の管理画面」で統合管理することを説明できる
- マルチクラウドを選ぶ 3 つのビジネス理由(ロックイン回避・データ主権・投資保護)を説明できる
DevOps / SRE / API
- CI/CD パイプライン(Cloud Build → Artifact Registry → Cloud Deploy)を説明できる
- SLI・SLO・SLA・エラーバジェットの違いを説明できる(SLA < SLO の関係)
- DORA の 4 つのメトリクスを説明できる
- Apigee がレガシーシステムの「API ファサード」として機能することを説明できる
頻出問題パターンと解法
コンピューティングサービスの選択
- Node.js コンテナ → コンテナサービスを使用
- インフラ管理を最小化 → サーバーレス
- HTTP API + 急激な増減 → Cloud Run の 0〜N スケーリングが最適
ハイブリッド接続の選択
- 大量データ(数十 TB)→ 高帯域が必要
- 低レイテンシ・安定性 → インターネット経由は不適切
- 物理専用線 → Dedicated Interconnect が正解
移行戦略の選択
- アーキテクチャはそのまま → 大規模なコード変更なし
- マネージドサービスへの置き換え → Cloud SQL
- 運用負荷削減 = Replatform(一部最適化)
GKE モードの選択
- GPU ノードが必要 → 特殊なノード設定が必要
- 細かいノード制御 → Autopilot では制限がある
- カスタムノードプール管理 → Standard が必要
混同しやすいポイントの整理
| 混同パターン | ✅ 正しい理解 |
|---|---|
| Cloud Run = Cloud Functions | Cloud Run はコンテナ化されたアプリ全体、Cloud Functions はイベント駆動の関数(コード片)。HTTP API → Cloud Run、ファイルアップロード処理 → Cloud Functions |
| Autopilot = サーバーレス | Autopilot はノード管理を Google に委任するが Kubernetes を使用。Cloud Run がサーバーレス。Autopilot はコンテナを常時稼働できる |
| Cloud VPN = Cloud Interconnect | VPN はインターネット経由(安価・低帯域)、Interconnect は物理専用線(高コスト・高帯域・低レイテンシ)。大量データ・低レイテンシ → Interconnect |
| Anthos = GKE | GKE は Google Cloud 上の Kubernetes サービス。Anthos(GKE Enterprise)はオンプレ・AWS・Azure も含む多環境を統合管理するプラットフォーム |
| SLO = SLA | SLO は組織内目標(高い)、SLA はユーザーへの契約(SLO より低く設定)。SLA を破ると返金等のペナルティが発生する |
| Retire(廃止)= Retain(保持) | Retire はビジネス価値のないシステムを削除してコスト削減。Retain はデータ主権・規制上の理由で意図的にオンプレに残す戦略的選択 |
| Rehost = Refactor | Rehost(Lift & Shift)はコード変更なしのそのまま移行。Refactor(Move & Improve)はクラウドネイティブになるようアーキテクチャを再設計する |