Get the FREE Ultimate OpenClaw Setup Guide →

multi-cloud-architecture

npx machina-cli add skill wshobson/agents/multi-cloud-architecture --openclaw
Files (1)
SKILL.md
5.1 KB

Multi-Cloud Architecture

Decision framework and patterns for architecting applications across AWS, Azure, and GCP.

Purpose

Design cloud-agnostic architectures and make informed decisions about service selection across cloud providers.

When to Use

  • Design multi-cloud strategies
  • Migrate between cloud providers
  • Select cloud services for specific workloads
  • Implement cloud-agnostic architectures
  • Optimize costs across providers

Cloud Service Comparison

Compute Services

AWSAzureGCPUse Case
EC2Virtual MachinesCompute EngineIaaS VMs
ECSContainer InstancesCloud RunContainers
EKSAKSGKEKubernetes
LambdaFunctionsCloud FunctionsServerless
FargateContainer AppsCloud RunManaged containers

Storage Services

AWSAzureGCPUse Case
S3Blob StorageCloud StorageObject storage
EBSManaged DisksPersistent DiskBlock storage
EFSAzure FilesFilestoreFile storage
GlacierArchive StorageArchive StorageCold storage

Database Services

AWSAzureGCPUse Case
RDSSQL DatabaseCloud SQLManaged SQL
DynamoDBCosmos DBFirestoreNoSQL
AuroraPostgreSQL/MySQLCloud SpannerDistributed SQL
ElastiCacheCache for RedisMemorystoreCaching

Reference: See references/service-comparison.md for complete comparison

Multi-Cloud Patterns

Pattern 1: Single Provider with DR

  • Primary workload in one cloud
  • Disaster recovery in another
  • Database replication across clouds
  • Automated failover

Pattern 2: Best-of-Breed

  • Use best service from each provider
  • AI/ML on GCP
  • Enterprise apps on Azure
  • General compute on AWS

Pattern 3: Geographic Distribution

  • Serve users from nearest cloud region
  • Data sovereignty compliance
  • Global load balancing
  • Regional failover

Pattern 4: Cloud-Agnostic Abstraction

  • Kubernetes for compute
  • PostgreSQL for database
  • S3-compatible storage (MinIO)
  • Open source tools

Cloud-Agnostic Architecture

Use Cloud-Native Alternatives

  • Compute: Kubernetes (EKS/AKS/GKE)
  • Database: PostgreSQL/MySQL (RDS/SQL Database/Cloud SQL)
  • Message Queue: Apache Kafka (MSK/Event Hubs/Confluent)
  • Cache: Redis (ElastiCache/Azure Cache/Memorystore)
  • Object Storage: S3-compatible API
  • Monitoring: Prometheus/Grafana
  • Service Mesh: Istio/Linkerd

Abstraction Layers

Application Layer
    ↓
Infrastructure Abstraction (Terraform)
    ↓
Cloud Provider APIs
    ↓
AWS / Azure / GCP

Cost Comparison

Compute Pricing Factors

  • AWS: On-demand, Reserved, Spot, Savings Plans
  • Azure: Pay-as-you-go, Reserved, Spot
  • GCP: On-demand, Committed use, Preemptible

Cost Optimization Strategies

  1. Use reserved/committed capacity (30-70% savings)
  2. Leverage spot/preemptible instances
  3. Right-size resources
  4. Use serverless for variable workloads
  5. Optimize data transfer costs
  6. Implement lifecycle policies
  7. Use cost allocation tags
  8. Monitor with cloud cost tools

Reference: See references/multi-cloud-patterns.md

Migration Strategy

Phase 1: Assessment

  • Inventory current infrastructure
  • Identify dependencies
  • Assess cloud compatibility
  • Estimate costs

Phase 2: Pilot

  • Select pilot workload
  • Implement in target cloud
  • Test thoroughly
  • Document learnings

Phase 3: Migration

  • Migrate workloads incrementally
  • Maintain dual-run period
  • Monitor performance
  • Validate functionality

Phase 4: Optimization

  • Right-size resources
  • Implement cloud-native services
  • Optimize costs
  • Enhance security

Best Practices

  1. Use infrastructure as code (Terraform/OpenTofu)
  2. Implement CI/CD pipelines for deployments
  3. Design for failure across clouds
  4. Use managed services when possible
  5. Implement comprehensive monitoring
  6. Automate cost optimization
  7. Follow security best practices
  8. Document cloud-specific configurations
  9. Test disaster recovery procedures
  10. Train teams on multiple clouds

Reference Files

  • references/service-comparison.md - Complete service comparison
  • references/multi-cloud-patterns.md - Architecture patterns

Related Skills

  • terraform-module-library - For IaC implementation
  • cost-optimization - For cost management
  • hybrid-cloud-networking - For connectivity

Source

git clone https://github.com/wshobson/agents/blob/main/plugins/cloud-infrastructure/skills/multi-cloud-architecture/SKILL.mdView on GitHub

Overview

Multi-cloud architecture uses a decision framework and patterns to design applications that span AWS, Azure, and GCP. It helps select services across providers, avoid vendor lock-in, and leverage best-of-breed capabilities. The approach includes cloud-agnostic patterns, abstraction layers (Terraform), and cost-aware strategies.

How This Skill Works

Start with a workload classification, map to compute/storage/database options in each provider using the cloud service comparison, and apply cloud-agnostic patterns (Kubernetes, PostgreSQL, S3-compatible storage). Use an abstraction layer like Terraform to decouple application logic from provider APIs, and implement DR, data replication, and global distribution patterns.

When to Use It

  • Design multi-cloud strategies
  • Migrate between cloud providers
  • Select cloud services for specific workloads
  • Implement cloud-agnostic architectures
  • Optimize costs across providers

Quick Start

  1. Step 1: Define workloads and requirements, then map them to compute/storage/database options across AWS, Azure, and GCP.
  2. Step 2: Compare services using the provided Compute/Storage/Database tables to select appropriate provider capabilities.
  3. Step 3: Implement an abstraction layer (Terraform) and establish DR, monitoring, and cost controls across cloud providers.

Best Practices

  • Define a decision framework to map workloads to provider services based on requirements.
  • Favor cloud-agnostic components where feasible (Kubernetes, PostgreSQL, MinIO-style storage, Redis caches).
  • Use Terraform or similar IaC to abstract infrastructure across clouds.
  • Use S3-compatible storage for portability and cross-cloud data strategies.
  • Implement cross-cloud monitoring and cost controls; plan DR and regional failover.

Example Use Cases

  • A SaaS app runs compute on AWS, enterprise workloads on Azure, and ML workloads on GCP to leverage each provider’s strengths.
  • Disaster recovery across clouds with automated failover, cross-cloud DB replication, and IaC-managed migration paths.
  • Global users served from nearest cloud region using geographic distribution and global load balancing across providers.
  • Cloud-agnostic data plane using PostgreSQL across clouds and MinIO-compatible object storage for portability.
  • Migration path from one provider to another by adopting best-of-breed components and cloud-agnostic abstractions.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers