mcpField
M
multi-cloud-architecture

multi-cloud-architecture

github.com/wshobsonクラウド・DevOps41.9k10.8k 回インストール2 週間前に更新
リポジトリ

multi-cloud-architecture について

AWS、Azure、GCP、OCI を対象とする、クラウドアーキテクトや移行チーム向けの意思決定ガイドです。サービス比較、マルチクラウドパターン、コスト、移行手順を扱います。

主な機能

  1. 01コンピューティング、ストレージ、データベースの比較
  2. 02マルチクラウド構成パターンの整理
  3. 03クラウド非依存設計の選択肢
  4. 04コスト最適化策の説明
  5. 05段階的な移行計画

活用シーン

  1. 01ワークロード向けクラウドサービスの選定
  2. 02クラウド間の災害復旧設計
  3. 03クラウド移行計画の策定
  4. 04プロバイダー間のコスト要因の比較

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/wshobson/agents --skill multi-cloud-architecture

インストール後、Claude Code で/multi-cloud-architectureを入力して読み込まれたか確認します。

同梱ファイルreferences/multi-cloud-patterns.mdreferences/service-comparison.md

詳細

マルチクラウドアーキテクチャ

AWS、Azure、GCP、OCI をまたいでアプリケーションを設計するための意思決定フレームワークとパターンです。

目的

クラウドに依存しないアーキテクチャを設計し、クラウドプロバイダー間でのサービス選定について適切な意思決定を行います。

使用する場面

  • マルチクラウド戦略を設計する
  • クラウドプロバイダー間で移行する
  • 特定のワークロード向けにクラウドサービスを選定する
  • クラウドに依存しないアーキテクチャを実装する
  • プロバイダー間でコストを最適化する

クラウドサービス比較

コンピューティングサービス
AWSAzureGCPOCIユースケース
EC2Virtual MachinesCompute EngineComputeIaaS VM
ECSContainer InstancesCloud RunContainer Instancesコンテナ
EKSAKSGKEOKEKubernetes
LambdaFunctionsCloud FunctionsFunctionsサーバーレス
FargateContainer AppsCloud RunContainer Instancesマネージドコンテナ
ストレージサービス
AWSAzureGCPOCIユースケース
S3Blob StorageCloud StorageObject Storageオブジェクトストレージ
EBSManaged DisksPersistent DiskBlock Volumesブロックストレージ
EFSAzure FilesFilestoreFile Storageファイルストレージ
GlacierArchive StorageArchive StorageArchive Storageコールドストレージ
データベースサービス
AWSAzureGCPOCIユースケース
RDSSQL DatabaseCloud SQLMySQL HeatWaveマネージド SQL
DynamoDBCosmos DBFirestoreNoSQL DatabaseNoSQL
AuroraPostgreSQL/MySQLCloud SpannerAutonomous Database分散 SQL
ElastiCacheCache for RedisMemorystoreOCI Cacheキャッシュ

参考: 完全な比較については references/service-comparison.md を参照してください

マルチクラウドパターン

パターン 1: 単一プロバイダーと DR
  • プライマリワークロードを 1 つのクラウドに配置
  • ディザスタリカバリを別のクラウドに配置
  • クラウド間でのデータベースレプリケーション
  • 自動フェイルオーバー
パターン 2: ベストオブブリード
  • 各プロバイダーから最適なサービスを使用
  • AI/ML は GCP
  • エンタープライズアプリは Azure
  • 規制対象のデータプラットフォームは OCI
  • 汎用コンピューティングは AWS
パターン 3: 地理的分散
  • 最寄りのクラウドリージョンからユーザーにサービスを提供
  • データ主権のコンプライアンス
  • グローバルロードバランシング
  • リージョナルフェイルオーバー
パターン 4: クラウドに依存しない抽象化
  • コンピューティングには Kubernetes
  • データベースには PostgreSQL
  • S3 互換ストレージ (MinIO)
  • オープンソースツール

クラウドに依存しないアーキテクチャ

クラウドネイティブな代替手段を使用する
  • コンピューティング: Kubernetes (EKS/AKS/GKE/OKE)
  • データベース: PostgreSQL/MySQL (RDS/SQL Database/Cloud SQL/MySQL HeatWave)
  • メッセージキュー: Apache Kafka またはマネージドストリーミング (MSK/Event Hubs/Confluent/OCI Streaming)
  • キャッシュ: Redis (ElastiCache/Azure Cache/Memorystore/OCI Cache)
  • オブジェクトストレージ: S3 互換 API
  • モニタリング: Prometheus/Grafana
  • サービスメッシュ: Istio/Linkerd
抽象化レイヤー
Application Layer
    ↓
Infrastructure Abstraction (Terraform)
    ↓
Cloud Provider APIs
    ↓
AWS / Azure / GCP / OCI

コスト比較

コンピューティングの料金要因
  • AWS: オンデマンド、Reserved、Spot、Savings Plans
  • Azure: 従量課金制、Reserved、Spot
  • GCP: オンデマンド、Committed use、Preemptible
  • OCI: 従量課金制、年間コミットメント、バースト可能/フレキシブルシェイプ、プリエンプティブルインスタンス
コスト最適化戦略
  1. 予約済み/コミット済み容量を使用する(30~70% の節約)
  2. スポット/プリエンプティブルインスタンスを活用する
  3. リソースを適正サイズにする
  4. 変動の大きいワークロードにはサーバーレスを使用する
  5. データ転送コストを最適化する
  6. ライフサイクルポリシーを実装する
  7. コスト配分タグを使用する
  8. クラウドコストツールで監視する

参考: references/multi-cloud-patterns.md を参照してください

移行戦略

フェーズ 1: 評価
  • 現在のインフラストラクチャを棚卸しする
  • 依存関係を特定する
  • クラウドとの互換性を評価する
  • コストを見積もる
フェーズ 2: パイロット
  • パイロット対象のワークロードを選定する
  • 対象クラウドに実装する
  • 徹底的にテストする
  • 学びを文書化する
フェーズ 3: 移行
  • ワークロードを段階的に移行する
  • デュアルラン期間を維持する
  • パフォーマンスを監視する
  • 機能を検証する
フェーズ 4: 最適化
  • リソースを適正サイズにする
  • クラウドネイティブサービスを実装する
  • コストを最適化する
  • セキュリティを強化する

ベストプラクティス

  1. Infrastructure as Code を使用する(Terraform/OpenTofu)
  2. デプロイ用の CI/CD パイプラインを実装する
  3. クラウド全体で 障害を想定して設計する
  4. 可能な場合は マネージドサービスを使用する
  5. 包括的な監視を実装する
  6. コスト最適化を自動化する
  7. セキュリティのベストプラクティスに従う
  8. クラウド固有の構成を文書化する
  9. 災害復旧手順をテストする
  10. 複数のクラウドについてチームをトレーニングする

関連スキル

  • terraform-module-library - IaC の実装向け
  • cost-optimization - コスト管理向け
  • hybrid-cloud-networking - 接続性向け

コメント