Kubernetes Assignment: Building Cloud-Native CI/CD Pipeline and Deploying Workload to Google Kubernetes Engine (GKE)
This assignment evaluates your understanding of containerization, CI/CD pipelines, and Google Kubernetes Engine (GKE) by developing a cloud-native application on Google Cloud Platform (GCP). You'll demonstrate proficiency in Docker, CI/CD practices, and Kubernetes concepts.
- Containerize applications using Docker.
- Build a code deployment pipeline with GCP tools.
- Utilize Kubernetes and GCP console/IaC (e.g., Terraform) to create clusters and deploy applications on GKE.
- Attach persistent volumes to GKE clusters for data storage.
- Use Kubernetes tools (e.g., kubectl) for container interaction, status checking, and cluster diagnostics.
- Implement application update strategies and version control in GKE.
- Gain experience in developing REST APIs.
- Develop two microservices in a programming language of your choice, capable of interacting with each other.
- Create a CI/CD pipeline for deploying services to GKE.
- Configure persistent volumes in GKE for data storage accessible to both microservices.
- Utilize GCP services like Cloud Source Repository (similar to Gitlab), Artifact Registry (similar to Docker Hub), and GKE for deployment.
This assignment challenges you to apply your knowledge of Docker, CI/CD, and Kubernetes to build and deploy a cloud-native application on GKE.