You get browser-accessible, hands-on environments that run real Kubernetes clusters. This lets you practice commands and debugging without installing or paying for cloud resources.
What you’ll learn in this module
- Container basics and running multiple containers locally
- Mapping containers and volumes for simple app topologies
- Reading and editing static pod manifests (control plane components)
- Common control-plane troubleshooting workflows using kubectl
- Practical debugging techniques you can use in production clusters
Example: running multiple containers locally
Run example application containers (detached):The
--link flag is a legacy Docker feature. For modern local development and production deployments, prefer user-defined Docker networks or service discovery mechanisms. Using --link can introduce brittle dependencies between containers.Kubernetes manifests and control-plane troubleshooting
Below is an example snippet of a static pod manifest (illustrative; e.g., a kube-scheduler static pod). It mounts a kubeconfig, uses host networking, and sets a cluster-critical priority class.Common diagnostic workflow on a control-plane node
When a control-plane component (like kube-scheduler) fails to come up, a typical workflow is:- Inspect and edit the static pod manifest (e.g., fix paths, permissions, or config flags):
- Check pod status in the
kube-systemnamespace to see current state and events:
kubectl describe, kubectl logs, and node-level checks (file permissions, SELinux/AppArmor contexts, and hostPath validity) to systematically identify and resolve issues.
Links and references
- Kubernetes Documentation
- Docker Documentation
- Kubernetes Scheduling
- kube-scheduler static pods and manifests (example)