multi-cloud-architecture
AWS、Azure、GCP、OCIにまたがるサービスの選定と統合を意思決定フレームワークに基づいて設計するマルチクラウドアーキテクチャスキルです。マルチクラウド構成の構築、特定ベンダーへの依存回避、複数プロバイダーのベストサービスを組み合わせた活用を検討する際に使用してください。
description の原文を見る
Design multi-cloud architectures using a decision framework to select and integrate services across AWS, Azure, GCP, and OCI. Use when building multi-cloud systems, avoiding vendor lock-in, or leveraging best-of-breed services from multiple providers.
SKILL.md 本文
マルチクラウドアーキテクチャ
AWS、Azure、GCP、OCI にわたるアプリケーション設計のための決定フレームワークとパターン。
目的
クラウドに依存しないアーキテクチャを設計し、複数のクラウドプロバイダー間でのサービス選定について情報に基づいた決定を行う。
使用場面
- マルチクラウド戦略の設計
- クラウドプロバイダー間での移行
- 特定のワークロードに適したクラウドサービスの選定
- クラウドに依存しないアーキテクチャの実装
- プロバイダー間でのコスト最適化
クラウドサービス比較
コンピュートサービス
| AWS | Azure | GCP | OCI | ユースケース |
|---|---|---|---|---|
| EC2 | Virtual Machines | Compute Engine | Compute | IaaS VM |
| ECS | Container Instances | Cloud Run | Container Instances | コンテナ |
| EKS | AKS | GKE | OKE | Kubernetes |
| Lambda | Functions | Cloud Functions | Functions | サーバーレス |
| Fargate | Container Apps | Cloud Run | Container Instances | マネージドコンテナ |
ストレージサービス
| AWS | Azure | GCP | OCI | ユースケース |
|---|---|---|---|---|
| S3 | Blob Storage | Cloud Storage | Object Storage | オブジェクトストレージ |
| EBS | Managed Disks | Persistent Disk | Block Volumes | ブロックストレージ |
| EFS | Azure Files | Filestore | File Storage | ファイルストレージ |
| Glacier | Archive Storage | Archive Storage | Archive Storage | コールドストレージ |
データベースサービス
| AWS | Azure | GCP | OCI | ユースケース |
|---|---|---|---|---|
| RDS | SQL Database | Cloud SQL | MySQL HeatWave | マネージド SQL |
| DynamoDB | Cosmos DB | Firestore | NoSQL Database | NoSQL |
| Aurora | PostgreSQL/MySQL | Cloud Spanner | Autonomous Database | 分散 SQL |
| ElastiCache | Cache for Redis | Memorystore | OCI Cache | キャッシング |
参考: 完全な比較については references/service-comparison.md を参照してください。
マルチクラウドパターン
パターン 1: 単一プロバイダー + DR
- 1 つのクラウドでプライマリワークロードを実行
- 別のクラウドでディザスタリカバリ
- クラウド間でのデータベースレプリケーション
- 自動フェイルオーバー
パターン 2: ベストオブブリード
- 各プロバイダーから最高のサービスを使用
- GCP の AI/ML
- 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: オンデマンド、リザーブド、スポット、Savings Plans
- Azure: 従量課金制、リザーブド、スポット
- GCP: オンデマンド、確約利用割引、プリエンプティブル
- OCI: 従量課金制、年間コミットメント、バースト可能/柔軟なシェイプ、プリエンプティブルインスタンス
コスト最適化戦略
- リザーブド/コミット容量を使用 (30~70% 削減)
- スポット/プリエンプティブルインスタンスを活用
- リソースの適切なサイジング
- 変動ワークロードにサーバーレスを使用
- データ転送コストを最適化
- ライフサイクルポリシーを実装
- コスト配分タグを使用
- クラウドコストツールで監視
参考: references/multi-cloud-patterns.md を参照してください。
移行戦略
フェーズ 1: 評価
- 現在のインフラストラクチャをインベントリ化
- 依存関係を特定
- クラウド互換性を評価
- コストを推定
フェーズ 2: パイロット
- パイロットワークロードを選定
- ターゲットクラウドに実装
- 徹底的にテスト
- 学習内容を文書化
フェーズ 3: 移行
- ワークロードを段階的に移行
- デュアルラン期間を維持
- パフォーマンスを監視
- 機能を検証
フェーズ 4: 最適化
- リソースを適切なサイズに変更
- クラウドネイティブサービスを実装
- コストを最適化
- セキュリティを強化
ベストプラクティス
- Infrastructure as Code を使用 (Terraform/OpenTofu)
- デプロイメント用の CI/CD パイプラインを実装
- クラウド間での障害を想定した設計
- 可能な限りマネージドサービスを使用
- 包括的なモニタリングを実装
- コスト最適化を自動化
- セキュリティベストプラクティスに従う
- クラウド固有の構成を文書化
- ディザスタリカバリー手順をテスト
- 複数のクラウドについてチームをトレーニング
関連スキル
terraform-module-library- IaC 実装向けcost-optimization- コスト管理向けhybrid-cloud-networking- 接続性向け
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- wshobson
- リポジトリ
- wshobson/agents
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/wshobson/agents / ライセンス: MIT
関連スキル
superpowers-streamer-cli
SuperPowers デスクトップストリーマーの npm パッケージをインストール、ログイン、実行、トラブルシューティングできます。ユーザーが npm から `superpowers-ai` をセットアップしたい場合、メールまたは電話でサインインもしくはアカウント作成を行いたい場合、ストリーマーを起動したい場合、表示されたコントロールリンクを開きたい場合、後で停止したい場合、またはソースコードへのアクセスなしに npm やランタイムの一般的な問題から復旧したい場合に使用します。
catc-client-ops
Catalyst Centerのクライアント操作・監視機能 - 有線・無線クライアントのリスト表示・フィルタリング、MACアドレスによる詳細なクライアント検索、クライアント数分析、時間軸での分析、SSIDおよび周波数帯によるフィルタリング、無線トラブルシューティング機能を提供します。MACアドレスやIPアドレスでのクライアント検索、サイト別やSSID別のクライアント数集計、無線周波数帯の分布分析、Wi-Fi信号の問題調査が必要な場合に活用できます。
ci-cd-and-automation
CI/CDパイプラインの設定を自動化します。ビルドおよびデプロイメントパイプラインの構築または変更時に使用できます。品質ゲートの自動化、CI内のテストランナー設定、またはデプロイメント戦略の確立が必要な場合に活用します。
shipping-and-launch
本番環境へのリリース準備を行います。本番環境へのデプロイ準備が必要な場合、リリース前チェックリストが必要な場合、監視機能の設定を行う場合、段階的なロールアウトを計画する場合、またはロールバック戦略が必要な場合に使用します。
linear-release-setup
Linear Releaseに向けたCI/CD設定を生成します。リリース追跡の設定、LinearのCIパイプライン構築、またはLinearリリースとのデプロイメント連携を実施する際に利用できます。GitHub Actions、GitLab CI、CircleCIなど複数のプラットフォームに対応しています。
tracking-application-response-times
API エンドポイント、データベースクエリ、サービスコール全体にわたるアプリケーションのレスポンスタイムを追跡・最適化できます。パフォーマンス監視やボトルネック特定の際に活用してください。「レスポンスタイムを追跡する」「API パフォーマンスを監視する」「遅延を分析する」といった表現で呼び出せます。