This device is not compatible.
PROJECT
Deploying a Scalable Web App on gcloud via YAML Configurations
In this project, we’ll deploy a scalable Django application on the gcloud cluster using YAML configurations. The application will be accessible through a global IP address and will provide zero downtime and auto-repair.
You will learn to:
Write YAML configurations for different types of application deployment.
Write YAML files for exposing NodePort and Ingress services against deployment.
Create zero-downtime deployment using YAML configuration and rolling updates using YAML files.
Enable horizontal pod autoscaling and auto-repair for application.
Skills
DevOps
Cloud Deployment
Auto Scaling Applications
Prerequisites
GCP paid account
Basic understanding of YAML files
Basic understanding of Kubernetes
Technologies
YAML
kubectl
Kubernetes
gCloud CLI
Project Description
Due to its simplicity and readability, YAML is the preferred standard for writing configurations for Kubernetes by DevOps developers and system administrators. It’s a de facto standard for writing configurations for Kubernetes. It consists of key-value pairs organized as a list where the hierarchy is established using indentation.
This project will deploy a simple Django application on the Google Cloud Platform through gcloud, Kubernetes CLI, and YAML configurations. The project incorporates a range of tasks to facilitate the deployment and maintenance of applications, ensuring seamless and high-performing experiences for end users, and also shows how to add powerful capabilities like zero-downtime deployments, rolling updates, and rollback procedures through YAML configuration files. It establishes a robust version tracking system to monitor changes, updates, and modifications to applications. It also integrates horizontal pod autoscaling (HPA) via YAML, automatically adjusting resources based on application demand. Additionally, services are exposed using NodePort and load balancer in the YAML configuration to ensure that applications remain accessible to users, even as they scale and evolve. The project also incorporates YAML-based ReplicaSets and automatic repair mechanisms to maintain application reliability.
Project Tasks
1
Introduction
Task 0: Getting Started
Task 1: Containerize the Application
Task 2: Authenticate with gcloud CLI
Task 3: Deploy and Connect with a GKE Cluster
2
Application and Service Deployment
Task 4: Deploy an Application Using YAML Configuration
Task 5: Create a NodePort Service
Task 6: Connect with the Application
Task 7: Create a ReplicaSet
Task 8: Perform Resource Self-Healing
3
Zero-Downtime Deployments
Task 9: Configure Zero-Downtime Deployment
Task 10: Perform Rolling Updates
Task 11: Roll Back Updates
Task 12: Roll Back a Failed Deployment
4
Horizontal Pod Autoscaling
Task 13: Horizontal Pod Autoscaling Using YAML Manifest
Task 14: Define the HPA controller
Task 15: Perform Load Testing
Task 16: Clean Up Resources
Congratulations!
Relevant Courses
Use the following content to review prerequisites or explore specific concepts in detail.