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?
- 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
- BExecute 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.
- CPerform 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.
- DRe-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
Key Concept
Release Management and Deployment Strategies