Chuyển đến nội dung chính

レッスン 22: インフラストラクチャと DevOps — Kubernetes、CI/CD、マルチリージョン

Fashion POD の運用インフラストラクチャ — Kubernetes クラスター設計、CI/CD GitOps、マルチリージョン展開、シークレット管理、IaC、コストの最適化。

🏗️ アーキテクチャ — レッスン 22 レッスン 22: インフラストラクチャと DevOps — Kubernetes、CI/CD、マルチリージョン

ファッション デザインとプリント オン デマンド システム アーキテクチャ — ドメイン分析から生産まで

パート 7: 運用、セキュリティ、スケール

xdev.asia

1. Kubernetes クラスターの設計

Cluster
  ├─ Node Pool: General apps (API, web)
  ├─ Node Pool: Workers (rendering, queues)
  ├─ Node Pool: GPU (AI inference)
  └─ Node Pool: Data plane add-ons
  • ドメインで区切られた名前空間: `core`、 `ai`、 `ops`、 `data`
  • CPU/RAM/キュー深度に応じた HPA
  • PodDisruption重要なサービスの予算

2. CI/CD + GitOps

Git push
  -> CI (test/lint/build/security scan)
  -> Build image + SBOM
  -> Push registry
  -> Update manifest repo
  -> ArgoCD sync to cluster
  -> Progressive rollout (canary)
// Example deployment strategy
strategy:
  type: RollingUpdate
  rollingUpdate:
    maxSurge: 25%
    maxUnavailable: 0

3. 秘密と IaC

  • シークレット: Vault/外部シークレット オペレーター
  • IaC: ネットワーク、クラスター、DB、CDN 用の Terraform モジュール
  • コードとしてのポリシー: OPA/ゲートキーパー

4. マルチリージョン展開

地域役割
米国プライマリトラフィック + AI 推論
EUデータ常駐 + 低遅延 EU
アジア太平洋地域の店舗 + 非同期ワーカー
Routing: Geo DNS + health checks
Data: primary region + read replicas + async replication
Failover: RTO < 30 min, RPO < 5 min

5. コストの最適化

  • バッチ ワーカーのスポット インスタンス
  • 断続的なジョブによるゼロへのスケールアップ
  • 安定したワークロードのための予約容量
  • 画像の最適化 + CDN オフロードによる下り送信の削減

6. まとめ

  • 階層型クラスター パフォーマンスとコストの最適化に役立ちます

  • GitOps 制御とロールバック能力の向上

  • マルチリージョン グローバルに展開する場合は重要な要件です

  • コストの最適化 最初から設計する必要がある