Ready for the real environment experience?
Kustomize is a tool for customizing Kubernetes configurations, simplifying the rollout and deployment of applications into clusters. It has the following features to manage application configuration files:
- generating resources from other sources
- setting cross-cutting fields for resources
- composing and customizing collections of resources
In this Lab scenario, you'll learn how to use Kustomize Bases and Overlays to deploy 3 different versions (Baseline, Staging, and Production) of the same sample web application into a provided Kubernetes cluster.
Upon completion of this Lab, you will be able to:
- Use Kustomize to deploy a basic web application which has been packaged already into a docker image (hosted on DockerHub).
- Understand how to use configure and work with Kustomize Bases and Overlays
- Use Kustomize to generate 3 different enviroment specific deployments:
- Baseline - the baseline deployment version of the webapp
- Staging - uses a Kustomize overlay to change the baseline deployment settings
- Production - uses a Kustomize overlay to change the baseline deployment settings
- Test and validate the Base, Staging, and Production deployed cluster resources using the curl command and your workstations browser
- Be comfortable with basic Linux command line administration
- Be comfortable with basic Kubernetes and Container based concepts
This Lab will start with the following AWS resources provisioned automatically for you:
- 2 x EC2 instances - each assigned a public IP address:
- ide.cloudacademy.platform.instance - provides a web-based IDE with integrated terminal
- k8s.cloudacademy.platform.instance - provides a fully functional and running Kubernetes cluster
To achieve the Lab end state, you will be walked through the process of:
- Using your local workstation browser to remotely connect to the ide.cloudacademy.platform.instance
- Using the web-based IDE and integrated terminal, you'll complete the remainder of the stated Lab Objectives (above)
Jeremy is the DevOps Content Lead at Cloud Academy where he specializes in developing technical training documentation for DevOps.
He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 20+ years. In recent times, Jeremy has been focused on DevOps, Cloud, Security, and Machine Learning.
Jeremy holds professional certifications for both the AWS and GCP cloud platforms.