Materials by Kaloyan Preslavski

Tutorials, challenges, courses, skill paths, playgrounds, and more — search the whole library in one place.

Challenge

Kubernetes - Dynamic Provisioning with StorageClass

Explore how the DefaultStorageClass admission controller injects storage classes, explicitly name a StorageClass, switch the cluster default, and inspect where local-path stores volumes on the node.

Challenge

Kubernetes - PersistentVolume Static Binding Patterns

Learn the three static PV binding patterns - generic match, label selector, and bidirectional claimRef - then use a no-provisioner StorageClass with WaitForFirstConsumer to pin storage to a specific node.

Challenge

Kubernetes - emptyDir Volumes: Sharing, Lifecycle, and Memory-Backed Storage

Use emptyDir volumes to share data between containers, understand the volume lifecycle across container restarts and pod deletion, and explore memory-backed ephemeral storage.

See all challenges →
Skill Path

Kubernetes Storage: From Ephemeral to Persistent

Four hands-on challenges covering the full storage stack. Start with emptyDir, move to dynamic provisioning with StorageClass, explore static PV binding patterns including label selectors, bidirectional claimRef, and topology-aware local volumes, then finish with PV reclaim policies and data recovery.

See all skill paths →