
Explanation:
The question requires a solution that meets three acceptance criteria: (1) directing traffic from Android devices to an Android-specific microservice, (2) supporting arbitrary percentage-based traffic splitting, and (3) enabling continuous testing of multiple microservice versions. Option D is the best fit because:
user-agent, which can identify Android devices and route them to a specific microservice, satisfying criterion 1.Option A fails criterion 1 because Cloud Run's traffic splitting relies on revision tags, not headers like user-agent, making it unable to target Android devices specifically. Option B uses App Engine with IP-based routing, which lacks header-based routing for Android and doesn't support arbitrary traffic splitting as effectively. Option C uses Compute Engine with Anthos Service Mesh but misses explicit header-based routing for Android; while ASM can configure headers, the option doesn't specify it, and Compute Engine is less optimal for container orchestration compared to GKE.
Ultimate access to all questions.
No comments yet.
Which Google Cloud deployment strategy and platform should you choose for migrating an on-premises containerized web application, given the following requirements:
A
Deploy the canary release of the application to Cloud Run. Use traffic splitting to direct 10% of user traffic to the canary release based on the revision tag.
B
Deploy the canary release of the application to App Engine. Use traffic splitting to direct a subset of user traffic to the new version based on the IP address.
C
Deploy the canary release of the application to Compute Engine. Use Anthos Service Mesh with Compute Engine to direct 10% of user traffic to the canary release by configuring the virtual service.
D
Deploy the canary release to Google Kubernetes Engine with Anthos Service Mesh. Use traffic splitting to direct 10% of user traffic to the new version based on the user-agent header configured in the virtual service.