Question

Difficulty: MediumDesigning Infrastructure for Technical Requirements and High Availability

A smart building automation enterprise is migrating its central IoT telemetry processing API to Google Cloud. The API consists of lightweight, stateless RESTful HTTP microservices with standard relational database storage requirements confined to a single geographic region. The solution must achieve high availability across multiple availability zones, automatically scale during traffic bursts, guarantee seamless failover during zonal outages, and minimize both operational management overhead and baseline infrastructure costs. Which architectural design best satisfies these technical requirements?

  1. Deploy the stateless REST microservices to Cloud Run across multiple zones within the region, and configure Regional Cloud SQL with high availability (HA) standby in a secondary zone for the relational database.Answer
  2. B
    Deploy the stateless REST microservices on a GKE Autopilot cluster spanning multiple zones, and store persistent telemetry data in a Regional Cloud SQL instance.
  3. C
    Deploy the stateless REST microservices to Cloud Run and provision a multi-region Cloud Spanner instance to store the relational telemetry data.
  4. D
    Deploy the stateless REST microservices on Compute Engine Managed Instance Groups across multiple zones, using CPU utilization exclusively as the autoscaling metric to handle database connection bottlenecks.

Answer

Deploying the stateless microservices on Cloud Run combined with a Regional Cloud SQL High Availability (HA) configuration satisfies all high availability, auto-scaling, and single-region relational storage requirements while minimizing operational overhead and cost.
The design pairing Cloud Run with Regional Cloud SQL High Availability fulfills high availability across zones, provides automatic scaling for bursty HTTP workloads, guarantees automatic database failover, and minimizes both infrastructure management effort and costs.

Step-by-Step Solution

1
Evaluate compute requirements against operational overhead and scaling needs.
Cloud Run is selected because it natively handles stateless HTTP microservices, scales automatically across multiple zones, and eliminates cluster management overhead.
GKE adds unnecessary management complexity for simple stateless APIs, while Compute Engine requires manual autoscaling configuration and infrastructure maintenance.
2
Evaluate database requirements against high availability and geographic scope.
Regional Cloud SQL with High Availability (HA) failover is selected.
The workload is confined to a single region and requires standard relational database storage. Cloud SQL HA provides automatic synchronous replication to a standby instance in a secondary zone. Cloud Spanner would be over-engineered for a single-region deployment.

Key Concept

Designing Minimal-Overhead Regional High Availability (Cloud Run + Cloud SQL HA)
Rate this question