PCA 合格対策

Deep Dive: Migration & Hybrid

Professional Cloud Architect 試験で問われる移行・ハイブリッド全領域を、公式ドキュメントベースで技術深掘りします。6R 戦略 / Migration Center / DMS / Datastream / Storage Transfer / Transfer Appliance / M4VM / M2C / Anthos / GKE Enterprise / VMware Engine / Hybrid Connectivity を、SLA・クォータ・事故ケース・カットオーバー設計まで完全網羅。

🚚 全 18 章 🚨 事故ケース 35+ 📊 SLA / 所要期間 完全網羅 📚 公式 20 ドキュメント参照 🎯 試験頻出ケーススタディ付き 🔑 ロールバック設計込み
🔧 設計判断 🎯 試験頻出 ⚠️ アンチパターン 📋 クォータ ✅ ベストプラクティス
🔑 TL;DR — このページの結論 移行は「Assess → Plan → Deploy → Optimize」の 4 Phaseで進め、各ワークロードに 6R(Rehost / Replatform / Refactor / Repurchase / Retain / Retire)のいずれかを割り当てます。
Assess の主役は Migration Center:mCollector でオンプレ/AWS/Azure を Discovery し、依存マップ・TCO・推奨先を出力。
VM Lift&Shift= Migrate to Virtual Machines (M4VM) の Stream-based 移行+テストクローン。
レガシー→コンテナ= Migrate to Containers (M2C)。Tomcat / Spring / IIS / WebSphere に対応。
DB 移行:低ダウンタイムは Database Migration Service(Cloud SQL / AlloyDB へ)、BigQuery CDCDatastream、自前 BinLog 再生は最終手段。
大容量データ転送:オンラインは Storage Transfer Service、ネットワーク不足なら Transfer Appliance(TA40=40TB / TA300=300TB)。
マルチクラウド K8s 統治Anthos / GKE Enterprise(Fleet + Connect Gateway + Config Sync + Cloud Service Mesh)。
VMware 完全互換Google Cloud VMware Engine (GCVE)(HCX vMotion でゼロダウンタイム移行)。
ハイブリッド接続:本番は Dedicated/Partner Interconnect 99.99% SLA、即時は HA VPN 99.99%、AWS/Azure 直結は Cross-Cloud Interconnect
最大の事故源は 「カットオーバー後のロールバック手順不在」「Replication Slot 枯渇による本番 DB 停止」「Transfer Appliance の納期遅延でプロジェクト遅延」「Anthos Config Sync エラーで全クラスタ崩壊」。事故ケース章で必ず確認してください。

📚 参照する公式ドキュメント

本資料は以下の Google Cloud 公式ドキュメント(2026 年時点)から技術詳細・制限・SLA・ベストプラクティスを抽出しています。各章で都度引用と URL を併記します。

カテゴリドキュメント
戦略Migration to Google Cloud: getting started①②
DiscoveryMigration Center overview
VM 移行Migrate to Virtual Machines (M4VM)
コンテナ化Migrate to Containers (M2C)
DBDatabase Migration Service
CDCDatastream
オンライン転送Storage Transfer Service
オフライン転送Transfer Appliance
K8s 統治Anthos / GKE Enterprise
オンプレ K8sAnthos clusters on VMware
ベアメタルAnthos on bare metal
Fleet 接続Connect Gateway
GitOpsAnthos Config Management
Service MeshCloud Service Mesh
VMwareGoogle Cloud VMware Engine
専用線Dedicated Interconnect
共有回線Partner Interconnect
VPNHA VPN topologies
マルチクラウドCross-Cloud Interconnect
App 設計Application Design Center

1移行全体像 — Assess → Plan → Deploy → Optimize

Google Cloud の公式移行フレームワークは 4 つの Phase で構成されます。各 Phase は順序通りに進めるのではなく、イテレーションで繰り返すことを前提に設計されています。

"Google Cloud structures migrations into a sequential journey with four distinct phases: Assess, Plan, Deploy, Optimize."
Migration to Google Cloud: getting started
Assess 現状把握・依存 TCO・優先順位 2–8 週間 Plan Landing Zone IAM・VPC・組織 4–12 週間 Deploy 移行実行 Wave 単位 3–18 ヶ月 Optimize コスト・性能 自動化・SRE 継続 Google Cloud 4-Phase Migration Framework 各 Phase は一度きりではなく Wave 単位でイテレーション
図1: 4-Phase Migration Framework — Assess → Plan → Deploy → Optimize

1.1 各 Phase の成果物(Deliverables)

Phase主な活動主要ツール成果物関係者
Assessインベントリ収集 / 依存マップ作成 / TCO 計算 / アプリケーション分類Migration Center, mCollector, RVTools資産台帳、依存マップ、TCO レポート、6R 分類Cloud Architect, App Owner
PlanLanding Zone 設計 / 組織階層 / VPC / IAM / セキュリティポリシー / Wave 計画Resource Manager, Cloud Build, Terraform, Cloud IdentityLanding Zone 設計書、Wave スケジュール、ロールバック計画Network/Security/IAM Lead
Deployデータ&ワークロード移行 / カットオーバー / 検証 / モニタリングM4VM, M2C, DMS, Datastream, STS, Transfer Appliance本番稼働、検証レポート、SLO ベースラインSRE, App Team
Optimize右サイジング / コミット契約 / Autoscaling / SLO 改善 / クラウドネイティブ化Recommender, Active Assist, FinOps toolingコスト最適化レポート、自動化 IaC、運用ランブックFinOps, SRE
2–8 週
Assess (中規模)
4–12 週
Plan (Landing Zone)
3–18 ヶ月
Deploy (数百 VM)
継続
Optimize
⚠️ よくある失敗 — Assess を省略して Deploy 開始 「ひとまず lift & shift で動かそう」と Assess をスキップすると、依存マップ漏れによる連鎖障害、想定外コスト、ライセンス違反が必ず発生します。Migration Center による Discovery と依存分析は最低 2 週間確保してください。
🚨 事故ケース: Assess 省略で本番断 — 移行ウェーブの依存関係マッピング不足
状況製造業 A 社が 250 台のオンプレ VM を 3 ヶ月で GCP 移行。Migration Center を使わず Excel で台帳管理。1st Wave で Web 層 50 台を移行
原因Web 層が依存する 内部 DNS / 認証 LDAP / NTP / 内部 PKI が「Retain」扱いだったが、ファイアウォール変更により旧オンプレ DNS への到達経路が遮断。さらに Web 層から呼ぶレガシー API 30 個の存在を未把握
影響カットオーバー直後に全 Web アプリが TLS 検証失敗・名前解決失敗で 503 を返却。8 時間の業務停止、SLA 違反による顧客クレジット発生
復旧緊急 DNS Forwarding (Cloud DNS Inbound Server Policy) 構成、PKI 中間証明書を Secret Manager 配布、24 時間後復旧
再発防止Migration Center mCollector で ネットワークフロー収集を 2 週間実施、依存マップを必ず生成。Wave に「依存先 Retain サービス確認」のゲートを追加

📝 試験での出題パターン

26R 戦略 完全解説

各ワークロードに対して 「どの R を選ぶか」 を Assess Phase で決定します。Google の公式ドキュメントでは Rehost / Replatform / Refactor / Repurchase / Retain / Retire(さらに Re-architect / Rebuild も併記)の 6R(拡張 7R)で整理されます。

2.1 6R カード一覧

🚚 Rehost (Lift & Shift)

OS・アプリ無変更で IaaS にそのまま移植。最速・最小工数。

ツール: M4VM, Snapshot Import
期間: 2–6 週/100VM
コスト: 短期低・長期高
ROI: 短期回収◎ / 最適化✕

🛠️ Replatform (Lift & Optimize)

OS や DB を Managed Service に置換し最小限の変更。例: 自前 MySQL → Cloud SQL。

ツール: DMS, M2C
期間: 1–4 ヶ月
コスト:
ROI: 運用負荷↓・短期◎

🏗️ Refactor / Re-architect

マイクロサービス化、コンテナ化、サーバレス化。コード変更必須。

ツール: GKE, Cloud Run, M2C
期間: 6 ヶ月〜2 年
コスト: 高(人件費)
ROI: 長期◎ / 短期✕

💳 Repurchase

自前運用をやめ SaaS に置換。Exchange → Workspace、Siebel → Salesforce 等。

ツール: SaaS 各種
期間: 3–12 ヶ月
コスト: ライセンス課金へ転換
ROI: TCO ◎

📦 Retain (Keep)

そのまま残す。レガシー・規制・コスト見合いで移行しない判断。

ツール: Hybrid Connectivity
期間: 0(接続のみ)
コスト: 既存維持
ROI: リスク回避

🗑️ Retire (Decommission)

不要な資産を廃棄。Assess で意外と多く発見される。

ツール: ーー
期間: 1–3 ヶ月
コスト: 大幅削減
ROI: 即効性 ◎

2.2 6R 比較表(期間・コスト・リスク・ROI)

戦略期間初期コスト運用コスト移行リスクROI 回収クラウド恩恵主な適用先
Rehost即〜3Mレガシー Windows / 既製パッケージ
Replatform3–9MMySQL/PG → Cloud SQL, Tomcat → GKE
Refactor12–24M戦略的アプリ、スケール需要大
Repurchase低(既知)6–12MEmail, CRM, HR
Retain変化なし最低なし規制対象、メインフレーム
Retire最低削減即時使用頻度低・代替あり

2.3 6R 決定ツリー

そのアプリは今後も必要か?使用頻度・ビジネス価値で判断
No → 🗑️ Retire
Yes → 次へ
同等の SaaS が存在するか?Email / CRM / HR / Help Desk 等
Yes → 💳 Repurchase
No → 次へ
クラウド移行可能か?(規制・依存・ライセンス)
No → 📦 Retain(Hybrid)
Yes → 次へ
長期戦略アプリで投資 ROI が出るか?
Yes → 🏗️ Refactor (microservices)
中 → 🛠️ Replatform (Managed)
No → 🚚 Rehost (Lift)

2.4 ハイブリッド戦略 — 段階的アプローチ

多くの企業は 「短期 Rehost で塩漬けを脱出 → 後で Replatform/Refactor」のハイブリッドを採用します。これは "Move first, optimize later" 戦略と呼ばれます。

❌ アンチパターン: Refactor 全力で長期化

200 VM 全てを最初から K8s 化しようとし、2 年経っても本番移行できず。データセンター契約延長コストが膨らみ ROI マイナス。

✅ ベストプラクティス: Replatform で短期 ROI → 後で Refactor

まず 6 ヶ月で Rehost + DB のみ Replatform。データセンター契約終了後に、戦略的アプリのみ Refactor。中間結果として 50% コスト削減を確保。

🚨 事故ケース: 6R 判断ミス — Refactor 全力で ROI 出ず予算オーバー
状況金融 B 社、レガシー Java EE アプリ 80 個を Spring Boot + GKE に Refactor 全力。当初予算 2 億円、期間 12 ヶ月
原因① Assess 時に「クラウドネイティブ化=コスト削減」と短絡判断、② 80 個中 30 個は週1回しか使われない社内アプリで投資価値なし、③ Refactor 工数の見積もり甘さ(実態の 3 倍)
影響1 年で予算消化 90%、本番移行 25%。経営判断で残り 60 個は Rehost に切り替え。総コスト 3.5 億円、ROI 5 年→8 年に後退
復旧残ワークロードは M4VM で 3 ヶ月で全 Rehost 完了、データセンター解約 6 ヶ月遅延
再発防止6R 判定を ビジネス価値 × 工数 × ROI 期間の 3 軸マトリクスで実施。Refactor は「戦略アプリ Top 20%」のみに限定するルール化
🚨 事故ケース: Retain 予定の依存システムを見落として本番断
状況小売 C 社、店舗 POS 連携 API のみ Rehost。社内認証 LDAP は「Retain」とした
原因LDAP の到達経路として VPN を想定していたが、VPN MTU が小さく POS の長い Kerberos チケット(>1500B)がフラグメントで落ちる
影響POS の認証タイムアウト多発、レジ業務 3 時間停止、店舗 200 店舗で売上ロス
復旧Cloud Router の MTU 1460 → 1380 へ調整、TCP MSS Clamping 適用
再発防止Retain システムの通信フローは Migration Center で必ず収集、パケットサイズ・帯域・依存方向を Wave 計画に明記

📝 試験での出題パターン

3Migration Center 完全解剖

Migration Center(旧 StratoZone / CloudPhysics 系の後継)は、Assess Phase のオールインワン基盤です。Discovery(資産発見)、Assessment(評価)、TCO(コスト見積り)、Recommendation(推奨)、Migration Plan(計画)を 1 つのコンソールで提供します。

"Migration Center offers cost estimation, asset discovery, infrastructure assessment, migration planning and execution. Automated scanning of servers, SQL Server, MySQL, and PostgreSQL databases."
Migration Center overview

3.1 Migration Center の構成

Source 環境 VMware vSphere Hyper-V / 物理 AWS EC2 / RDS Azure VM / SQL RVTools CSV / 手動 mCollector VM 内 Agent / OVA - 性能指標 (CPU/Mem/IO) - インストール ソフト - ネットワーク フロー - DB 自動検出 Migration Center (GCP) ① Discovery — 資産インベントリ ② Assessment — 性能/依存/Fit ③ TCO — On-prem vs GCP コスト ④ Recommendation — GCE/CloudSQL等 ⑤ Migration Plan — Wave / 順序付け ⑥ Execute — M4VM/DMS/M2C 連携
図2: Migration Center — Discovery から Migration Plan まで

3.2 mCollector — オンプレ Discovery の中核

形態
VMware OVA / Linux VM / Docker / Windows MSI で配布
収集対象
CPU・メモリ・ディスク IO・ネットワーク IO(30 日間推奨)、インストールソフト一覧、ネットワークフロー、DB 自動検出
対応 Source
VMware vSphere(vCenter API 経由)、Hyper-V、物理 Linux/Windows、AWS(IAM Role)、Azure(Service Principal)
権限
vSphere: System.View, VirtualMachine.Provisioning.ReadOnly 程度の読取専用ロールが必要
収集期間
性能ピーク把握のため 最低 30 日、推奨 90 日。短期間だと夜間バッチや月次ジョブが拾えない
料金
Migration Center 自体は 無料(Assess Phase 全機能)。実行先 GCP サービスは通常課金

3.3 機能フロー詳細

  1. Discovery: mCollector を Source 環境にインストール → 30〜90 日間データ収集 → Migration Center に自動アップロード
  2. Assessment: Group 単位(DC / アプリ単位)に資産を集約 → 依存マップ自動生成 → "Fit for migration" スコア算出
  3. TCO Report: On-prem 現行コスト(電気・ラック・ライセンス含む)vs GCP 推奨先のコストを比較。3 年間の累積 TCO グラフ出力
  4. Recommendation: VM ごとに「GCE → e2-standard-4」「DB → Cloud SQL HA」等を自動推奨。Sole-tenant や Spot 候補も提案
  5. Migration Plan: Wave に依存関係を含めて自動配置。出力は CSV / API。Pivotal Tracker / Jira 連携も可
📂 mCollector セットアップ例(gcloud)
# Migration Center を有効化
gcloud services enable migrationcenter.googleapis.com

# Source を作成(VMware の例)
gcloud migration-center sources create vmware-prod \
  --location=us-central1 \
  --display-name="VMware Production vCenter"

# mCollector OVA を vSphere にデプロイ
# (vCenter UI から OVF Template として import)
# 接続情報は Migration Center が払い出すワンタイムトークンを使用

# 収集結果を Group に集約
gcloud migration-center groups create prod-tier1 \
  --location=us-central1 \
  --description="Tier-1 production apps"

# Assessment 実行
gcloud migration-center reports create q4-assessment \
  --location=us-central1 \
  --group=prod-tier1 \
  --preference-set=PERFORMANCE_OPTIMIZED
🔑 試験頻出 — Migration Center の位置付け
  • 「数百〜数千 VM の現状把握とコスト見積もりが必要」→ Migration Center(Calculator や Recommender だけでは不十分)
  • 「依存マップを自動生成したい」→ mCollector のネットワークフロー収集
  • 「AWS から GCP への TCO 比較」→ Migration Center は AWS も対応(Multi-cloud Discovery)
🚨 事故ケース: Discovery 範囲漏れで対象システム特定不能
状況大手 SI が顧客 200 VM の Discovery を実施。mCollector を vCenter A にのみ接続
原因顧客環境には DR サイト用の vCenter B が別途存在し、Recovery テスト用の独立 vSphere ファームが Discovery 対象外。さらに物理 SQL Server クラスタも未接続
影響移行計画書から重要 DB 5 台が抜け、本番移行 2 ヶ月前に発覚。Wave 計画 4 回練り直し、納期 3 ヶ月遅延
復旧追加 mCollector を投入、CMDB と突き合わせて全資産を再棚卸し
再発防止Discovery 開始前に 顧客 CMDB / ライセンス台帳 / vCenter 一覧を突き合わせるチェックリスト化。Discovery 完了後に「未収集 IP レンジ」レポートを必ず確認
🚨 事故ケース: mCollector の権限不足でアセスメント失敗
状況vSphere に mCollector OVA をデプロイし収集開始。3 週間データが集まらず
原因vCenter のサービスアカウントに Performance.ModifyIntervals や Guest OS 統計取得権限が欠落。さらに ESXi ホストへの SSH 経路が FW で遮断され、ディスク統計のみ取得失敗
影響性能データが CPU 平均値のみで IOPS 不明。GCP 推奨サイズが過小評価され、本番後に IOPS 飽和でアプリ遅延
復旧権限を再付与、追加 2 週間収集、Hyperdisk Extreme へ変更
再発防止OVA 配布時のサービスアカウントは Read-Only + Performance 統計のロールを公式手順通り付与。事前接続テストを Plan Phase のチェックリスト化
🚨 事故ケース: Recommendation を鵜呑みにして Spanner に変更
状況Cloud SQL 推奨が出ていた中規模 OLTP を、アーキテクトが「グローバル展開予定」と判断し独断で Spanner に変更
原因① 実態は単一リージョン要件で Spanner オーバースペック、② Spanner の課金単位が PU/ノードである理解不足、③ Recommendation が「PERFORMANCE_OPTIMIZED」プリセットだった
影響月額 $8,000 → $32,000 に膨張、半年後の予算レビューで発覚
復旧DMS で再度 Cloud SQL に移行、Spanner 解約
再発防止Recommendation 変更は FinOps レビュー必須、Preference Set を「COST_OPTIMIZED」「PERFORMANCE_OPTIMIZED」両方で出力し比較

📝 試験での出題パターン

4Migrate to Virtual Machines (M4VM)

Migrate to Virtual Machines(M4VM、旧 Migrate for Compute Engine / M4CE)は、VMware / AWS / Azure / 物理 Linux/Windows の VM を Compute Engine へ移行するためのマネージドサービスです。Stream-based migrationにより、最小ダウンタイムでカットオーバーが可能です。

4.1 M4VM の移行フロー

Source VM VMware / AWS / Azure Production VM M4VM Backend (VMware Appliance or Cloud Native) 継続レプリケーション (差分のみ) Replication Storage (GCP 側 PD) Initial Sync (full disk) Delta CDC (継続) Test Clone (検証) Cutover Compute Engine (GCP) Test Clone Instance(検証用 / 本番に影響なし) Cutover Instance(本番昇格) PD / OS Adaptation / Driver Install virtio drivers / cloud-init / SSH/RDP enable
図3: M4VM — Stream-based Migration による継続レプリケーション

4.2 移行ステップ詳細

  1. Source 接続: VMware は vCenter API、AWS は IAM Role + Snapshot、Azure は Service Principal + Disk Export を使用
  2. Replication 開始: 初回フルディスクコピー(数時間〜数日、ディスクサイズと帯域による)→ 以降は CBT (Changed Block Tracking) 等で差分のみ転送
  3. Test Clone: 本番に影響を与えずに テストクローンを起動。アプリ動作確認、TCO 検証、性能ベンチマーク
  4. Cutover Window: Source を停止 → 最終差分同期 → GCE インスタンスとして起動 → DNS / Load Balancer 切替
  5. Cutover 後: Replication 停止、Source 削除、運用引き継ぎ

4.3 ダウンタイム実績

シナリオInitial Sync差分同期Cutover ダウンタイム備考
100GB Linux VM (専用線 1Gbps)15 分1 分5–15 分標準的なケース
1TB Windows DB VM3 時間5 分15–30 分シャットダウンに時間
5TB AWS EC2 → GCE12 時間15 分30–60 分CCI/VPN 帯域次第

4.4 ロールバック設計

💡 ベストプラクティス — Cutover 後 7 日間は Source を残す Cutover で Source を即削除すると、問題発生時にロールバック不能です。最低 7 日間は Source VM を停止状態で保持し、問題なしを確認してから Decommission します。M4VM Replication は Cutover 後も任意停止可能。
🚨 事故ケース: カットオーバー後のロールバック手順不在
状況EC2 → GCE への M4VM 移行 30 台。Cutover 直後に GCE 側で Java アプリが OutOfMemory 多発
原因① GCE 推奨サイズが Source より小さく出ていたが「コスト最適化」として採用、② Source を Cutover 直後に削除済みでロールバック不能、③ JVM ヒープ調整も未実施
影響アプリ 4 時間ダウン、緊急で n2-standard-8 へ再起動、ピーク帯にユーザ影響
復旧マシンタイプ変更で復旧(30 分)。事前ロードテストを怠ったことが原因
再発防止① Cutover 前に Test Clone でロードテスト必須、② Source は 最低 7 日間は停止状態で保持、③ ロールバック手順を Runbook 化
🚨 事故ケース: IP アドレス変更でクライアント側設定漏れ → サービス停止
状況API Gateway VM を M4VM で移行。IP が 10.0.1.10 → 10.20.5.7 に変更
原因クライアント側の 200 個の Cron / バッチで IP 直書きが残存、DNS 更新だけでは追いつかず
影響夜間バッチ全滅、翌朝に売上集計が出ず経営影響
復旧旧 IP を Alias IP として GCE 側に追加、24 時間で全クライアント側更新
再発防止Cutover 計画に 「IP 直書きクライアント特定」を必ず含める。Migration Center のネットワークフロー収集で発見可能
🚨 事故ケース: Live Migration 中の負荷増で性能劣化
状況業務時間中に M4VM Replication 開始、Source の CPU 100% 張り付き
原因初回フル同期で大量ディスク読込が発生、VMware 側で I/O 競合、CBT の追跡コスト
影響本番アプリのレスポンス遅延、SLO 違反
復旧Replication を一時停止、夜間帯に再開、QoS で帯域制限
再発防止Initial Sync は 夜間や週末に開始、M4VM の throttling 設定を活用

📝 試験での出題パターン

5Migrate to Containers (M2C)

Migrate to Containers(M2C、旧 Migrate for Anthos)は、レガシー VM ワークロードを自動的にコンテナイメージへ変換し、GKE / Cloud Run / Anthos で動作させるためのツールです。アプリ書き換えなしで Refactor 的効果を得る、いわば "Replatform の自動化" です。

5.1 対応ワークロード

カテゴリ対応変換出力備考
Linux WAR/EAR (Tomcat / JBoss)完全対応Tomcat ベースイメージ + WARapp/lib 自動抽出
Spring Boot (Linux)完全対応OpenJDK ベース + jarconfig 自動マウント
Apache + PHP (LAMP)対応php-apache 公式イメージ静的アセット要確認
Windows IIS (.NET Framework)条件付き対応Windows Server Core + IISWindows ノードプール必須
WebSphere Liberty対応Liberty ベース + EARliberty.json 自動生成
Stateful DB / Kernel module 依存非対応M4VM 推奨

5.2 変換プロセス

  1. Discovery (m2c CLI): VM やソースツリーを解析し、フレームワーク・依存ライブラリ・設定ファイルを自動検出
  2. Plan 生成: 検出結果から plan.yaml(ベースイメージ・コピーするパス・環境変数)を出力
  3. Plan のレビュー&編集: 静的ファイルパスや認証情報などを人手で調整
  4. Build & Push: Plan に従い Dockerfile / Skaffold / K8s YAML を生成、Container Registry / Artifact Registry へ push
  5. Deploy: 生成された YAML で GKE / Cloud Run / Anthos に展開
📂 M2C CLI 実行例
# Discovery
m2c analyze --source ./my-tomcat-app --output ./out

# Plan 確認(Tomcat 自動検出、WAR を /usr/local/tomcat/webapps へ)
cat ./out/plan.yaml
# Migration Plan を編集(環境変数、Secrets、Resource 等)

# 変換実行(Dockerfile + K8s manifests を生成)
m2c migrate --plan ./out/plan.yaml --output ./k8s

# Build & Deploy
docker build -t gcr.io/proj/my-tomcat-app:v1 ./k8s
docker push gcr.io/proj/my-tomcat-app:v1
kubectl apply -f ./k8s/deployment.yaml
🚨 事故ケース: 静的ファイル / 設定ファイル パスを含めず本番起動失敗
状況Tomcat レガシーアプリを M2C で GKE へ。ローカル動作 OK、本番で 500 エラー多発
原因アプリが /etc/myapp/config.xml を参照していたが Plan に含まれず欠落。さらに /var/log の永続化忘れで再起動毎にログ消失
影響本番リリース直後にエラー、3 時間ダウン
復旧config.xml を ConfigMap 化、PV を /var/log にマウント、再ビルド
再発防止Plan レビューで 「アプリが参照する全パスを洗い出す」 ステップを必須化。Test Clone での起動確認も必須
🚨 事故ケース: メモリ要求過大で OOMKilled
状況M2C 変換した Spring Boot を GKE で 50 Pod 並列起動、3 日後から OOMKilled 連発
原因① JVM の -Xmx 未設定でコンテナ Limit 認識せず Host 全メモリを要求、② M2C Plan の resources.limits も VM ベースの値(16Gi)になっていた
影響夜間バッチ全滅、ノード Eviction 連鎖
復旧-XX:+UseContainerSupport -XX:MaxRAMPercentage=75 追加、Limit 4Gi に縮小
再発防止JVM コンテナは必ず UseContainerSupport 設定、M2C 出力の resources は 右サイジング前提でレビュー
🚨 事故ケース: ステートフルアプリを M2C で変換 → データロス
状況ローカルディスクに勤怠データを溜める社内アプリを M2C → Cloud Run へ
原因Cloud Run は揮発ストレージ前提。アプリの設計が「VM のローカル FS 永続」想定。Pod 再起動でデータ消失
影響1 週間分の勤怠データ消失、紙ベース再入力
復旧Cloud SQL + GCS に置換、3 ヶ月遅延
再発防止M2C 前に 「アプリのステートフル性」判定必須。ステートフルは M4VM か Refactor を選択

📝 試験での出題パターン

6Database Migration Service 完全解剖

Database Migration Service(DMS)は 同種・異種 DB のマネージド移行を提供します。MySQL/PG/SQL Server/Oracle を Source とし、Cloud SQL または AlloyDB for PostgreSQL を Destination とします。Continuous Migration(CDC ベース最小ダウンタイム)One-time Migration(スナップショット)の 2 モードを提供します。

"Continuous Migration: A continuous flow of changes from your source to your destination that follows an initial full dump and load." / "Database Migration Service doesn't support a dual-write scenario."
Database Migration Service overview

6.1 対応マトリクス

SourceCloud SQL MySQLCloud SQL PGCloud SQL SQL ServerAlloyDB備考
MySQL 5.6/5.7/8.0✅ Continuous/One-timebinlog 必須
PostgreSQL 9.4–17✅ Continuous/One-timelogical replication 必須
SQL Server 2012–2022✅ Continuous/One-timebackup file based
Oracle 11g–21c✅ 異種 (heterogeneous)✅ 異種LogMiner / Datapump
AWS RDS / AuroraRDS は public IP / VPN 経由

6.2 Continuous Migration アーキテクチャ

Source DB (MySQL / PG / SQL / Oracle) Production DB Binary Log / WAL Replication Slot ① Initial Dump ② CDC Stream DMS Migration Job Connection Profile Full Dump + CDC Apply Lag Monitoring Conversion (異種 DB) ③ Apply ④ Promote Destination Cloud SQL / AlloyDB(Read Replica として動作) Promote → Primary Cutover 時に Primary 昇格 (One-way: ロールバック不可)
図4: DMS Continuous Migration — Initial Dump + CDC Apply + Promote

6.3 Source DB の前提条件(重要・試験頻出)

Source必須設定権限注意点
MySQLlog_bin=ON, binlog_format=ROW, binlog_row_image=FULL, gtid_mode=ON(推奨), expire_logs_days >= 7REPLICATION SLAVE, REPLICATION CLIENT, SELECTbinlog 保持期間不足は致命的
PostgreSQLwal_level=logical, max_replication_slots >= 10, max_wal_senders >= 10, pglogical 拡張REPLICATION ロール, スーパーユーザー一部権限Replication Slot がディスクを圧迫
SQL ServerFULL Recovery model, 定期 backup, SQL Authsysadminbackup ファイル経由でレプリ
OracleARCHIVELOG mode, supplemental log, LogMiner 利用許可FLASHBACK ANY TABLE異種移行(→ PG/AlloyDB)

6.4 移行ワークフロー

  1. Source 設定: binlog/WAL/Archive log 有効化、レプリ用ユーザー作成
  2. Connectivity 確立: VPN / Interconnect / Public IP + IP Allowlist / Cloud SQL Auth Proxy / Reverse-SSH Tunnel のいずれか
  3. Connection Profile 作成: Source / Destination の接続情報を DMS に登録
  4. Migration Job 作成: One-time or Continuous を選択。Continuous なら Initial Dump → CDC Apply 開始
  5. Lag 監視: replication_lag メトリクスを Cloud Monitoring で監視。0 秒前後を維持
  6. Cutover: Source の書込停止 → Lag = 0 確認 → Promote(Destination を Primary 化、Replication 終了)
  7. 切替後: アプリの接続先変更、Source は読み取り専用化して 7 日間保持

6.5 DMS 制限事項(必須暗記)

📋 公式制限 — Dual-write 不可 DMS は One-way レプリケーションのみ。Source → Destination の片方向です。Promote 後は逆向き同期できないため、ロールバックは「アプリを Source に再接続」しか手段がありません。Source は最低 7 日間保持してください。
🚨 事故ケース: Binary Log 保持期間不足で Replication 中断
状況MySQL → Cloud SQL DMS 移行、3 日後に Replication ステータスが ERROR に
原因Source MySQL の expire_logs_days=1(デフォルト)。DMS の Initial Dump が 30 時間かかり、CDC 開始時には必要な binlog が削除済み
影響Initial Dump 30 時間が無駄、再実行必要
復旧expire_logs_days=7 に変更、再 Dump 実行
再発防止移行前チェックリストに「binlog 保持期間 ≥ Initial Dump 想定時間 × 3」を明記
🚨 事故ケース: PostgreSQL Replication Slot 枯渇で本番停止
状況PG → AlloyDB DMS 移行中、Source DB のディスクが 95% に到達、本番アプリが書き込み不能
原因DMS が作成した Replication Slot で WAL が消費されず溜まり続けた(DMS ジョブが一時停止しスロット未消費)。pg_wal ディレクトリ肥大
影響本番 DB 書込不能 30 分、緊急対応
復旧停止中の Replication Slot を pg_drop_replication_slot で削除、WAL 解放、DMS ジョブ再作成
再発防止Replication Slot の active ステータス監視を Cloud Monitoring に追加。DMS ジョブの停止=即対応の Alert 化
🚨 事故ケース: Foreign Key 制約のある順序で Initial Load 失敗
状況3000 テーブル DB を DMS で移行、Initial Dump 中に FK 違反エラー多発
原因並列 Dump で子テーブルが親より先にロード、FK が即時評価される構成(DMS は通常 FK 一時無効化するが Custom 制約は対応外)
影響Dump 失敗、3 日ロス
復旧FK を一時 DISABLE、Dump 完了後に再 ENABLE
再発防止Cutover Runbook に 「FK / Trigger / Sequence の事前無効化と事後復元」を明記
🚨 事故ケース: Promote 後のロールバック手順不在で再導入不能
状況Promote 後にアプリ側で性能問題発覚、Source への戻しを試行
原因Promote で Replication 切断後、Source 側で 4 時間分の Cutover Window データが Destination のみに存在。逆同期手段なし
影響4 時間分の取引データを CSV エクスポートして Source へ手動投入、6 時間のサービス停止
復旧CSV インポート+整合性チェック後に再起動
再発防止Cutover Window で書込を完全停止する、もしくは Datastream で Destination → Source 逆同期を準備。Cutover 前にロードテスト必須
🚨 事故ケース: TLS/SSL 強制設定不一致で接続不能
状況本番 PG が ssl=on, require_secure_transport=on。DMS Connection Profile に SSL 証明書未登録
原因Connection Profile 作成時に CA 証明書をスキップ、自動接続テストはローカル成功で本番 FW で TLS 必須化
影響Migration Job 開始 1 分で接続失敗、トラブルシュート 4 時間
復旧Source の CA 証明書 + Client 証明書を Connection Profile に登録
再発防止Connectivity 検証を Plan Phase に独立タスクとして実施。TLS/IP/Port を事前に Migration Center または手動で疎通確認

6.6 DB 移行手段の選定ツリー

移行タイプ同種か異種か?
同種 (MySQL→MySQL 等) → DMS Continuous
異種 (Oracle→PG) → 次へ
ダウンタイム許容
数分以内 → DMS Continuous (Oracle→PG)
数時間 → DMS One-time
なし → Datastream + アプリ書換
BigQuery への CDC が必要か?
Yes → Datastream
No → DMS

📝 試験での出題パターン

7Datastream

Datastream は サーバレス CDC レプリケーションサービスです。Oracle / MySQL / PostgreSQL / SQL Server / MongoDB / Salesforce / Spanner を Source とし、BigQuery / Cloud Storage / Apache Iceberg に低遅延で同期します。DMS が「移行用」なのに対し、Datastream は 「継続的 CDC + 分析基盤統合」用途です。

"Datastream is a serverless and easy-to-use change data capture (CDC) and replication service that lets you synchronize data reliably, and with minimal latency."
Datastream overview

7.1 Datastream vs DMS

項目DMSDatastream
用途DB 移行・Cutover継続 CDC・分析統合
DestinationCloud SQL / AlloyDBBigQuery / GCS / Iceberg
ライフサイクルPromote で終了無期限稼働
Schema Drift限定対応自動追随
料金単位無料 (Source/Dest 別途)処理 GB ベース
典型ユースOracle → AlloyDB 移行OLTP → BigQuery リアルタイム分析

7.2 Datastream の構成要素

Connection Profile
Source / Destination の接続情報・認証
Stream
CDC と Backfill を組み合わせた転送ジョブ
Private Connectivity
VPC Peering / Reverse Proxy / IP Allowlist で Source へ接続
Backfill
既存データを最初に Snapshot コピー
CDC Stream
binlog / WAL / LogMiner を継続読取
🚨 事故ケース: Source DB の Schema Drift を検知せず Destination で型エラー
状況Source MySQL の VARCHAR(20) → VARCHAR(200) 変更後、Datastream の BigQuery 連携でエラー多発
原因Datastream は Schema Drift を自動追随するが、BigQuery 側のテーブルが手動作成の固定スキーマだった
影響BigQuery へのストリーミング失敗、6 時間データ欠落
復旧BigQuery テーブルを Datastream 管理に切替、リトライ
再発防止BigQuery 連携先は Datastream Auto-create テーブルを使用、Source DDL 変更は Slack 通知ワークフロー化
🚨 事故ケース: BigQuery Streaming 重複でデータ品質劣化
状況Datastream → BigQuery で重複行が 2–3% 発生、集計値が +5% 過大
原因BigQuery は at-least-once 配信のため、ネットワーク再試行で重複可能。Source DB の Primary Key を Datastream が認識できない構成(複合キー)
影響分析レポートの数値ズレ、経営判断に影響
復旧BigQuery 側で MAX(_metadata_timestamp) による DEDUP ビュー作成、Source に PK 追加
再発防止Source DB に 明示的 PK 必須化、BigQuery テーブルは MERGE ベース upsert を Datastream に任せる設定
🚨 事故ケース: Replication Lag 監視なしで遅延 24h 放置
状況Oracle → BigQuery Datastream、月次レビューで「BI ダッシュボードが昨日のまま」発覚
原因Source Oracle のアーカイブ生成量が想定の 3 倍、Stream の処理レート上限超過。Lag メトリクス未監視
影響24 時間遅延の分析データで意思決定誤り
復旧Datastream Stream を停止・再作成、並列度引上げ
再発防止datastream.googleapis.com/stream/cdc_latency を Cloud Monitoring で監視、5 分超過で Alert

📝 試験での出題パターン

8Storage Transfer Service (STS)

Storage Transfer Service(STS)は オンライン大容量データ転送のためのマネージドサービスです。S3 / Azure Blob / HTTP/HTTPS / HDFS / オンプレ FS から GCS への転送に対応。スケジュール・帯域制御・差分転送・整合性検証を提供します。

"Storage Transfer Service does not provide an SLA, including for transfer performance or latency. Optimized for transfers exceeding 1 TiB."
Storage Transfer Service overview

8.1 転送方式の比較

方式Source動作場所帯域用途
STS AgentlessS3 / Azure Blob / GCS / HTTPGoogle 側~10 Gbps+クラウド間転送
STS Agent-basedオンプレ POSIX FS / HDFS顧客側 Agent帯域可変オンプレ → GCS
gsutil rsync / gcloud storage cp任意クライアントクライアント次第小規模 ad-hoc
Transfer Applianceオンプレ大量物理筐体SneakerNet帯域不足 / >10TB

8.2 主要機能

🚨 事故ケース: 大容量転送で Source 帯域不足 → 業務影響
状況オンプレ 80TB を STS Agent で 1Gbps 専用線経由転送、業務 VOIP に遅延発生
原因STS が専用線帯域を 100% 使用、QoS なし。本来は 80TB / 1Gbps = 7.4 日かかるべきだが業務時間中も走らせた
影響業務時間中の VOIP 通話品質低下、顧客クレーム
復旧Agent の --bandwidth-limit 200MB/s 制限、夜間帯のみフル帯域
再発防止転送開始前に 業務影響シミュレーション、Network 部門承認必須
🚨 事故ケース: 認証情報の取り扱いミスで失敗
状況S3 → GCS の STS Job が ACCESS_DENIED で失敗
原因AWS IAM ロールに s3:GetObject のみで s3:ListBucket が欠落、さらに KMS 暗号化 Bucket で kms:Decrypt も不足
影響夜間 Job 全失敗、翌朝の BI 集計遅延
復旧IAM ポリシー追加(Bucket / KMS 双方)
再発防止STS Job 作成時に DryRun で疎通確認、IAM 設計テンプレートを文書化
🚨 事故ケース: 同名オブジェクト上書きで重要データロス
状況S3 から GCS への日次 STS で前日データが上書き消滅
原因STS Job の --overwrite-when=different 設定だが、S3 側で同じパスに別データが書き込まれた。GCS Versioning も無効
影響過去 30 日分の月次レポートが復元不能
復旧不可。手動で再生成(2 週間工数)
再発防止GCS Bucket の Object Versioning 有効化、Lifecycle で 90 日保管。重要データは Bucket Lock 適用
🚨 事故ケース: Cross-region 転送 Egress 課金が想定外に高額
状況S3 (us-east-1) → GCS (asia-northeast1) で月 100TB 転送、月額 $9,000 → 想定の 5 倍
原因AWS 側 Egress 課金 ($0.09/GB) を想定漏れ、さらに STS のリトライで重複転送発生
影響3 ヶ月で $27,000 の想定外コスト
復旧AWS Direct Connect or Cross-Cloud Interconnect で Egress 単価削減、Job を増分のみに最適化
再発防止Source 側の Egress 課金を必ず見積、定常転送は CCI 経由化

📝 試験での出題パターン

9Transfer Appliance (TA40 / TA300)

Transfer Appliance は 物理筐体(ハードディスクアレイ)を Google から発送してもらい、オンプレで直接データを書き込んだ後 Google に返送するオフライン転送サービスです。ネットワーク帯域が不足する大容量(>10TB)転送向け。AES-256 暗号化と物理セキュリティで安全に転送できます。

"With typical 100 Mbps bandwidth, transferring 300TB normally takes ~9 months. Transfer Appliance reduces this to under 25 days for data capture, plus approximately 10 business days for Cloud Storage upload."
Transfer Appliance overview

9.1 モデル比較

モデル使用可能容量形状消費電力用途
TA40~40 TB1U / 持ち運び可小〜中規模、ブランチオフィス
TA300~300 TB4U ラックマウント or 自立大規模、メディア/科学研究

9.2 オーダー〜返却フロー

オーダー(コンソール) 配送(1–2 週間) データ書込(NFS/SMB/SCP) 返送(暗号化済) GCS Upload(10 営業日) 完了 Transfer Appliance — End-to-End フロー 合計 4–6 週間(地域・容量により変動)
図5: Transfer Appliance — 注文・配送・データ書込・返送・アップロードまでの全工程

9.3 暗号化とセキュリティ

9.4 利用判断基準

転送データ量
< 10TB → STS / gsutil
10–60TB → 状況次第
> 60TB → 次へ
利用可能帯域と転送猶予期間
10Gbps + 1ヶ月余裕 → STS
1Gbps 未満 or 急ぎ → Transfer Appliance
容量で TA40 or TA300 選択
~40TB → TA40 (持ち運び)
40–300TB → TA300 (ラック)
🚨 事故ケース: 注文〜納品〜返却で 4–6 週、納期に合わずプロジェクト遅延
状況研究機関が 200TB のゲノムデータを 4 週間以内に GCS へ。Transfer Appliance を申込
原因① 国際輸送(米国本社経由)で予定 2 週間が 4 週間に、② 通関書類不備で +1 週間、③ 計算ミスで 1 台では足りず追加発注
影響プロジェクト遅延 6 週間、論文締切ロス
復旧並行で STS Agent も走らせ部分的に到着分から解析開始
再発防止申込前に 納期から逆算したリードタイム計画。重要プロジェクトは 2 台同時申込で冗長化
🚨 事故ケース: 物理輸送中の破損で再配送
状況TA300 返送中、運送業者ハブで落下事故。筐体凹みと通電不可
原因梱包箱の振動緩衝材不足、輸送業者の取扱注意ラベル無視
影響新規 TA300 再発送に 3 週間、再書込でさらに 1 週間、合計 1 ヶ月遅延
復旧データは AES-256 暗号化で保護、再書込でリカバリ可能
再発防止正規梱包資材+専門業者での輸送、輸送保険加入。重要データは Online 並行も検討
🚨 事故ケース: 暗号化キー管理ミスで読み出し不能
状況TA300 が Google に到着、アップロード時に「鍵が無効」エラー
原因顧客側で CMEK Key を削除(30 日経過で完全削除)、Backup なし
影響200TB のデータ完全ロス、再書込のため Appliance 再申込
復旧不可。オンプレ原本から再書込(4 週間)
再発防止CMEK Key は Versioning + Schedule Deletion 30 日必須、Transfer 中は削除禁止ポリシー、IAM で cloudkms.cryptoKeys.destroy 制限
🚨 事故ケース: 同じデータを Online でも開始してダブルカウント
状況TA300 と STS Agent の並行運用で同一ファイルを 2 回 GCS Bucket に書込
原因STS が一部完了する前に TA を申込、prefix 分離せず両者が同 Bucket に書込
影響BigQuery 集計でレコード重複、月次レポート誤り
復旧GCS Object Versioning で過去版を確認、TA 分の Object を削除
再発防止Transfer Source ごとに Bucket prefix を分離、転送ジョブ管理表でステータス一元化

📝 試験での出題パターン

10Anthos / GKE Enterprise 完全解剖

Anthos(現名称 GKE Enterprise)は、マルチクラウド・ハイブリッド環境の Kubernetes クラスタを統一管理するプラットフォームです。GKE on GCP / Anthos on VMware / Anthos on Bare Metal / Anthos on AWS / Anthos on Azure を Fleet として束ね、ポリシー・セキュリティ・モニタリング・サービスメッシュを一元化します。

10.1 Anthos スタック構成

Google Cloud Console — Fleet 管理 / IAM / Monitoring Fleet (Project) 複数 Cluster を束ねる Namespace, Identity 統合 Membership 単位課金 Config Sync (GitOps) Git Repo → 全 Cluster Policy Controller OPA Gatekeeper 互換 Cloud Service Mesh mTLS / Traffic Mgmt Managed Istio SLO Dashboards Connect Gateway kubectl with GCP IAM VPN/Interconnect 不要 Reverse Tunnel GKE (GCP)NativeAutopilot/Standard Anthos on VMwarevSphere 7+F5/MetalLB Anthos on Bare MetalRHEL / UbuntuHypervisor 不要 Anthos on AWSEKS 連携不要EC2 + Anthos Anthos on AzureAKS 連携不要VMSS + Anthos ▲ 全クラスタを単一 Fleet で統治 ▲ Connect Agent でクラスタを Fleet に登録 → Console で全件可視化
図6: Anthos / GKE Enterprise — Fleet を中心としたマルチクラスタ統治

10.2 主要コンポーネント詳細

機能概要提供形態料金
Fleet複数クラスタの論理グループ。Project 単位 1 Fleet。Namespace / Identity / Service Mesh の境界GCP APIMembership (cluster) ベース
Connect Agentクラスタから Google Cloud への Reverse Tunnel。Outbound only で FW 開放不要クラスタ内 DaemonSet無料(Membership 課金内)
Connect Gatewaykubectl を GCP IAM で実行。VPN/Bastion 不要GCP APIAPI 呼出
Config SyncGit Repo → Cluster の宣言的同期。RootSync / RepoSync の階層クラスタ OperatorMembership 内
Policy ControllerOPA Gatekeeper ベースの Admission 制御クラスタ OperatorMembership 内
Cloud Service MeshManaged Istio。mTLS、Traffic Splitting、SLO ダッシュボードManaged CPMembership 内
Multi-cluster IngressGlobal LB から複数 Cluster に Anycast 振分GCP APILB 課金

10.3 IAM 統合 — Workload Identity

Anthos の Fleet では Workload Identity Federation により、各クラスタの K8s ServiceAccount を GCP IAM にマッピングできます。AWS / Azure / オンプレで動くクラスタでも、Pod が GCP API を Service Account Key なしで呼出可能になります(セキュリティ・運用負荷ともに改善)。

🚨 事故ケース: Fleet 登録漏れで Multi-cluster Ingress 動作せず
状況東京 GKE + ロンドン GKE で Multi-cluster Ingress 設定、ロンドン側のみトラフィックが届かず
原因ロンドンクラスタの Fleet Membership 登録が漏れていた。gcloud container fleet memberships register 未実行
影響欧州ユーザのレスポンスが東京 RTT 250ms に劣化、ピーク時 8 時間継続
復旧Fleet 登録、MCI 再設定、即時解消
再発防止クラスタ作成 Terraform に Fleet 登録を必須ステップとして含める、Provisioner で連動
🚨 事故ケース: Anthos Config Management の Sync エラーで全クラスタ設定崩壊
状況Config Sync で 50 クラスタに NetworkPolicy 配信、誤った YAML を Git push、5 分で全クラスタが死
原因default deny-all ポリシーを kube-system にも適用、kubelet → API Server 通信遮断。レビュー無しで main ブランチへ直 push
影響全 50 クラスタの Pod 起動停止、業務全停止 2 時間
復旧Git revert、Config Sync の再同期(5 分)
再発防止PR レビュー必須、② 段階的展開(Canary Cluster で先行 24 時間)、③ Policy Controller の dry-run、④ kube-system 等の Critical Namespace は NetworkPolicy 例外化
🚨 事故ケース: オンプレ Anthos Control Plane アップグレード失敗
状況Anthos on VMware の Admin Cluster を 1.16 → 1.17 にアップグレード中、API Server 停止
原因① アップグレード前のスナップショット不取得、② vSphere リソース不足(Memory 不足)、③ 事前互換性チェック (bmctl preflight) 省略
影響User Cluster 管理不能 6 時間、ワークロード自体は稼働継続
復旧vSphere メモリ追加、ロールバック(事前バックアップから)
再発防止アップグレード前に etcd スナップショット必須、Preflight Check、メンテナンスウィンドウ確保
🚨 事故ケース: Service Mesh の mTLS 設定ミスで通信不能
状況Cloud Service Mesh で STRICT mTLS 適用、Mesh 外サービスからの呼出が即遮断
原因レガシー外部システムから Mesh 内 Service への通信が考慮漏れ。PERMISSIVESTRICT の段階的移行を省略
影響外部パートナー API が全失敗、SLA 違反
復旧該当 Namespace のみ PERMISSIVE に戻し
再発防止mTLS は必ず PERMISSIVE → 監視 → STRICT の段階移行。外部接続点を Identity-Aware Proxy / API Gateway で明示
🚨 事故ケース: Connect Gateway 接続不能でクラスタ管理不可
状況オンプレ Anthos Cluster の Connect Agent がダウン、Console から見えなくなる
原因オンプレ FW 変更で *.googleapis.com:443 Outbound が遮断
影響緊急対応中に kubectl 不能、SSH ベース対応に切替
復旧FW 例外追加、Connect Agent 再起動
再発防止Connect Agent の必要 Egress を文書化、FW 変更時のチェックリスト化。定期的接続テストを Cloud Monitoring で実装

📝 試験での出題パターン

11Anthos on VMware / Bare Metal

オンプレ K8s 環境を「GKE 同等の体験」で提供するソリューションです。Anthos on VMware は vSphere 上に GKE クラスタを構築、Anthos on Bare Metal は Hypervisor 不要で物理サーバ直接動作(仮想化レイヤを排除し性能・コスト最適)。

11.1 Anthos on VMware アーキテクチャ

必要環境
vSphere 7.0+(vCenter / ESXi)、vSAN または共有 Datastore、F5 BIG-IP または MetalLB
Admin Cluster
User Cluster のライフサイクル管理(3 ノード制御プレーン推奨)
User Cluster
実際にワークロードを動かす。複数 User Cluster を Admin 1 つで管理可
LB 選択肢
F5 BIG-IP(商用)/ MetalLB(OSS バンドル)/ Manual LB
Connect Agent
Fleet 登録、GCP Console 統合のため必須

11.2 Anthos on Bare Metal アーキテクチャ

対応 OS
RHEL 8/9、Ubuntu 20.04/22.04、CentOS 8(EOL 注意)
Deployment Model
Standalone / Hybrid(Admin + User 兼任)/ Multi-cluster
LB 選択肢
Bundled (MetalLB)、BGP-based、Manual
HW 要件
各 Control Plane Node: 4 vCPU / 16GB / 128GB Disk 以上
ストレージ
Local PV、Portworx、Ondat 等の CSI Driver

11.3 Anthos on VMware vs Bare Metal 選定

観点on VMwareon Bare Metal
初期コストvSphere ライセンス必要Hypervisor 不要
性能仮想化オーバーヘッド有直接 HW アクセス
運用性既存 vSphere スキル活用Linux 直管理
適合シナリオVMware 既存資産ありエッジ / GPU / DPDK
サポート GPU限定的NVIDIA 完全対応
🚨 事故ケース: F5 BIG-IP ライセンス期限切れで LB 全停止
状況Anthos on VMware の F5 BIG-IP ライセンスが深夜 0 時で期限切れ、全 User Cluster の VIP がダウン
原因F5 のライセンス期限が CMDB に未登録、自動更新なし
影響全アプリの外部アクセス遮断 3 時間
復旧緊急 F5 営業連絡+一時ライセンス、MetalLB への切替計画
再発防止F5 / Anthos / OS / vSphere の 全ライセンス期限を Cloud Monitoring + Calendar 連動で 90 日前から通知

📝 試験での出題パターン

12Google Cloud VMware Engine (GCVE)

GCVE は VMware Cloud Foundation スタック(vSphere/vSAN/NSX-T)をマネージドで提供するサービスです。既存 VMware 環境を 無変更で GCP に移行できます。HCX vMotionでゼロダウンタイム移行が可能。

12.1 GCVE のノードタイプ

ノードタイプCPUメモリストレージ(NVMe)用途
ve1-standard-7272 vCore768 GB19.2 TB汎用
ve2-standard-3232 vCore1 TB~24 TB新世代
ve2-standard-128128 vCore2 TB~24 TB大規模
ve2-mem-128128 vCore4 TB~24 TBメモリ最適化

最小構成は 3 ノード(VSAN/NSX 要件)。Private Cloud(環境)単位で課金。

12.2 HCX vMotion フロー

On-prem vSphere vCenter + ESXi HCX Connector Running VM HCX vMotion (Live) 専用線 / VPN over WAN GCVE Private Cloud vCenter + ESXi HCX Cloud Manager NSX-TNetwork ExtensionvSANNVMe All-flash Migrated VM (Zero DT)
図7: HCX vMotion — オンプレ vSphere から GCVE へのライブ移行

12.3 移行モード比較

モードダウンタイム対象所要時間
HCX Bulk Migrationあり (再起動)大量 VM 並列1 時間/VM 並列実行
HCX vMotion (Live)ゼロ1 VM ずつVM サイズ次第
HCX Cold Migration停止必要非稼働 VM短時間
HCX Replication Assisted vMotionあり (秒)大量 VM中規模並列
🚨 事故ケース: HCX vMotion の帯域不足で移行所要時間が予定の 3 倍
状況HCX vMotion で 200 VM 移行計画、1 週間予定だったが 3 週間に
原因専用線 1Gbps を業務通信と共用、vMotion 用帯域確保せず。さらに WAN Optimization 未有効
影響プロジェクト遅延、オンプレ撤退計画にも影響
復旧HCX の WAN Optimization、Compression 有効化、業務外時間で集中実行
再発防止HCX 用 QoS 帯域確保、移行前に 帯域シミュレーション必須
🚨 事故ケース: VMware ライセンスポータビリティ違反で罰金
状況オンプレ vSphere ライセンスを GCVE にも適用しようとし、Broadcom(旧 VMware)監査で違反指摘
原因VMware の License Mobility 規約で GCVE 上の vSphere ライセンスは Google 側に含まれる前提。BYOL 不可
影響罰金 + 再契約コスト
復旧GCVE 標準のライセンスに切替(コスト中に含まれる)
再発防止GCVE 契約時に vSphere / vSAN / NSX-T ライセンスは Google 含むを確認。Windows / SQL Server は別途 BYOL 検討
🚨 事故ケース: 単一サイト構成でゾーン障害時に全停止
状況GCVE Private Cloud を 1 ゾーンのみで構築、ゾーン障害で全 VM 停止
原因Stretched Cluster(Multi-zone)構成オプションを採用せず
影響4 時間の全業務停止
復旧ゾーン復旧後自動再起動
再発防止Mission-critical は Stretched Cluster(2 ゾーン + Witness)、DR は別リージョン GCVE で SRM 構成

📝 試験での出題パターン

13ハイブリッド接続 再考

移行とハイブリッド運用には オンプレ⇔GCP の安定接続が不可欠です。Dedicated Interconnect / Partner Interconnect / HA VPN / Cross-Cloud Interconnect の 4 種類を、SLA・調達期間・コストで使い分けます。

13.1 接続方式 完全比較

方式SLA帯域調達期間初期コスト運用コスト暗号化典型用途
Dedicated Interconnect99.9% / 99.99%10/100/400 Gbps × 1–8 本8–12 週高(Colo + 機器)Port + EgressApp 層大規模・本番
Partner Interconnect99.9% / 99.99%50Mbps〜50Gbps2–6 週SP 料金 + GCP 課金App 層中規模・地方拠点
HA VPN99.99%3 Gbps/tunnel × 複数即日最低課金低IPsec即時・小規模・バックアップ
Classic VPN99.9% (廃止予定)3 Gbps/tunnel即日最低課金低IPsec非推奨(HA VPN へ移行)
Cross-Cloud Interconnect99.9% / 99.99%10/100/400 Gbps1–4 週Port + Egress 削減App 層AWS/Azure/OCI/Alibaba 直結
"Dedicated Interconnect: 99.99% uptime SLA for Critical Production." / "Partner Interconnect: SLA doesn't include the connectivity between your network and the service provider's network."
Dedicated Interconnect / Partner Interconnect

13.2 HA VPN 99.99% 達成構成

"Both HA VPN gateways must be in the same region to provide 99.99% availability SLA. Configuring only one tunnel on one interface for each HA VPN gateway doesn't provide 99.99% availability SLA."
HA VPN topologies
GCP VPC HA VPN Gateway IF0 + IF1 Cloud Router + BGP On-prem Peer GW A Peer GW B 2 つの Peer Gateway → 99.99% SLA Tunnel 1 (BGP) Tunnel 2 (BGP) Tunnel 3
図8: HA VPN 99.99% — 2 つの Peer Gateway + 4 トンネル + BGP

13.3 Cross-Cloud Interconnect (CCI)

用途
AWS / Azure / OCI / Alibaba との 直結回線。Egress コスト削減・低遅延
SLA
99.9% (single metro) / 99.99% (multi-metro)
帯域
10 / 100 / 400 Gbps(AWS/OCI)、10 / 100 Gbps(Azure/Alibaba)
調達期間
1–4 週間(Dedicated Interconnect より高速)
料金
Local / Remote の固定 Port 課金 + Egress 削減効果

13.4 接続方式 決定ツリー

必要帯域
< 3 Gbps → HA VPN
3–50 Gbps → Partner Interconnect
> 50 Gbps → Dedicated Interconnect
調達期間
即日 → HA VPN(後で Interconnect へ)
数週間OK → Interconnect
マルチクラウド直結
AWS/Azure/OCI/Alibaba → CCI
単一クラウドのみ → 上記
🚨 事故ケース: Dedicated Interconnect 単一回線で長時間ダウン
状況本番アプリで Dedicated Interconnect 単一 100Gbps 回線、回線業者の保守メンテで 6 時間遮断
原因SLA 99.99% を選んでいたが、ファシリティ側の予定外メンテ。冗長化なし
影響オンプレ DB 連携アプリが全停止、ECサイト売上ロス
復旧HA VPN を緊急構築(30 分)、バックアップ経路として常設化
再発防止99.99% SLA は 2 ファシリティ + 2 リンク必須、加えて HA VPN バックアップを常時稼働
🚨 事故ケース: BGP Peering の MED 設定ミスでルーティングループ
状況Dedicated + HA VPN 併用環境、両経路で同 prefix を Advertise、ルーティング不安定
原因Cloud Router の Custom Route Priority(MED)設定なし、両経路同コスト
影響通信が両経路を交互に使用、パケットロス・順序逆転
復旧Dedicated を Primary(MED=100)、HA VPN を Backup(MED=200)に設定
再発防止BGP 設計時に MED / AS Path Prepend で明示優先度を設定、Active-Active か Active-Passive を文書化
🚨 事故ケース: VPN MTU 設定不一致で大きいパケットがドロップ
状況HA VPN 経由で SMB ファイル共有、大きなファイルコピーが固まる
原因VPN 経由で MTU 1500 では IPsec オーバーヘッドで PMTUD 失敗。SMB は ICMP Frag Needed をブロック
影響10MB 超のファイル転送タイムアウト多発
復旧Cloud Router の --tcp-mss=1380 で MSS Clamping 適用
再発防止VPN 経路は MSS Clamping 必須、PMTUD 依存しない設計
🚨 事故ケース: Cross-Cloud Interconnect の Egress 課金想定外
状況AWS → GCP CCI 経由で月 50TB データ転送、想定 $3,000 → 実際 $12,000
原因① CCI 利用で GCP Ingress は無料だが AWS Egress 課金は別途、② Port 課金(時間ベース)を計算漏れ、③ 同一メトロ vs Remote の単価差
影響四半期予算超過、FinOps レビュー
復旧AWS Direct Connect の Egress 優遇価格適用、CCI を Local 構成に変更
再発防止CCI 採用前に 両クラウドの Egress + Port 料金を 3 ヶ月実績ベースで試算
🚨 事故ケース: DNS Forwarding 設定漏れでオンプレ参照不能
状況Interconnect 開通後も、GCP 側 VM からオンプレ社内 DNS(internal.example.com)の名前解決失敗
原因① Cloud DNS の Outbound Server Policy 未設定、② オンプレ DNS が GCP からのリクエストを ACL 拒否
影響移行 VM が DB 名前解決失敗、アプリ起動不能
復旧Cloud DNS Forwarding Zone 設定、オンプレ DNS ACL 緩和
再発防止Interconnect 開通の最終チェックリストに 「DNS Forwarding 疎通確認」必須項目

📝 試験での出題パターン

14移行リハーサル&カットオーバー戦略

移行成功の鍵は 「事前リハーサル」「ウェーブ設計」「ロールバック計画」の 3 点に尽きます。本章では運用観点の深掘りを行います。

14.1 移行ウェーブ計画

数百〜数千 VM を 段階的に小グループ単位(Wave)で移行することで、リスクを限定します。Migration Center の依存マップを元に、依存関係のないグループから先に移行します。

Wave 0
Pilot — 影響が少ない開発/検証 VM 3–5 台。手順・ツール・ランブックの検証
Wave 1
Tier-3(社内ツール、軽量 Web)20–50 台。週末カットオーバー
Wave 2
Tier-2(業務系、依存少)50–100 台。月次メンテナンスウィンドウ活用
Wave 3
Tier-1(基幹システム、依存多)100+ 台。DB 同期+アプリ並行稼働
Wave 4
Core DB — Cutover Window 中の DMS Promote。最後
Wave 5
Cleanup — オンプレ Decommission、ライセンス返却

14.2 リハーサル (Dry Run)

14.3 カットオーバー戦略 比較

戦略概要ダウンタイムリスク適用
Big Bang全システム一斉切替小規模・依存複雑系
Trickle (Phased)機能 / ユーザ層 / 地域単位で段階移行大規模 SaaS / Webアプリ
Parallel RunSource/Destination 並行稼働で検証ゼロ中(データ同期難)金融・規制・Mission Critical
Blue-Green同等環境を並行構築、DNS/LB で瞬間切替Web アプリ全般
Canary5–10% トラフィックから段階拡大ゼロ最低マイクロサービス

14.4 カットオーバー戦略 決定ツリー

ダウンタイム許容
ゼロ必須 → Parallel / Blue-Green / Canary
数分〜数時間 → Trickle
数時間 OK → Big Bang
システムの依存複雑性
高(一括切替必須) → Big Bang + 長期 Cutover Window
低(独立切替可) → Trickle / Canary
規制・データ整合性
厳格 → Parallel Run(両系統で検証)
通常 → Blue-Green / Canary

14.5 ロールバック計画(R 戦略別)

R 戦略ロールバック手段所要時間データ差分扱い
Rehost (M4VM)Source VM 再起動(7日保持)15–60 分Cutover 後の差分は手動取り込み
Replatform (DMS)アプリ接続先を Source DB に戻す5–30 分Cutover Window のデータを CSV エクスポート/インポート
RefactorBlue-Green の Blue 環境維持秒〜分並行稼働で差分なし
VMware (GCVE)HCX Reverse vMotionVM サイズ次第Live Migration ならゼロ
AnthosConfig Sync revert + Helm rollback5–10 分Persistent Volume は別途

14.6 移行モニタリング

14.7 コミュニケーション計画

T-7 日
ステークホルダー全員にメンテ通知、影響範囲確認
T-3 日
カットオーバー Runbook 最終レビュー、Go/No-Go 会議
T-1 日
関係者待機表、エスカレーション体制確認
T=0 (Cutover)
War Room 設置、5 分毎ステータス報告
T+24h
事後レビュー、Lessons Learned 共有

14.8 並行運用期間のコスト管理

⚠️ Hidden Cost — 並行運用のダブルコスト Trickle / Parallel Run では オンプレ + GCP 両方のコストが発生します。これは「事前見積もり」で最も漏れやすい項目です。並行期間が 6 ヶ月続けば、その期間のコストは合計の 2 倍。並行期間を 最短化する Wave 計画ライセンスダブルカウント対策が重要。

14.9 ハイブリッド運用の継続課題

❌ アンチパターン: Big Bang でリスク無視

200 VM を週末に一斉切替、依存トラブルで月曜業務開始遅延、経営に深刻ダメージ。

✅ ベストプラクティス: Trickle + Dual Run でリスク低減

Wave 単位 20 VM ずつ、各 Wave 後 1 週間の Dual Run 監視、問題なしを確認して次 Wave。

📝 試験での出題パターン

15ライセンス&BYOL

クラウド移行でしばしば見落とされる落とし穴が ライセンスです。OS / DB / 商用ソフトのライセンス契約を クラウド環境でも継続利用可能かを必ず確認します。

15.1 主要ソフトのライセンス扱い

ソフトウェアGCP モデルBYOL 可否制約・注意点
Windows ServerPAYG (含む) or BYOLBYOL は Sole-tenant Node 必須Software Assurance + License Mobility 必須
SQL ServerPAYG (含む) or BYOLStandard/Enterprise BYOL 可SA + 90 日以内 / 物理 Core 課金
RHELPAYG or BYOS (Cloud Access)Red Hat Cloud Access で可RHEL 8/9 Premium 等
SUSEPAYG or BYOSSUSE Cloud Program で可SLES for SAP 別契約
Oracle DatabaseBYOL のみOracle ライセンス必須Authorized Cloud Environment 確認
VMware (GCVE)Google が提供BYOL 不可vSphere/vSAN/NSX は GCVE 込み

15.2 Sole-tenant Node — BYOL の要

用途
Windows Server / SQL Server の BYOL、規制対応、テナント分離
料金
物理ホスト時間課金(VM 数に依存しない)
BYOL 条件
Microsoft Software Assurance + License Mobility 契約必須
運用
Live Migration 対応、メンテナンスポリシー指定可
🚨 事故ケース: BYOL 規約違反(CPU/ホスト数)で罰金
状況Windows Server BYOL で 50 VM を Multi-tenant GCE 上に構築、Microsoft 監査で違反指摘
原因License Mobility は Sole-tenant 上のみ有効。Multi-tenant で BYOL は規約違反
影響追加ライセンス購入 + 罰金で約 $200K
復旧Sole-tenant Node に移行 or PAYG(Windows 含む)へ切替
再発防止BYOL 採用時は 「Sole-tenant Node 必須」を Terraform で強制。ライセンスタイプを Tag 管理
🚨 事故ケース: Sole Tenant 必須ライセンスを Multi-tenant で稼働 → コンプラ違反
状況Oracle DB の BYOL を GCE Multi-tenant に展開、年次監査で違反
原因Oracle ライセンスは Authorized Cloud EnvironmentvCPU 2:1 ルールあり、しかし Sole-tenant 推奨
影響追加コア数分のライセンス遡及購入
復旧Sole-tenant Node に移行
再発防止Oracle / SAP 等の重ライセンスは 必ず Sole-tenant + ライセンスマトリクス事前合意

📝 試験での出題パターン

16試験頻出パターン(ケーススタディ)

PCA 試験では 4 つの公式ケーススタディ(EHR Healthcare / Helicopter Racing League / Mountkirk Games / TerramEarth)と、新版で Cymbal Retail / Altostrat Media なども登場します。本章では移行系シナリオの典型解答パターンを整理します。

16.1 EHR Healthcare(医療レコード移行)

🔑 想定シナリオ 既存オンプレ + コロケーション環境。HIPAA 準拠必須、99.9% 可用性、Disaster Recovery 要件あり。

16.2 Helicopter Racing League(メディア配信)

🔑 想定シナリオ グローバル ML 推論、低遅延ライブ動画。AI/ML 移行と Edge 配信。

16.3 Mountkirk Games(ゲーム)

16.4 TerramEarth(IoT / 建機)

16.5 Cymbal Retail / Altostrat Media(新版)

17アンチパターン集

❌ Discovery 省略

「とりあえず M4VM で動くだろう」と Assess を省略、依存・性能・コスト全部誤算。

✅ Migration Center 必須

30–90 日 mCollector で性能ピーク + 依存マップ収集、依存関係を可視化してから Wave 計画。

❌ 全部 Refactor

「クラウドネイティブが正義」と全 80 アプリ K8s 化、2 年経っても完了せず予算 2 倍。

✅ Rehost + 段階 Refactor

まず Rehost で短期 ROI、戦略アプリのみ後で Refactor。

❌ DB Cutover 一発勝負

DMS Promote 直後にアプリ不調、Source を即削除でロールバック不能。

✅ Source 7 日間保持 + Test Clone

Promote 前に Test Clone で性能・整合性確認、Source は最低 7 日間 Read-only で保持。

❌ 単一 Interconnect

「99.99% SLA だから安心」と単一 100G、ファシリティ保守で 6h 停止。

✅ 2 ファシリティ + HA VPN バックアップ

SLA 99.99% は冗長設計が前提。HA VPN を常時 Backup として稼働。

❌ Big Bang カットオーバー

200VM を週末一斉切替、依存問題で月曜業務開始遅延。

✅ Trickle Wave + Dual Run

20VM ずつ Wave 単位、各 Wave 後 1 週間 Dual Run 監視。

❌ Config Sync 直 push

Git レビュー無しで NetworkPolicy 配信、kube-system も巻き込み全クラスタ死亡。

✅ PR Review + Canary Cluster

PR レビュー必須、Canary Cluster で 24h 先行、Critical Namespace は例外。

❌ BYOL を Multi-tenant に

「コスト削減」と Windows BYOL を Multi-tenant GCE に、監査で違反指摘。

✅ Sole-tenant Node 強制

BYOL は必ず Sole-tenant、Terraform で強制、ライセンス Tag 管理。

❌ Transfer Appliance + Online 並行

同 Bucket に両方が書込、データ重複で BI 集計誤り。

✅ Prefix 分離 + 進捗管理表

Source ごとに Bucket prefix を分け、Job 進捗を一元管理。

18クォータと制限の一覧

サービスクォータ / 制限備考
Migration Center1 Project あたり Source 数: 制限なし
1 Group あたり VM 数: 数千程度
料金は無料
M4VM同時 Migration: Project あたり数百
Replication 並列度: ターゲット PD IOPS 次第
Wave 計画で調整
M2C1 Project あたり Job: 100 まで並列化可
DMS1 Project あたり Migration Job: 100
Connection Profile: 200
Conversion Workspace: 50
Quota 増加申請可
Datastream1 Project あたり Stream: 数百
Stream あたり Throughput: 数 GB/s
Source 側 binlog 速度依存
STS1 Project あたり Transfer Job: 1000
Agent ベース: Agent あたり ~5 Gbps
並列 Agent 推奨
Transfer ApplianceTA40: 40 TB / TA300: 300 TB
同時申込数: 制限なし(地域依存)
納期 4–6 週間
Anthos FleetMembership 数: Project あたり制限なし
同時管理 Cluster: 数百推奨
Membership 課金
Anthos Config SyncRootSync: 1 / Cluster
RepoSync: Namespace あたり 1
階層化推奨
Cloud Service MeshService 数 / Cluster: 数千
Workload 数: 数万
Performance 依存
GCVEPrivate Cloud あたりノード: 3–96
vCenter / Cluster: 規模依存
Stretched Cluster オプション
Dedicated InterconnectPort: 10/100/400 Gbps、1–8 本/接続調達 8–12 週
Partner InterconnectVLAN Attachment: 50Mbps〜50GbpsSP 経由
HA VPNGateway あたり Tunnel: 8
Tunnel あたり: ~3 Gbps
BGP 必須
Cross-Cloud Interconnect10/100/400 Gbps(AWS/OCI), 10/100 Gbps(Azure/Alibaba)調達 1–4 週

📚 公式ドキュメント参照リンク(再掲)