01_基礎

Section 1: アーキ設計と計画 — 📘 基礎編

対象: 実務 1-2 年・GCP 初学者 / クラウドアーキテクチャの考え方を初めて学ぶ人。 目標: 6 柱の Well-Architected を理解し、主要サービスの役割と選定軸を把握する。


1. クラウドソリューションアーキテクチャとは何か

アーキテクチャ設計の役割

クラウドアーキテクトは、ビジネス課題技術ソリューション に翻訳する人です。例えば:

ビジネス課題 技術ソリューション例
「夜間バッチが朝までに終わらない」 Dataflow に並列化、または BigQuery に移行
「グローバル展開で 100ms 以内に応答したい」 Spanner + Global LB + Cloud CDN
「コストを 30% 削減したい」 Spot VMs + Committed Use Discounts + Right-sizing
「監査要件で全アクセスログを 7 年保存」 Cloud Audit Logs + Cloud Storage Archive

設計プロセスの 5 ステップ

1. 要件定義  →  2. 設計  →  3. 検証  →  4. 移行/構築  →  5. 運用・改善
   ↓             ↓           ↓             ↓                ↓
ヒアリング    アーキ図     PoC          段階移行       継続改善
KPI/ROI      サービス選定  テスト       本番リリース   コスト最適化

2. Google Cloud Well-Architected Framework

GCP のアーキテクチャ判断は、必ずこの 6 本の柱 を判断軸として使います。

6 本の柱

観点 代表的な判断例
Operational Excellence(運用上の卓越性) 自動化・観測可能性・継続的改善 Cloud Monitoring SLO、Cloud Logging、IaC
Security(セキュリティ) IAM・暗号化・コンプライアンス IAM 最小権限、CMEK、VPC SC
Reliability(信頼性) SLO・冗長化・DR マルチリージョン、HA VPN、PITR
Performance Optimization(性能最適化) レイテンシ・スループット Premium Tier、Cloud CDN、近接性
Cost Optimization(コスト最適化) TCO、コミットメント Committed Use、Spot、Autoclass
Sustainability(持続可能性) カーボンフットプリント リージョン選定、効率化

トレードオフの考え方

6 柱は 互いに競合する ことがあります。例:

トレードオフ
信頼性 vs コスト マルチリージョン化(コスト 2-3 倍)⇔ 単一リージョン
性能 vs セキュリティ 全リクエスト DLP 検査(遅延増)⇔ サンプリング検査
運用容易性 vs 柔軟性 Cloud Run(簡単)⇔ GKE(柔軟だが運用負担)

設計判断には常にトレードオフがある ことを意識し、ビジネス価値を最大化 する選択をします。


3. 要件定義(ビジネス要件 vs 技術要件)

ビジネス要件(Business Requirements)

何を達成したいか を表す要件。

例:

技術要件(Technical Requirements)

どう実現するか を制約する要件。

例:

機能要件 vs 非機能要件

種類 内容
機能要件 システムが「何を」するか ユーザー登録、注文処理
非機能要件 (NFR) システムが「どのように」するか 性能、可用性、セキュリティ、保守性

試験で頻出: NFR を必ず特定 して、それに応じたサービス選定をする。


4. ネットワーク設計の基礎

VPC(Virtual Private Cloud)

GCP のネットワーク基盤。プロジェクト横断のグローバルリソース で、リージョン間を内部通信できます。

プロジェクト
  └─ VPC ネットワーク(グローバル)
      ├─ サブネット(リージョン A: 10.0.1.0/24)
      ├─ サブネット(リージョン B: 10.0.2.0/24)
      ├─ ファイアウォール ルール
      └─ ルート

ネットワーク接続方式

方式 用途 帯域・SLA
Dedicated Interconnect 大規模・高速接続 10 Gbps / 100 Gbps、SLA 99.99%
Partner Interconnect 中規模・パートナー経由 50 Mbps – 50 Gbps
Cloud VPN (HA VPN) 中小規模・暗号化 最大 3 Gbps/トンネル、SLA 99.99%
Cloud VPN (Classic VPN) レガシー SLA 99.9%(HA VPN を推奨)

Shared VPC vs VPC Peering vs Private Service Connect

方式 用途 特徴
Shared VPC 組織内の複数プロジェクトでネットワーク共有 ホストプロジェクト + サービスプロジェクトの集中管理
VPC Peering 異なる VPC 間の接続 1:1 接続、推移性なし
Private Service Connect (PSC) サービス側エンドポイント公開 プライベート IP でマネージドサービスにアクセス

5. ストレージ設計の基礎

ストレージ選定マトリクス

あなたのデータは?
├── オブジェクト(ファイル、画像、動画、バックアップ)
│   └── Cloud Storage
│       ├── Standard(頻繁アクセス)
│       ├── Nearline(30日以上アクセスなし、月1回程度)
│       ├── Coldline(90日以上、四半期に1回)
│       └── Archive(365日以上、年1回)
│
├── 共有ファイルシステム(NFS/SMB)
│   └── Filestore
│
├── ブロックストレージ(VM 用ディスク)
│   └── Persistent Disk / Hyperdisk
│
├── リレーショナル
│   ├── 単一リージョン
│   │   └── Cloud SQL (MySQL/PostgreSQL/SQL Server)
│   └── グローバル、強整合性
│       └── Spanner
│
├── ドキュメント / モバイル同期
│   └── Firestore
│
├── ワイドカラム / 時系列・IoT
│   └── Bigtable
│
├── キャッシュ
│   └── Memorystore (Redis/Memcached)
│
└── 分析 / DWH
    └── BigQuery

Cloud Storage のストレージクラス

クラス アクセス頻度 最低保持期間 取り出し料金
Standard 頻繁 なし 無料
Nearline 月 1 回 30 日 あり
Coldline 四半期 1 回 90 日 あり
Archive 年 1 回 365 日 高い

Autoclass を有効化すると、アクセスパターンに応じて GCS が自動でクラス変更してくれます(手動管理不要)。


6. コンピュート設計の基礎

コンピュート選定フローチャート

ステートフル(VM 状態を保持) or 自由な OS が必要?
  YES → Compute Engine(IaaS)
  NO ↓

Kubernetes が必要?
  YES → GKE(コンテナオーケストレーション)
        ├── Autopilot: 完全マネージド、Pod 単位課金
        └── Standard: ノード管理あり、柔軟
  NO ↓

ステートレス HTTP・イベント駆動?
  YES → Cloud Run / Cloud Run functions
        ├── Cloud Run: コンテナベース、HTTP / イベント駆動
        └── Cloud Run functions: 関数ベース、軽量(旧 Cloud Functions)
  NO ↓

Web/モバイルアプリで、Google プラットフォーム標準でOK?
  YES → App Engine(PaaS)

コンピュート選定マトリクス

サービス 抽象度 スケーリング 課金 用途
Compute Engine IaaS 手動/Auto VM 単位(秒課金) レガシー移行、特殊 OS、GPU/TPU
GKE コンテナ K8s Pod/Node Pod 単位(Autopilot)/ Node 単位 マイクロサービス、複雑なオーケストレーション
Cloud Run コンテナ Serverless 0〜1000+ リクエスト課金 ステートレス HTTP、API、Web
Cloud Run functions 関数 Serverless 0〜N 呼出回数 + 実行時間 イベント駆動、軽量処理
App Engine PaaS 0〜N インスタンス時間 レガシー Python/Java Web

Spot VM vs Standard VM

項目 Spot VM Standard VM
価格 最大 91% 割引 通常
中断 24 時間以内に終了の可能性 中断なし
用途 バッチ、CI/CD、Spark、ML 学習 本番アプリ、DB
再起動 自動再起動なし あり

7. データ移行の基礎

移行方法(データ量別)

データ量 方法 期間
< 1 TB gcloud / gsutil で直接アップロード 数時間
1-10 TB Storage Transfer Service(オンライン) 数日
10-100 TB Storage Transfer Service(オンライン)+ 専用線 1-2 週
> 100 TB Transfer Appliance(物理デバイス郵送) 数週間

Database Migration Service

オンプレ・他クラウドの DB を Cloud SQL / Spanner に 最小ダウンタイムで移行 するサービス。

サポート対象:


8. AI/ML 統合の基礎

Vertex AI

GCP の ML プラットフォーム。データ準備 → 学習 → デプロイ → 監視 を統合管理。

Vertex AI の主要機能
├── AutoML(コードなしで学習)
├── Custom Training(独自モデル学習)
├── Pipelines(ML ワークフローオーケストレーション)
├── Feature Store(特徴量管理)
├── Workbench(Jupyter 環境)
├── Model Registry(モデル管理)
└── Model Garden(事前学習モデルのカタログ)

Gemini と Model Garden

AI Hypercomputer(最新追加)

大規模 AI 学習・推論のためのスーパーコンピュータ製品。

構成要素:

Gemini Cloud Assist(最新追加)

GCP コンソール内に組み込まれた AI アシスタント


9. コスト最適化の基礎

コスト最適化の 5 つの観点

  1. Right-sizing: VM サイズ・スペックを実需に合わせる(Recommender が提案)
  2. コミットメント: 1-3 年契約で 30-55% 割引(Committed Use Discounts)
  3. Spot 活用: 中断許容可能なワークロードを Spot に
  4. 自動スケール: アイドル時にスケールダウン(GKE Autopilot / Cloud Run / Autoscaling MIG)
  5. ストレージ階層化: GCS Autoclass、BigQuery のパーティション/クラスタリング

コスト見える化のツール


10. まとめ — 設計の判断フロー

1. ビジネス要件をヒアリング
   ↓
2. 機能要件 + 非機能要件 (NFR) を整理
   ↓
3. Well-Architected の 6 柱で各要件を分類
   ↓
4. 各レイヤーでサービス選定
   - ネットワーク (VPC / Interconnect / LB)
   - コンピュート (GCE / GKE / Cloud Run / functions)
   - ストレージ (GCS / Cloud SQL / Spanner / BigQuery / Bigtable / Firestore)
   - AI/ML (Vertex AI / Gemini / Model Garden)
   ↓
5. トレードオフを言語化(コスト vs 信頼性 vs 性能 vs 運用容易性)
   ↓
6. ROI/KPI で成功基準を定義
   ↓
7. 移行/構築計画(6R: Rehost/Replatform/Refactor/Repurchase/Retain/Retire)
   ↓
8. 運用・改善計画(Operational Excellence の柱)

次のステップ