nerdexam
Google

PROFESSIONAL-CLOUD-DEVELOPER · Question #256

You need to deploy an internet-facing microservices application to Google Kubernetes Engine (GKE). You want to validate new features using the A/B testing method. You have the following requirements…

The correct answer is C. 1. Install the Anthos Service Mesh on your GKE cluster. A/B testing requires running two versions simultaneously and splitting real production traffic between them by percentage or header-based rules - not just rolling one version out gradually. Anthos Service Mesh (based on Istio) provides a traffic management layer with…

Deploying and managing applications on GKE

Question

You need to deploy an internet-facing microservices application to Google Kubernetes Engine (GKE). You want to validate new features using the A/B testing method. You have the following requirements for deploying new container image releases:

  • There is no downtime when new container images are deployed.
  • New production releases are tested and verified using a subset of

production users. What should you do?

Options

  • A
    1. Configure your CI/CD pipeline to update the Deployment manifest file by replacing the
  • B
    1. Create a second namespace on GKE for the new release version.
  • C
    1. Install the Anthos Service Mesh on your GKE cluster.
  • D
    1. Implement a rolling update pattern by replacing the Pods gradually with the new release

How the community answered

(36 responses)
  • A
    11% (4)
  • B
    6% (2)
  • C
    81% (29)
  • D
    3% (1)

Explanation

A/B testing requires running two versions simultaneously and splitting real production traffic between them by percentage or header-based rules - not just rolling one version out gradually. Anthos Service Mesh (based on Istio) provides a traffic management layer with VirtualService and DestinationRule resources that enable fine-grained, percentage-based routing between service versions. Both versions run concurrently, satisfying the no-downtime requirement, and a defined subset of real users is sent to the new release. Option A (replacing the Deployment manifest) performs a standard Deployment update - Kubernetes rolls the new image across pods but does not keep the old version alive for side-by-side comparison. Option B (a second namespace) is cumbersome and does not natively provide traffic splitting at the load-balancer level. Option D (rolling update) gradually replaces old pods with new ones, which is zero-downtime but is canary/rolling, not true A/B - both versions are not persistently available for controlled user cohorts.

Topics

#GKE#Service Mesh#A/B Testing#Canary Deployments

Community Discussion

No community discussion yet for this question.

Full PROFESSIONAL-CLOUD-DEVELOPER Practice