
Cloud Run Multi-Region Services: Automatic Failover with Readiness Probes

Google Cloud announced enhanced multi-region support for Cloud Run, adding readiness probes and service health monitoring to simplify high-availability deployments. These capabilities aim to replace manual multi-region failover processes with automatic detection of regional service disruptions. Key features include: 1) Readiness probes that provide instance-level health checks, letting you see exactly when containers are ready to serve and monitor healthy/unhealthy instance counts per region. 2) Service health, which aggregates instance-level health from readiness probes to calculate overall service health per region and exposes this via serverless network endpoint groups (NEGs). When connected to a global external application load balancer (for public internet traffic) or a cross-regional internal load balancer (for private VPC traffic), traffic automatically fails away from unhealthy regions within seconds. The service health feature works with both single-region and multi-region Cloud Run services.
The post outlines two primary use cases: public-facing websites/APIs using a global external load balancer, and private applications with internal traffic using a cross-regional internal load balancer. Design considerations include ensuring no single points of failure (each tier should have regional redundancy), data replication strategy (active-active configurations work best, especially with read- and write-heavy applications that synchronize data across regions), and data residency requirements (Google Cloud multi-region database options like Firestore, Spanner, Cloud Storage, and Cloud SQL are compatible). The enhanced multi-region services are available in all Cloud Run regions at no additional cost; you only pay for the standard CPU and memory used by the readiness probes.


