A software development company is adopting a continuous integration/continuous delivery (CI/CD) pipeline for its microservices deployed on Google Kubernetes Engine (GKE). They need a solution that can automatically build, test, and deploy container images to GKE, triggered by code changes in their Git repository. The solution must integrate seamlessly with Google Cloud and provide traceability for deployments. Which Google Cloud service combination should you recommend to achieve this?
- ACloud Source Repositories for code, Cloud Functions for build triggers, and GKE for deployments.
- BCloud Pub/Sub for build notifications, Cloud Storage for artifacts, and manually deploying with gcloud.
- CJenkins on Compute Engine for CI/CD, Container Registry for images, and kubectl for deployments.
- DCloud Build for CI/CD, Artifact Registry for container images, and Cloud Deploy for GKE deployments.
Show answer & explanationAnswer & explanation
Correct answer: D. Cloud Build for CI/CD, Artifact Registry for container images, and Cloud Deploy for GKE deployments.
Cloud Build provides automated CI/CD for building and testing. Artifact Registry stores container images securely. Cloud Deploy is specifically designed for continuous delivery to GKE, offering release management and traceability. This combination provides a fully integrated, managed solution.
Why the other options are wrong
- A. Cloud Source Repositories is for code, but Cloud Functions are not a full-fledged CI/CD build system. GKE is the target, not the deployment service.
- B. Cloud Pub/Sub and Cloud Storage are not CI/CD services. Manual deployment with gcloud does not meet the 'automatically deploy' requirement.
- C. Jenkins on Compute Engine requires managing the CI/CD server, which contradicts the 'seamlessly integrated' and 'managed' aspects of a cloud-native solution. Kubectl is a manual tool, not an automated deployment service.
GCP Native CI/CD for GKE
A fully managed CI/CD pipeline on Google Cloud for GKE, leveraging Cloud Build for integration, Artifact Registry for artifacts, and Cloud Deploy for continuous delivery and release management.
- Automates build, test, and deployment processes.
- Provides traceability and roll-back capabilities.
- Integrates seamlessly with GKE and other Google Cloud services.
Memory trick: To build and ship to GKE, Cloud Build makes the box, Artifact Registry stores it, and Cloud Deploy sends it off with a tracking number.