dissected.io
Lesson 22 of 23
Advancedadvancedhybrid-cloudmulti-cloudconnectivityportability10 min read

Hybrid Cloud and Multi-Cloud Architecture

No topic in cloud has a wider gap between marketing material and engineering reality than multi-cloud. Vendors sell it as flexibility and freedom. In practice, it usually means running the lowest common denominator of each provider's capabilities at double the operational complexity. That doesn't mean hybrid and multi-cloud are never correct — but you need to be honest about the trade-offs.

Hybrid + Multi-Cloud -- Data Gravity Charges Rent

On-Prem DC

Legacy workloads

Direct Connect

AWS (Primary)

EC2 + RDS

Cross-cloud

Cloud B

App calling DB across clouds

Same Workload: Single-Cloud vs Multi-Cloud

Single-Cloud

App

same VPC

DB

Latency<1ms
Egress$0/mo

Multi-Cloud

App (A)

internet

DB (B)

Latency45ms
Egress$820/mo

Data gravity charges rent on every cross-cloud call

"Portable" Kubernetes -- Leaked Dependencies

EKS

"Portable" workload

ALB Ingress

Ingress controller

EBS / gp3

Storage class

Secrets Manager

Secrets backend

ALB

Load balancer

AWS IAM

IAM bindings

Every amber box is a provider-specific dependency that breaks on migration

Legitimate Pattern: Purpose-Built Poly-Cloud

AWS (Primary)

Core platform

Narrow API

SageMaker

ML training in GCP

Clean, narrow interface to best-in-class service. Not spreading the same workload across clouds.

Multi-cloud for redundancy sounds good until you see the latency and egress bill. Use poly-cloud for purpose, not portability theater.

Definitions

Hybrid cloud means on-premises infrastructure plus public cloud, working together. This is extremely common and often unavoidable. Multi-cloud means using more than one public cloud provider for the same workload or organization. Poly-cloud (less common term) means using different providers for different workloads — your main application on AWS, your data analytics on GCP's BigQuery, your Office 365 on Azure. Poly-cloud is pragmatic and common; true multi-cloud (same workload across providers) is rare and usually painful.

Why Hybrid Actually Happens

Hybrid isn't a choice — it's a reality that most enterprises live with. The reasons are practical, not aspirational.

Existing datacenter investment. You have a $50M datacenter with three years left on the lease. You're not going to abandon it. Migration is gradual — new workloads go to cloud, existing workloads migrate over years.

Data residency and regulation. Some data can't leave specific physical locations. Government, healthcare, and financial services often have requirements that public cloud regions can't satisfy.

Latency. Manufacturing systems, trading platforms, and IoT edge processing need single-digit millisecond latency to physical equipment. The cloud is too far away.

Mainframes. They're still there. They process 95% of ATM transactions. They're not going to cloud. Your cloud applications need to talk to them.

Connectivity

The pipe between your datacenter and the cloud matters enormously. You have two options.

VPN (site-to-site IPsec) runs over the public internet. It's encrypted, cheap, and quick to set up. But bandwidth is limited, latency is variable, and you're sharing the internet with everyone else. Fine for low-volume, non-latency-sensitive traffic. All three providers offer managed VPN gateways.

Dedicated connectivity gives you a private physical connection to the cloud provider's network. AWS Direct Connect, GCP Cloud Interconnect, and Azure ExpressRoute provide 1-100 Gbps links with consistent latency and no internet routing. They cost more (port fees plus partner/colocation fees), take weeks to provision, and require a physical presence in a colocation facility. But for production hybrid workloads, the reliability and performance difference is night and day.

Most enterprises run both — a dedicated connection for production traffic and VPN as a backup path.

AWS Implementation

AWS Outposts brings AWS hardware into your datacenter — actual AWS racks running EC2, EBS, EKS, and other services on-premises, managed by AWS. Your on-prem workloads use the same APIs and tools as cloud workloads. Outposts is expensive and opinionated (it's AWS's hardware, their way), but it eliminates the "two different platforms" problem for hybrid.

Direct Connect provides dedicated connectivity with 1, 10, or 100 Gbps ports. Transit Gateway simplifies routing between VPCs, VPNs, and Direct Connect connections. ECS Anywhere and EKS Anywhere let you run AWS container orchestration on your own hardware.

GCP Implementation

Google Distributed Cloud (formerly Anthos) runs GKE on-premises or at the edge, managed from the GCP console. It's Kubernetes-centric — if your workload runs on GKE, it can run on Distributed Cloud with the same configurations, policies, and observability. Cloud Interconnect provides dedicated connectivity with 10 or 100 Gbps links, or Partner Interconnect for smaller capacities.

GCP's hybrid story is the most Kubernetes-native of the three providers. If you've standardized on Kubernetes, GCP's approach is the most coherent.

Azure Implementation

Azure Arc extends Azure management to any infrastructure — on-premises servers, other clouds, edge locations. It doesn't move workloads; it projects them into Azure's management plane so you can apply Azure Policy, monitor with Azure Monitor, and deploy with Azure Pipelines regardless of where the resource actually runs.

Azure Stack Hub runs a subset of Azure services in your datacenter (full Azure-compatible environment). Azure Stack HCI is a hyperconverged infrastructure solution. ExpressRoute provides dedicated connectivity with the unique benefit of Global Reach — connecting your on-premises locations to each other through Microsoft's backbone.

Side-by-Side Comparison

AspectAWSGCPAzure
On-prem cloud extensionOutpostsGoogle Distributed CloudAzure Stack Hub / HCI
Hybrid managementEKS/ECS AnywhereDistributed Cloud (GKE)Azure Arc
Dedicated connectivityDirect Connect (1-100 Gbps)Cloud Interconnect (10-100 Gbps)ExpressRoute (1-100 Gbps)
VPNSite-to-Site VPNCloud VPNVPN Gateway
Multi-cloud managementLimitedDistributed Cloud multi-cloudAzure Arc (any infrastructure)
PhilosophyAWS everywhereKubernetes everywhereAzure management everywhere

Why Multi-Cloud Is Usually a Bad Idea

The pitch is compelling: avoid lock-in, pick the best service from each provider, negotiate better pricing. The reality is different.

Lowest common denominator. To be portable across providers, you can only use features that exist everywhere. No DynamoDB, no Spanner, no Cosmos DB — just vanilla Postgres on a VM. You give up the managed services that make cloud valuable in the first place.

Multiplied complexity. Your team needs expertise in three IAM models, three networking models, three monitoring stacks. Your IaC manages three sets of providers. Your security team audits three sets of configurations. This isn't double the complexity — it's closer to triple.

Egress between clouds. Sending data between AWS and GCP means paying egress from both providers. At scale, this is prohibitively expensive. Data gravity — the tendency of workloads to cluster around their data — makes multi-cloud architectures naturally unstable.

When Multi-Cloud Is Legitimate

Regulatory mandate. Some government contracts require multi-cloud for resilience. If a regulator says you need it, you need it.

M&A. You acquire a company running on GCP while you're on AWS. Migrating everything immediately is impractical. You'll be multi-cloud for years during the transition.

Genuinely unique services. GCP's BigQuery for analytics, AWS's Lambda@Edge for edge compute, Azure's integration with M365 for enterprise apps. Using a specific provider for a specific capability is pragmatic poly-cloud, not ideological multi-cloud.

Negotiating leverage. Having a credible alternative gives you pricing power. This is real but often overstated — the cost of maintaining that credible alternative may exceed the discount.

Lock-In Honestly

Lock-in is a spectrum, not a binary. At one end: standard Kubernetes on VMs with Postgres — portable, but you're leaving most cloud value on the table. At the other end: DynamoDB + Lambda + Step Functions + EventBridge — deeply integrated, highly productive, but migration would be a rewrite. Most teams should be somewhere in the middle, making the trade-off consciously rather than accidentally.

Kubernetes as a portability layer is partially true and partially a trap. The container orchestration layer is portable. But persistent storage, load balancers, IAM integration, DNS, and every managed service your pods talk to are provider-specific. You'll rewrite your Helm charts, your Terraform, and your CI/CD pipelines. Kubernetes buys you compute portability, not application portability.

Data gravity is the actual anchor. Moving a 50TB database between providers takes days, costs thousands in egress, and requires downtime or complex replication. Your data decides where you live, not your opinions about providers.

Patterns That Work

Single primary cloud plus specific services elsewhere. Run your core platform on AWS, use BigQuery for analytics, use Azure for M365 integration. Don't try to abstract the differences — embrace them. This is honest poly-cloud.

Multi-cloud for SaaS products when customers demand it. If your enterprise customers need your product deployed in their cloud, you build for all three.

Key Takeaways

  • Hybrid cloud (on-prem + cloud) is a pragmatic reality for most enterprises; multi-cloud (same workload across providers) is usually unnecessary complexity
  • Dedicated connectivity (Direct Connect, Interconnect, ExpressRoute) is essential for production hybrid workloads — VPN is fine for backup and low-volume traffic
  • Multi-cloud forces lowest-common-denominator architecture and multiplies operational complexity without proportional benefit
  • Lock-in is a spectrum and a cost/benefit decision — using provider-specific managed services is usually worth the trade-off in productivity
  • Kubernetes provides compute portability but not application portability; everything your pods talk to is still provider-specific
  • Data gravity is the real anchor — your data decides where you run, and moving it is expensive and slow

Next, we'll look at how to make all of this auditable and compliant — cloud governance and compliance.

Enjoyed this breakdown?

Get new lessons in your inbox.