Question

Difficulty: HardRelease Management and Deployment Strategies

An enterprise organization operates a web microservice on a Compute Engine Managed Instance Group (MIG) placed behind an External Application Load Balancer. The site reliability engineering team needs to implement a release management policy that supports automated progressive rollout based on real-time HTTP 5xx telemetry, allowing automatic rollback if health thresholds are breached. Furthermore, the accompanying CI/CD automation pipeline must maintain Infrastructure as Code (IaC) state securely without risk of state corruption, while observing strict least-privilege identity controls. Which deployment strategy and configuration should the cloud architect recommend?

  1. Configure a canary release using MIG instance template versioning with target pools and Cloud Monitoring alerts for automated rollback. Configure the CI/CD pipeline to store Terraform state in a Cloud Storage bucket backend with object versioning and state locking enabled, using granular predefined IAM roles for deployment execution.Answer
  2. B
    Execute a blue-green MIG replacement by provisioning an entirely new MIG and immediately updating the load balancer backend service target. Commit the generated Terraform state file directly into the application Git repository version control, and grant the pipeline service account the primitive Owner role to prevent pipeline permission errors.
  3. C
    Perform an in-place rolling update on the existing MIG instances with maximum surge set to zero. Store the Terraform state file in Cloud Storage with object versioning enabled, and grant the deployment service account the primitive Editor role to simplify infrastructure management.
  4. D
    Re-architect the stateless microservice to run on Google Kubernetes Engine (GKE) with Anthos Service Mesh to manage traffic splitting rules, while storing the Terraform state file in unversioned local runner disk storage to accelerate pipeline execution speeds.

Answer

The recommended solution is to use a canary release with MIG instance template versioning combined with Cloud Monitoring alerts for automated rollbacks, alongside a Cloud Storage backend with object versioning and state locking using granular IAM roles.
The correct strategy combines native Compute Engine MIG instance template versioning for progressive canary releases with Cloud Monitoring for automated health monitoring and rollback. Storing Terraform state in Google Cloud Storage with object versioning and state locking secures IaC state against race conditions and state loss, while granular predefined IAM roles preserve security governance.

Step-by-Step Solution

1
Define the canary deployment strategy using Compute Engine MIG instance templates
Allows incremental traffic allocation to new application versions with real-time monitoring of error metrics.
MIGs support target pools and dual-version instance templates to safely test new software releases in production.
2
Implement Cloud Storage remote backend for IaC state management
State file is stored securely with object versioning and lock management enabled.
Prevents concurrent execution conflicts and data corruption during automated CI/CD pipeline runs.
3
Enforce least-privilege security controls on deployment service accounts
Limits pipeline privileges to required infrastructure management tasks only.
Avoids security risks associated with assigning broad primitive IAM roles like Owner or Editor.

Key Concept

Release Management and Deployment Strategies
Rate this question