Section 2: インフラ管理とプロビジョニング — 📘 基礎編
対象: 実務 1-2 年・GCP 初学者 / インフラ構築をこれから本格的に学ぶ人。 目標: ネットワーク・ストレージ・コンピュート・Vertex AI の基本構成要素を理解し、Cloud Console で実際にプロビジョニングできるようになる。
1. インフラ管理とプロビジョニングの全体像
クラウドアーキテクトが扱う 5 つのインフラレイヤー:
┌─────────────────────────────────────────────┐
│ 5. AI/ML レイヤー │ Vertex AI, Gemini, Model Garden, AI Hypercomputer
├─────────────────────────────────────────────┤
│ 4. アプリ/サーバーレス レイヤー │ Cloud Run, Cloud Run functions, App Engine
├─────────────────────────────────────────────┤
│ 3. コンピュート レイヤー │ Compute Engine, GKE, VMware Engine
├─────────────────────────────────────────────┤
│ 2. ストレージ レイヤー │ GCS, Persistent Disk, Cloud SQL, BigQuery
├─────────────────────────────────────────────┤
│ 1. ネットワーク レイヤー │ VPC, LB, Cloud Armor, Interconnect
└─────────────────────────────────────────────┘
「プロビジョニング」とは、必要なリソースを 必要な量・場所・タイミング で確保すること。GCP では宣言的に IaC(Terraform / Deployment Manager / Config Connector)で行うのが標準です。
2. ネットワークトポロジーの構成
2.1 VPC の基本
VPC ネットワーク はプロジェクト内の仮想ネットワーク。GCP の VPC は グローバルリソース なので、複数リージョンのサブネットを 1 つの VPC で扱えます(AWS/Azure では VPC はリージョン単位)。
VPC ネットワーク(グローバル)
├─ サブネット A(us-central1, 10.0.0.0/24)
├─ サブネット B(asia-northeast1, 10.0.1.0/24)
├─ Firewall Rules(VPC 全体に適用)
├─ Routes
└─ Cloud Router(BGP 用)
2.2 サブネット設計の基本
| 項目 | 内容 |
|---|---|
| リージョン単位 | 1 サブネット = 1 リージョン |
| プライマリ範囲 | VM IP の主範囲 |
| セカンダリ範囲 | GKE Pod / Service 用、Alias IP 用 |
| 拡張可能 | プライマリ範囲を後から拡張可能(縮小不可) |
試験頻出: GKE で Pod 数が増える可能性 → セカンダリ範囲を広めに確保(後から縮小できない)。
2.3 ファイアウォールルール
| ルール種別 | 内容 |
|---|---|
| VPC Firewall Rules | VPC 単位、L4(IP/Port/Protocol)、Tag/Service Account 指定可 |
| Hierarchical Firewall Policies | 組織/フォルダ/プロジェクト階層で適用、優先順位を組織単位で統制 |
| Network Firewall Policies (Global / Regional) | グループ管理可能な次世代ファイアウォール、Geo-IP/Threat Intelligence 対応 |
優先順位(数値が小さいほど高優先):
0 ──── Hierarchical Firewall(組織/フォルダ)
↓
65535 ─ VPC Firewall Rules(implied deny ingress / allow egress)
2.4 Cloud NAT と Private Google Access
| サービス | 用途 |
|---|---|
| Cloud NAT | プライベート VM がインターネットに egress(IP 共有) |
| Private Google Access | 外部 IP なしで googleapis.com にアクセス |
| Private Service Connect (PSC) | プライベート IP で Google API / マネージドサービスにアクセス |
| VPC Service Controls (VPC SC) | API レベルでサービス境界を作る(データ流出防止) |
┌─── Internet ───┐
│ │
┌────────┴────────┐ │
│ Cloud NAT │ ←─ プライベート VM が egress
└────────┬────────┘ │
│ │
┌───────────┼───────────────┐│
│ VPC │ ││
│ ┌────────┴───────┐ ││
│ │ Private VM │ → Private Google Access → googleapis.com
│ │ (外部 IP なし) │ │
│ └────────────────┘ │
└──────────────────────────┘
2.5 セキュリティ保護機能
| サービス | 役割 |
|---|---|
| Cloud Armor | L7 WAF、DDoS 防御、Geo-IP/Bot 対策、OWASP ルール |
| Cloud IDS | パケットミラーリング + 侵入検知(IDS / IDPS) |
| Identity-Aware Proxy (IAP) | アプリ前段でユーザー認証、TCP 転送(SSH/RDP も) |
| Cloud DNS | 内部/外部 DNS、Private Zone、DNSSEC |
| Sensitive Data Protection | DLP(旧名 Cloud DLP)、PII 検出/マスキング |
試験頻出: 「SQL インジェクション/XSS 防御」 → Cloud Armor(L7 WAF)。「侵入検知」 → Cloud IDS。
2.6 ハイブリッド/マルチクラウド接続
| 接続方式 | 用途 |
|---|---|
| Cloud VPN (HA VPN) | 中小規模・暗号化、SLA 99.99% |
| Dedicated Interconnect | 10/100 Gbps、大規模直結 |
| Partner Interconnect | 50 Mbps – 50 Gbps、パートナー経由 |
| Cross-Cloud Interconnect | GCP ↔ AWS/Azure 直結 |
| Network Connectivity Center (NCC) | ハブ&スポークで複数経路を統合 |
2.7 ロードバランサ(基本)
GCP の Cloud Load Balancing は 7 種類 あり、3 つの軸で選びます:
- スコープ: Global / Regional
- 公開範囲: External / Internal
- 方式: Application (L7) / Network Passthrough (L4) / Network Proxy
| 用途 | 推奨 LB |
|---|---|
| グローバル Web/API | Global External Application LB |
| TCP/UDP 直接、IP 保持 | Regional External Passthrough NLB |
| 内部マイクロサービス | Internal Application LB |
| マルチリージョン内部 API | Cross-region Internal Application LB |
3. ストレージシステムの構成
3.1 オブジェクトストレージ(Cloud Storage)
バケット作成時の主要設定
| 項目 | 内容 |
|---|---|
| 場所タイプ | Region(単一) / Dual-region(2 リージョン同期) / Multi-region(複数リージョン) |
| ストレージクラス | Standard / Nearline / Coldline / Archive、または Autoclass |
| アクセス制御 | Uniform(IAM のみ)/ Fine-grained(IAM + ACL) |
| 暗号化 | Google-managed(デフォルト)/ CMEK / CSEK |
新規バケットは Uniform access が推奨(IAM だけで管理がシンプル)。
ライフサイクル管理
オブジェクトの 自動移行・削除 を定義します。
ライフサイクルルール例:
- 30 日経過 → Nearline へ移行
- 90 日経過 → Coldline へ移行
- 365 日経過 → 削除
- バージョン違い → 7 日後に削除
設定例(JSON):
{
"lifecycle": {
"rule": [
{ "action": {"type": "SetStorageClass", "storageClass": "NEARLINE"},
"condition": {"age": 30} },
{ "action": {"type": "Delete"},
"condition": {"age": 365} }
]
}
}
保持ポリシーとオブジェクトロック
| 機能 | 内容 |
|---|---|
| Retention Policy | バケット全体に保持期間を設定(期間中は削除不可) |
| Bucket Lock | Retention Policy を永続化(解除不可、コンプラ用) |
| Object Versioning | 上書き/削除時に旧版を保持 |
| Object Hold | 個別オブジェクトをロック(Event-based / Temporary) |
試験頻出: 「7 年の監査保持」 → Retention Policy + Bucket Lock + Archive クラス。
3.2 ブロックストレージ(Persistent Disk / Hyperdisk)
| タイプ | 用途 | 最大 IOPS | 最大スループット |
|---|---|---|---|
| PD Standard (pd-standard) | コスト重視、HDD ベース | 数千 | 数百 MB/s |
| PD Balanced (pd-balanced) | 汎用、SSD | 数万 | 数 GB/s |
| PD SSD (pd-ssd) | 高 IOPS | 100,000 | 数 GB/s |
| PD Extreme (pd-extreme) | 超高 IOPS | 120,000 | 数 GB/s |
| Hyperdisk Balanced | 次世代汎用、ボリュームと IOPS を分離 | 160,000 | 2,400 MB/s |
| Hyperdisk Throughput | スループット重視(Hadoop など) | - | 数 GB/s |
| Hyperdisk Extreme | 超高 IOPS(SAP HANA など) | 350,000 | 5,000 MB/s |
| Hyperdisk ML | AI 学習向け、複数 VM 同時アタッチ | - | 1.2 TB/s(読込) |
Hyperdisk は IOPS とサイズを独立に調整可能(PD は連動)。AI ワークロードでは Hyperdisk ML が推奨。
3.3 ファイルストレージ(Filestore)
NFS v3 互換のマネージドファイルシステム。複数 VM から共有マウント したい場合に使用。
| 階層 | 用途 |
|---|---|
| Basic HDD | 低コスト、汎用 |
| Basic SSD | 高性能、汎用 |
| Zonal | ゾーン冗長、ホームディレクトリなど |
| Regional | リージョン冗長、HA 用 |
| Enterprise | リージョン冗長 + 高可用、本番ファイル共有 |
3.4 データベース(運用設定の基本)
| サービス | 高可用構成 | バックアップ | リストア |
|---|---|---|---|
| Cloud SQL | HA 構成(同期スタンバイ) | 自動バックアップ + Binlog | PITR(任意時点) |
| AlloyDB | プライマリ + 4 リードプール | 連続バックアップ | PITR |
| Spanner | デフォルトで複数ゾーン | バックアップ + Backup Schedules | 別インスタンスへ復元 |
| Bigtable | 同期/非同期レプリケーション | 増分バックアップ | テーブル単位リストア |
| Firestore | デフォルトで複数ゾーン | スケジュールエクスポート | 同モードへインポート |
3.5 Backup and DR Service
旧 Actifio。VM・DB・GKE・ファイルシステムを統合的にバックアップ。
主な特徴:
- アプリケーション整合性 のあるスナップショット
- クロスリージョンレプリケーション
- インスタントマウント で素早く復旧
- VMware Engine、Compute Engine、Cloud SQL、GKE PV をサポート
4. コンピュートシステムの構成
4.1 Compute Engine(VM)
マシンファミリー
| ファミリー | 用途 |
|---|---|
| E2 | 汎用・低コスト |
| N2 / N2D | 汎用・本番標準 |
| N4 | 次世代汎用(最新世代) |
| C3 / C3D | 高性能 CPU |
| T2D / T2A | スケールアウト型 Web |
| M3 / M4 | メモリ最適化(SAP HANA) |
| A2 / A3 / A3 Ultra | GPU(H100 など) |
| TPU v5e / v5p / Trillium | TPU 専用 |
課金単位
- 秒単位課金(最低 1 分)
- 継続使用割引(Sustained Use Discounts): 1 ヶ月の使用率に応じ最大 30% 自動割引
- Committed Use Discounts (CUD): 1 / 3 年契約で 30-55% 割引
- Spot VM: 最大 91% 割引(24 時間以内に終了の可能性)
4.2 Managed Instance Group(MIG)
VM を テンプレートから複数起動・自動修復・自動スケール するグループ。
Instance Template ─┬─ MIG (us-central1-a) ─ VM × N
├─ MIG (us-central1-b) ─ VM × N
└─ MIG (us-central1-c) ─ VM × N
↑
Regional MIG = ゾーン跨ぎ
主な機能:
- Autohealing: ヘルスチェック失敗で VM 再作成
- Autoscaling: CPU / LB / カスタム指標 / スケジュール
- Rolling Update: 段階的更新(Canary / Phased rollout)
- Stateful MIG: 個別 VM の状態(ディスク/メタデータ)を保持
4.3 OS 管理(VM Manager / OS Config)
VM のパッチ管理・設定管理を行うマネージドツール。
| 機能 | 内容 |
|---|---|
| OS Patch Management | パッチデプロイ、スケジュール、コンプライアンス |
| OS Inventory | インストール済みパッケージ・脆弱性 |
| OS Config Agent | エージェント経由で設定変更 |
| OS Login | SSH 鍵を IAM で管理(ローカル鍵不要) |
4.4 GKE の基本
Autopilot vs Standard
| 観点 | Autopilot | Standard |
|---|---|---|
| ノード管理 | Google 管理 | 自己管理 |
| 課金 | Pod のリソース要求単位 | Node 単位 |
| カスタマイズ | 制限あり | 完全自由 |
| 用途 | 新規・標準ワークロード | GPU/TPU、特殊要件 |
GKE のネットワーク
- VPC-native cluster: デフォルト。Pod IP に Alias IP を使用
- Private cluster: コントロールプレーン/ノードがプライベート IP
- Workload Identity: Pod 単位で IAM 権限を付与(推奨)
4.5 サーバーレスコンピューティング
| サービス | 単位 | 課金 | 用途 |
|---|---|---|---|
| Cloud Run | コンテナ | リクエスト時間 | ステートレス HTTP / Worker |
| Cloud Run functions | 関数 | 呼出回数 + 実行時間 | イベント駆動 |
| App Engine Standard | アプリ | インスタンス時間 | Web アプリ(標準ランタイム) |
| App Engine Flex | コンテナ | インスタンス時間 | カスタムランタイム |
| Cloud Workflows | YAML | ステップ数 | サーバーレスオーケストレーション |
| Eventarc | イベント | イベント数 | イベントルーティング |
4.6 Google Cloud VMware Engine (GCVE)
VMware vSphere/NSX-T/vSAN をフルマネージドで GCP 上に提供 するサービス(2025 年改訂で試験対象に)。
| 特徴 | 内容 |
|---|---|
| 既存 VMware ライセンス利用可 | BYO License もしくは GCP 契約 |
| HCX 経由でリフト&シフト | オンプレ VMware → GCVE をダウンタイム最小で移行 |
| NSX-T ネットワーク | 既存ネットワークポリシーをそのまま使える |
| GCP サービスと連携 | VPC Peering で BigQuery / Cloud SQL 等にアクセス可能 |
オンプレ vSphere ──── HCX ────→ GCVE(GCP 上)
├── vCenter
├── ESXi (ベアメタル)
├── NSX-T
└── vSAN
↕ VPC Peering
Cloud SQL / BigQuery / GCS
用途: VMware 環境をそのまま残したい、Refactor の時間がない、Oracle on VMware を移行 など。
5. Vertex AI で ML ワークフロー
5.1 Vertex AI の構成要素
データ準備
├── Cloud Storage / BigQuery(生データ)
└── Vertex AI Feature Store(特徴量管理)
モデル開発
├── Vertex AI Workbench(マネージド Jupyter)
├── AutoML(コード不要)
├── Custom Training(独自モデル)
└── Model Garden(事前学習モデルカタログ)
オーケストレーション
└── Vertex AI Pipelines(Kubeflow Pipelines ベース)
デプロイ・推論
├── Vertex AI Endpoints(オンライン推論、リアルタイム)
├── Vertex AI Batch Prediction(バッチ推論)
└── Model Registry(バージョン管理)
監視
├── Vertex AI Model Monitoring(ドリフト検知)
└── Vertex AI Explainable AI(説明可能性)
5.2 Vertex AI Pipelines(基本)
ML ライフサイクルを DAG(有向非巡回グラフ) として宣言し、自動実行する仕組み。
- Kubeflow Pipelines (KFP) または TFX (TensorFlow Extended) で記述
- 各ステップは コンテナ として実行される
- パラメータ・成果物・実行履歴を Vertex ML Metadata に保存
- スケジュール実行 / イベント駆動が可能
簡単な KFP の例:
from kfp import dsl
@dsl.component(base_image="python:3.10")
def preprocess(data_uri: str) -> str:
return f"preprocessed: {data_uri}"
@dsl.component(base_image="python:3.10")
def train(preprocessed: str) -> str:
return f"model from {preprocessed}"
@dsl.pipeline(name="simple-pipeline")
def pipeline(data_uri: str):
p = preprocess(data_uri=data_uri)
train(preprocessed=p.output)
5.3 データ統合の準備
Vertex AI で扱うデータは以下から取り込み:
| ソース | 統合方法 |
|---|---|
| BigQuery | Vertex AI Datasets / Feature Store 直接統合 |
| Cloud Storage | ファイルパス指定(CSV / JSON / TFRecord 等) |
| ストリーミング | Pub/Sub → Dataflow → BigQuery / GCS |
| データレイクハウス | Dataplex でカタログ化 → Vertex AI から参照 |
5.4 AI Hypercomputer(最新追加)
大規模 AI ワークロードのための 統合インフラ製品。
コンピュート層
├── TPU v5e / v5p / Trillium(学習に最適)
├── A3 / A3 Ultra(H100 GPU)
└── A4(最新 GPU)
ネットワーク層
└── Jupiter(光回線スイッチング、ノード間 3.2 Tbps)
ストレージ層
├── Hyperdisk ML(複数 VM 同時アタッチ可)
├── Anywhere Cache(オブジェクトキャッシュ)
└── Parallel Filesystem (Lustre)
ソフトウェア層
├── JAX / PyTorch / TensorFlow
├── Pathways(マルチホスト分散)
└── XLA コンパイラ
試験頻出: 「大規模 LLM 学習」「TPU と GPU を混在」 → AI Hypercomputer。
6. Vertex AI のプリビルトソリューションと API
6.1 Google AI API(事前学習済み)
コードなしで即利用できる API:
| API | 用途 |
|---|---|
| Vision AI | 画像分類、ラベル検出、OCR、顔検出 |
| Video Intelligence | 動画ラベル、シーン検出、不適切コンテンツ検知 |
| Speech-to-Text | 音声認識 |
| Text-to-Speech | 音声合成 |
| Natural Language API | エンティティ抽出、感情分析、構文解析 |
| Translation API | 翻訳(135+ 言語) |
| Document AI | 文書 OCR、フォーム抽出 |
| Discovery AI(旧 Vertex AI Search) | エンタープライズ検索 |
| Dialogflow CX | 対話 AI |
6.2 Gemini Enterprise(最新・必須)
Gemini を企業向けに統合した AI エージェント基盤。旧 Vertex AI Agent Builder を含む。
主要構成要素:
| 機能 | 内容 |
|---|---|
| Agents | カスタマーサポート、Sales、IT 等の特化エージェント |
| NotebookLM | 複数のソースから引用付き Q&A を生成する AI ノートブック |
| Data Stores | ナレッジソース(Web / GCS / BigQuery / 構造化データ) |
| Conversational Agents | 旧 Dialogflow CX、音声/テキスト対話 |
| Agentspace | エンタープライズ AI アシスタント |
Gemini Enterprise
├── Agents(業務特化 AI)
│ ├── Customer Service Agent
│ ├── Sales Agent
│ └── Coding Agent
├── NotebookLM(ナレッジ統合 AI)
└── Agentspace(全社向け AI アシスタント)
6.3 Model Garden(最新・必須)
Google + サードパーティ + OSS の 200+ モデル を統一インターフェースで利用できるカタログ。
含まれるモデル:
- Google: Gemini (Pro/Flash/Nano)、PaLM 2、Imagen、Chirp、Codey、Embeddings
- サードパーティ: Anthropic Claude、AI21 Jurassic、Mistral Large
- OSS: Llama、Stable Diffusion、Falcon、Gemma
利用パターン:
- API として利用(Vertex AI Endpoints 経由)
- ファインチューニング(自社データで再学習)
- デプロイ(GKE / Vertex AI Endpoints に配置)
試験頻出: 「Claude や Llama を GCP で使いたい」 → Model Garden。
7. 簡単なプロビジョニング例
7.1 VPC + 2 サブネット(gcloud)
# VPC 作成
gcloud compute networks create my-vpc \
--subnet-mode=custom
# サブネット作成
gcloud compute networks subnets create subnet-us \
--network=my-vpc \
--region=us-central1 \
--range=10.0.0.0/24
gcloud compute networks subnets create subnet-asia \
--network=my-vpc \
--region=asia-northeast1 \
--range=10.0.1.0/24
7.2 MIG + Autoscaler
# インスタンステンプレート
gcloud compute instance-templates create web-template \
--machine-type=e2-medium \
--image-family=debian-12 \
--image-project=debian-cloud
# MIG(リージョナル)
gcloud compute instance-groups managed create web-mig \
--template=web-template \
--size=3 \
--region=us-central1
# Autoscaler
gcloud compute instance-groups managed set-autoscaling web-mig \
--region=us-central1 \
--min-num-replicas=2 \
--max-num-replicas=10 \
--target-cpu-utilization=0.6
7.3 Cloud Storage + Lifecycle
gcloud storage buckets create gs://my-bucket \
--location=us \
--uniform-bucket-level-access
# ライフサイクル設定
cat > lifecycle.json <<EOF
{
"lifecycle": {
"rule": [
{ "action": {"type": "SetStorageClass", "storageClass": "COLDLINE"},
"condition": {"age": 90} },
{ "action": {"type": "Delete"},
"condition": {"age": 365} }
]
}
}
EOF
gcloud storage buckets update gs://my-bucket --lifecycle-file=lifecycle.json
7.4 Vertex AI Pipelines をスケジュール実行
# パイプライン定義 (pipeline.json) をアップロードしスケジュール
gcloud ai pipelines schedules create \
--display-name="daily-training" \
--pipeline-spec-uri=gs://my-bucket/pipeline.json \
--cron="0 2 * * *" \
--region=us-central1
8. 章末まとめ
各レイヤーで覚える「最初のサービス」
| レイヤー | 最初に思い出すサービス |
|---|---|
| ネットワーク | VPC + Cloud Armor + Cloud LB |
| ストレージ | Cloud Storage(GCS) |
| ブロック | Persistent Disk / Hyperdisk |
| ファイル | Filestore |
| DB(OLTP) | Cloud SQL |
| DB(グローバル) | Spanner |
| 分析 | BigQuery |
| コンピュート(VM) | Compute Engine |
| コンテナ | GKE Autopilot |
| サーバーレス | Cloud Run |
| イベント | Cloud Run functions |
| VMware 維持 | VMware Engine (GCVE) |
| ML 統合 | Vertex AI |
| LLM | Gemini + Model Garden |
| 大規模学習 | AI Hypercomputer |
| AI エージェント | Gemini Enterprise |
試験頻出キーワード
- Private Google Access … 外部 IP なしで Google API へ
- Cloud NAT … プライベート VM のインターネット egress
- Cloud Armor … L7 WAF / DDoS
- Cloud IDS … 侵入検知
- Hierarchical Firewall … 組織レベルで強制
- MIG / Autoscaler / Autohealing … VM 自動運用
- GKE Autopilot … Pod 単位課金、運用最小化
- GCVE … VMware をそのまま GCP に
- Vertex AI Pipelines … ML オーケストレーション
- AI Hypercomputer … TPU/GPU 統合
- Gemini Enterprise … AI エージェント基盤
- Model Garden … 200+ モデルカタログ
次のステップ
- 中堅レベルへ進む方:
02_応用.mdで 設計トレードオフ、運用判断、Pipelines/AI Hypercomputer の詳細 を学ぶ - 試験準備中の方:
03_要点と暗記.mdで要点を整理 - 演習を始める方:
../../03_問題集/section2_問題集.md