Question

Difficulty: Very hardRelease Management and Deployment Strategies (Blue-Green, Canary, Rolling)

An enterprise financial application hosted on Compute Engine Regional Managed Instance Groups (MIGs) serves global production traffic behind a Global External Application Load Balancer. The platform engineering team uses an automated CI/CD pipeline to perform blue-green deployments for zero-downtime application updates. The application relies on a Cloud Spanner database whose schema was updated prior to the release using additive, backward-compatible migrations. During the execution of the pipeline, the deployment halts in the provisioning phase while creating the green MIG in the `us-central1` region—before any production traffic is shifted—because instance creation exceeds allowed limits. Which root cause explains why the green environment provisioning failed, and what is the architecturally sound remediation strategy to successfully execute the deployment?

  1. The deployment failed because provisioning a full-capacity green environment alongside the active blue environment requires 200% regional compute resources, exceeding project quota limits. The team must request a regional Compute Engine CPU quota increase in advance of blue-green releases.Answer
  2. B
    The deployment failed because the pre-deployment database schema updates created lock contention on Cloud Spanner tables. The team must roll back the additive schema changes and re-apply non-backward-compatible migrations after shifting traffic to the green MIG.
  3. C
    The deployment failed because Compute Engine MIGs cannot handle parallel deployment strategies. The team must migrate the workload from Compute Engine MIGs to GKE Autopilot clusters to eliminate compute capacity provisioning constraints.
  4. D
    The deployment failed because the load balancer health checks were configured to probe a deep database endpoint. The team must modify the health check to query backend database tables directly during instance startup to confirm data readiness.

Answer

The deployment failed because provisioning a full-capacity green environment alongside the active blue environment requires 200% regional compute resources, exceeding project quota limits. The team must request a regional Compute Engine CPU quota increase in advance of blue-green releases.
Executing a true blue-green deployment strategy requires deploying a complete, fully scaled green environment alongside the active blue environment prior to traffic cutover. This creates a temporary requirement for 200% of standard production capacity. If regional quotas for Compute Engine CPUs, memory, or external IP addresses are strictly sized for single-environment capacity, provisioning the green instance group will fail due to quota limits (`err_gcp_pca_provision_quota_increase_delay`). Requesting regional quota increases in advance resolves this constraint.

Step-by-Step Solution

1
Analyze the blue-green deployment capacity requirements.
Blue-green releases demand running two full production environments simultaneously (100% capacity for Blue + 100% capacity for Green = 200% total regional footprint) until traffic cutover and teardown are complete.
Understanding total peak resource demand during release windows prevents infrastructure provisioning failures.
2
Identify the cause of the provisioning failure during green MIG instantiation.
The failure occurs at the Compute Engine instance allocation layer before traffic cutover due to insufficient regional quota (e.g., `CPUS` or `IN_USE_ADDRESSES`).
GCP projects enforce regional quotas to prevent accidental over-provisioning; 200% capacity bursts must be accounted for in quota planning.
3
Select the correct remediation strategy.
Request regional Compute Engine quota increases in `us-central1` prior to executing full-scale blue-green deployments.
Proactive quota management ensures the green environment can scale to 100% capacity before shifting load from blue.

Key Concept

Regional Quota Management for Parallel Deployment Strategies
Estimated Time:3m 0s
Rate this question