name: multi-cloud-architecture
description: Design multi-cloud architectures using a decision framework to select and integrate services across AWS, Azure, and GCP. Use when building multi-cloud systems, avoiding vendor lock-in, or leveraging best-of-breed services from multiple providers.
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
- Use reserved/committed capacity (30-70% savings)
- Leverage spot/preemptible instances
- Right-size resources
- Use serverless for variable workloads
- Optimize data transfer costs
- Implement lifecycle policies
- Use cost allocation tags
- 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
- Use infrastructure as code (Terraform/OpenTofu)
- Implement CI/CD pipelines for deployments
- Design for failure across clouds
- Use managed services when possible
- Implement comprehensive monitoring
- Automate cost optimization
- Follow security best practices
- Document cloud-specific configurations
- Test disaster recovery procedures
- 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
SKILL.md (मूल)
---
name: multi-cloud-architecture
description:
---
---
name: multi-cloud-architecture
description: Design multi-cloud architectures using a decision framework to select and integrate services across AWS, Azure, and GCP. Use when building multi-cloud systems, avoiding vendor lock-in, or leveraging best-of-breed services from multiple providers.
---
# 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