Back to Architecture & Design Patterns

multi-cloud-architecture

multi-cloudawsazuregcpcloud architecturevendor lock-incloud strategysolution design
36.8k📄 MIT🕒 2026-06-16Source ↗

Install this skill

npx skills add wshobson/agents

Works across Claude Code, Cursor, Codex, Copilot & Antigravity

Multi-cloud architecture provides a structured framework for deploying software systems across heterogeneous environments, including AWS, Azure, and GCP. Rather than relying on a single vendor's ecosystem, this approach focuses on portability, risk mitigation, and operational flexibility. It emphasizes the use of abstraction layers—such as Kubernetes for orchestration and open-source database engines like PostgreSQL—to minimize provider-specific locking. By standardizing infrastructure through tools like Terraform, engineering teams can maintain consistent configurations across different cloud backends. The framework balances the trade-offs between utilizing specialized vendor-native services and maintaining cloud-agnostic compatibility. This method addresses complex requirements like geographic data sovereignty, regulatory compliance, and disaster recovery strategies, ensuring that workloads remain operational regardless of the underlying cloud provider's availability or pricing volatility.

When to Use This Skill

  • Building resilient applications with active-passive disaster recovery across different providers
  • Deploying geographically distributed workloads to satisfy localized data residency mandates
  • Executing a best-of-breed strategy by mapping specific AI/ML tasks to GCP while running backend services on Azure
  • Modernizing legacy systems by migrating incrementally to containerized environments

How to Invoke This Skill

Example prompts that trigger this skill in Claude Code, Cursor, or Antigravity:

  • How do I migrate my EKS cluster to GKE?
  • Compare AWS RDS, Azure SQL, and Google Cloud SQL for a distributed database
  • Design a multi-cloud disaster recovery strategy for my web app
  • What are the best practices for managing cross-cloud storage costs?
  • Show me a Terraform pattern for an agnostic compute deployment

Pro Tips

  • 💡Always account for data egress costs when designing multi-cloud data strategies; these can quickly erode cost savings from leveraging multiple providers.
  • 💡Prioritize common services and open standards (e.g., Kubernetes, serverless functions, PostgreSQL) that have similar patterns across clouds, making your architecture more portable.
  • 💡Implement a unified identity and access management (IAM) strategy across all cloud providers using tools like Okta or Azure AD to simplify governance and security.

What this skill does

  • Maps equivalent compute, storage, and database services across AWS, Azure, and GCP
  • Orchestrates cross-cloud disaster recovery and automated failover sequences
  • Abstracts infrastructure deployment using provider-neutral IaC standards
  • Optimizes global cost structures by balancing committed usage and spot instance pricing
  • Integrates cross-provider monitoring and observability patterns

When not to use it

  • Startups with limited engineering headcount and small, simple workloads
  • Projects requiring tight integration with specialized, proprietary cloud-native features

Example workflow

  1. Assess current cloud dependencies and identify platform-specific services
  2. Standardize on container orchestration and open-source database engines
  3. Implement Infrastructure as Code using Terraform to define cross-provider resources
  4. Deploy a pilot workload to a secondary provider to test connectivity and performance
  5. Configure global load balancing and monitoring across all environments
  6. Finalize cost allocation tagging and lifecycle policies for data management

Prerequisites

  • Proficiency in infrastructure-as-code tools like Terraform
  • Foundational knowledge of Kubernetes and containerization
  • Basic understanding of networking protocols across major cloud providers

Pitfalls & limitations

  • !Increased operational complexity due to managing multiple identity and access management systems
  • !Higher egress costs incurred by moving data between different cloud regions and providers
  • !Diluted expertise as engineering teams must maintain proficiency across multiple cloud consoles

FAQ

Does multi-cloud architecture mean I should use every cloud provider at once?
No. It is a strategic decision. You should only use multiple providers if it solves a specific requirement like compliance, disaster recovery, or accessing specialized services.
How can I avoid cloud provider lock-in?
The most effective approach is to adopt standard open-source tools like Kubernetes for compute, PostgreSQL for data, and S3-compatible storage APIs to ensure your application code remains portable.
What is the biggest hidden cost in a multi-cloud setup?
Data egress fees are often the most significant hidden cost. Transferring large volumes of data between providers can quickly consume your operational budget.

How it compares

While manual management requires juggling vendor-specific consoles and distinct CLI tools, this framework provides a unified, codified strategy that standardizes deployment, security, and monitoring across all environments.

Source & trust

37k stars📄 MIT🕒 Updated 2026-06-16
📄 Full skill instructions — original source: wshobson/agents
# 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

| AWS | Azure | GCP | Use Case |
| ------- | ------------------- | --------------- | ------------------ |
| EC2 | Virtual Machines | Compute Engine | IaaS VMs |
| ECS | Container Instances | Cloud Run | Containers |
| EKS | AKS | GKE | Kubernetes |
| Lambda | Functions | Cloud Functions | Serverless |
| Fargate | Container Apps | Cloud Run | Managed containers |

### Storage Services

| AWS | Azure | GCP | Use Case |
| ------- | --------------- | --------------- | -------------- |
| S3 | Blob Storage | Cloud Storage | Object storage |
| EBS | Managed Disks | Persistent Disk | Block storage |
| EFS | Azure Files | Filestore | File storage |
| Glacier | Archive Storage | Archive Storage | Cold storage |

### Database Services

| AWS | Azure | GCP | Use Case |
| ----------- | ---------------- | ------------- | --------------- |
| RDS | SQL Database | Cloud SQL | Managed SQL |
| DynamoDB | Cosmos DB | Firestore | NoSQL |
| Aurora | PostgreSQL/MySQL | Cloud Spanner | Distributed SQL |
| ElastiCache | Cache for Redis | Memorystore | Caching |

**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

How to Use This Skill Unit

Option A: Project-Specific (Recommended)

  1. Click "Download" above
  2. In your project, create the directory: .agent/skills/multi-cloud-architecture/
  3. Save the file as SKILL.md
  4. The agent will automatically discover the skill based on its description.

Option B: Global Installation (All Agents)

Save the file to these locations to make it available across all projects:

  • Claude Code: ~/.claude/skills/wshobson/agents/multi-cloud-architecture/SKILL.md
  • Cursor: ~/.cursor/skills/wshobson/agents/multi-cloud-architecture/SKILL.md
  • Antigravity: ~/.gemini/antigravity/skills/wshobson/agents/multi-cloud-architecture/SKILL.md

🚀 Install with CLI:
npx skills add wshobson/agents

Read the Master Guide: Mastering Agent Skills

Recommended Rules

View more rules

Recommended Workflows

View more workflows

Recommended MCP Servers

View more MCP servers

Take It Further

Maximize your productivity with these powerful resources

📋

Define Your Standards

Set up coding standards to ensure this workflow produces consistent, high-quality results.

Browse Rules Library
📖

Master Workflows

Learn how to create custom workflows, use Turbo Mode, and build your automation library.

Complete Guide

How to use this Skill in Claude Code & Cursor

For Claude Code (CLI)

To use this skill in Claude Code, copy the rule content into your project's custom instructions or follow our Add-Skill CLI guide. This ensures Claude follows your standards during every code generation.

For Cursor & Windsurf

For Cursor or Windsurf, individual skills are best used in the "Rules for AI" section. This specific unit helps the agent avoid architecture & design patterns issues, leading to cleaner, more efficient code.

Why the skill format matters: the standardized Agent Skills format lets your AI agent load detailed instructions only when they are relevant, keeping your prompt clean while improving results.

Source & attribution

This skill is categorized under Architecture & Design Patterns and is published by W. Shobson, maintained in wshobson/agents.

← Browse All Agent Skills
Sponsored AI assistant. Recommendations may be paid.