Kubernetes Essential Training: Application Development
3h 42mIntermediate2020-07-31
Authors

Matt Turner
DevOps Leader, Architect, and Engineer
Course details
Take your Kubernetes knowledge from theory to practice. Learn how to use Kubernetes to develop and run real-world applications. Instructor Matt Turner starts by showing you how to run local clusters, containers, and pods; execute commands; and view activity from the command line as well as the Kubernetes dashboard. Next, discover how to orchestrate practical workloads, including batch workloads with jobs and cron jobs. Matt then shows how to make Kubernetes smarter and safer using the built-in resource management, scheduling, and security tools. He also explores some advanced deployment patterns using namespaces, sidecars, and extensions like operators. Plus, discover tools and techniques to take your Kubernetes development further, such as manifest file generation with Helm, advanced debugging with kubectl commands, and faster and more frictionless deployments with Telepresence.
Topics include:
Running a local cluster
Running containers
Viewing logs
Remotely executing commands
Orchestrating real-world workloads
Batch processing with jobs and cron jobs
Managing resource usage
Keeping containers secure
Advanced deployment patterns
Analyzing traffic
Extending Kubernetes
DRY deployment and debugging tools
Topics include:
Running a local cluster
Running containers
Viewing logs
Remotely executing commands
Orchestrating real-world workloads
Batch processing with jobs and cron jobs
Managing resource usage
Keeping containers secure
Advanced deployment patterns
Analyzing traffic
Extending Kubernetes
DRY deployment and debugging tools
Skills covered
KubernetesDevOps ToolsDevOpsEssential TrainingOpen Source
Concepts
0. Introduction
- 01 - Kubernetes for developers
- 02 - Getting started with Kubernetes
1. Getting Started with Your Cluster
- 03 - Running a local Kubernetes cluster with Minikube
- 04 - Running your first container
- 05 - Serving from your Pod
- 06 - Exposing your Pod to the outside world
- 07 - Handling ingress in Kubenetes
2. Exploring the Cluster
- 08 - Taking a look around with kubectl
- 09 - Viewing logs for pods
- 10 - Remotely executing commands
- 11 - A web view of the cluster with the Kubernetes Dashboard
3. Real-World Workloads
- 12 - Orchestrating real-world workloads with deployments and StatefulSets
- 13 - Safe upgrades with rolling updates and rollbacks
- 14 - Batch processing with jobs and CronJobs
4. Teaching K8s about Your Service
- 15 - Ensuring availability with liveness and readiness probes
- 16 - Managing resource usage with requests and limits
- 17 - The scheduler and influencing container placement
- 18 - Node affinity and anti-affinity
- 19 - The Horizontal Pod Autoscaler (HPA)
- 20 - Providing configuration with ConfigMaps
- 21 - Supplying sensitive data with Secrets
- 22 - Keeping secure with network policies
- 23 - Role-based access control in Kubernetes
- 24 - Working with RBAC
5. Advanced Deployment Patterns
- 25 - Namespaces in Kubernetes
- 26 - Working with namespaces
- 27 - Adding functionality with sidecars
- 28 - Adding a service mesh using sidecars
- 29 - Analyzing traffic with Linkerd
- 30 - Extending Kubernetes with operators and Custom Resource Definitions
6. Development Tools
- 31 - Tools for DRY deployments - Motivation
- 32 - Tools for DRY deployments - Helm
- 33 - Tools for DRY deployments - Kustomize
- 34 - Tools for DRY deployments - Advice
- 35 - Advanced Debugging - kubectl debug
- 36 - Advanced Debugging - nixery.dev
- 37 - Advanced Debugging - kubectl sniff
- 38 - Just like being there - skaffold
- 39 - Just like being there - telepresence
- 40 - Running your clusters
Conclusion
- 41 - Where to find additional information