Welcome!
We are excited to introduce a five lesson hands-on course to learn the basics of Kubernetes. This introductory course includes exercises and tutorials that will guide you through deploying a cluster, launching your first app, storage, monitoring, logging, and getting started with CI/CD. As well as Kubernetes, we’ll be using other popular & emerging technologies such as NGINX, Prometheus, Jenkins, and more. We also provide optional readings on key Kubernetes concepts along the way. Sign up below to join the course.
Lesson 1: Deploy Your First Cluster
You’ll get started immediately by deploying your first Kubernetes cluster.
Interactive Exercises:
- Create free account using Platform9’s free managed Kubernetes service
- Deploy your first cluster on AWS, Azure, Bare Metal or VMs
- Add users to build a team [optional]
Optional Reading:
- Deploying Kubernetes: Kubernetes Deployment from Scratch, Networking Concerns, Lifecycle Management, Configuration and Add-ons
Lesson 2: Deploy Your First App
You’ll deploy your first application with NGINX as a ‘hello world’ example. You’ll also set up persistent storage which will lay the foundations for later lessons.
Interactive Exercises:
- Deploy NGINX ingress controller
- Deploy CSI with Rook and Ceph to set up persistent storage
Optional Reading:
- Kubernetes Architecture and Concepts: Kubernetes Control Plane, Cluster Nodes, Pods and Services, Kubernetes Services, Kubernetes Networking, Persistent Storage in Kubernetes, Discovering and Publishing Services in Kubernetes, Namespaces, Labels, and Annotations
Lesson 3: Enable Monitoring
You’ll set up monitoring for your Kubernetes clusters using Prometheus and popular open source tools.
Interactive Exercises:
- Enable Prometheus and Grafana
- Explore Monitoring Dashboard–Grafana and Prometheus
- Review Cluster Health Dashboard
- Integrate Alertmanager with Slack and Prometheus(optional)
Optional Reading:
- RBAC, Monitoring, Logging, Storage, & More [Part 1]: Giving Users Access, Monitoring and Ensuring Cluster Health, Monitoring and Ensuring Application Health
Lesson 4: Enable App Logging
Kubernetes presents unique challenges for application logging. In this lesson you’ll set up the popular EFK (Elasticsearch + Fluentd + Kibana) logging solution.
Interactive Exercises:
- Deploy EFK Stack for App Logging
- Setting up multi-cluster logging
- Enable Debug Logging for Docker Daemon
Optional Reading:
- Logging & Monitoring of Kubernetes Applications: Requirements & Recommended Toolset
- Kubernetes Logging and Monitoring [Parts 1 & 2]: The Elasticsearch, Fluentd, and Kibana (EFK) Stack
- Kubernetes Logging Best Practices
- Fluentd vs. Logstash
Lesson 5: CI/CD with Jenkins
CI/CD is one of the most popular use cases for Kubernetes. In this lesson you’ll get started with CI/CD using Jenkins for Continuous Integration.
Interactive Exercises:
- Deploy Jenkins on your Kubernetes clusters
Optional Reading:
- Top Use Cases for Kubernetes: Simple Deployment of Stateless Applications, Deploy Stateful Data Services, CI/CD Platform with Kubernetes