01_基礎

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 つの軸で選びます:

  1. スコープ: Global / Regional
  2. 公開範囲: External / Internal
  3. 方式: 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・ファイルシステムを統合的にバックアップ。

主な特徴:


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 専用

課金単位

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 = ゾーン跨ぎ

主な機能:

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 のネットワーク

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(有向非巡回グラフ) として宣言し、自動実行する仕組み。

簡単な 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+ モデル を統一インターフェースで利用できるカタログ。

含まれるモデル:

利用パターン:

試験頻出: 「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

試験頻出キーワード


次のステップ