Kubernetes Labs
📋 Lab Overview
Welcome to the hands-on Kubernetes labs! This comprehensive series of labs will guide you through essential Kubernetes concepts and advanced topics.
🗂️ Available Labs
Foundation Labs
| Lab | Topic | Description |
| 00 | Verify Cluster | Ensure your Kubernetes cluster is properly configured |
| 01 | Namespace | Learn to organize resources with namespaces |
| 02 | Deployments (Imperative) | Create deployments using kubectl commands |
| 03 | Deployments (Declarative) | Create deployments using YAML manifests |
| 04 | Rollout | Manage deployment updates and rollbacks |
| 05 | Services | Expose applications with Kubernetes services |
Storage & StatefulSets
| Lab | Topic | Description |
| 06 | DataStore | Work with persistent storage in Kubernetes |
| 09 | StatefulSet | Deploy stateful applications |
| 12 | WordPress MySQL PVC | Complete stateful application with persistent storage |
Networking & Ingress
| Lab | Topic | Description |
| 07 | Nginx Ingress | Configure ingress controllers for external access |
| 10 | Istio | Implement service mesh for microservices |
Configuration Management
| Lab | Topic | Description |
| 08 | Kustomization | Manage configurations with Kustomize |
| 13 | Helm Chart | Package and deploy applications with Helm |
GitOps & CI/CD
| Lab | Topic | Description |
| 18 | ArgoCD | Implement GitOps with ArgoCD |
Observability
| Lab | Topic | Description |
| 14 | Logging | Centralized logging with Fluentd |
| 15 | Prometheus & Grafana | Monitoring and visualization |
| 23 | Metric Server | Resource metrics collection |
Advanced Topics
| Lab | Topic | Description |
| 11 | Custom Resource Definition | Extend Kubernetes API with CRDs |
| 16 | Affinity, Taint & Toleration | Control pod scheduling |
| 17 | Pod Disruption Budgets | Ensure availability during disruptions |
| 19 | Custom Scheduler | Build custom scheduling logic |
| 20 | CronJob | Schedule recurring tasks |
| 21 | Auditing | Track cluster activities |
| 21 | Kube API | Work with Kubernetes API |
| 24 | Helm Operator | Manage Helm releases with operators |
| 25 | Kubebuilder | Build Kubernetes operators |
| Lab | Topic | Description |
| 22 | Rancher | Multi-cluster management platform |
| 26 | k9s | Terminal-based Kubernetes UI |
| 27 | Krew | kubectl plugin manager |
| 28 | Kubeapps | Application dashboard for Kubernetes |
| 29 | Kubeadm | Bootstrap Kubernetes clusters |
| 30 | k9s (Advanced) | Advanced k9s usage |
🧠 Practice Tasks
| Task Category | Description |
| Kubernetes CLI Tasks | Hands-on exercises for CLI, debugging, and orchestration |
🎯 Learning Path
Beginner Track
Start here if you’re new to Kubernetes:
1. Lab 00: Verify Cluster
2. Lab 01: Namespace
3. Lab 02: Deployments (Imperative)
4. Lab 03: Deployments (Declarative)
5. Lab 05: Services
For those with basic Kubernetes knowledge:
1. Lab 04: Rollout
2. Lab 06: DataStore
3. Lab 07: Nginx Ingress
4. Lab 08: Kustomization
5. Lab 13: Helm Chart
Advanced Track
For experienced Kubernetes users:
1. Lab 10: Istio
2. Lab 11: Custom Resource Definition
3. Lab 18: ArgoCD
4. Lab 19: Custom Scheduler
5. Lab 25: Kubebuilder
💡 Tips for Success
- Take your time: Don’t rush through the labs
- Practice regularly: Repetition builds muscle memory
- Experiment: Try variations of the examples
- Read the docs: Kubernetes documentation is excellent
- Join the community: Engage with other learners
🚀 Get Started
Ready to begin? Click on any lab on the left menu, or start with Lab 00: Verify Cluster!