Module 7: Extending Kubernetes with CRDs
What You Will Learn
By the end of this module, you will understand:
- How CRDs extend the Kubernetes API to create custom resource types
- Designing a custom resource schema with OpenAPI v3 validation
- Creating and managing custom resources with kubectl
- Status subresources for reporting resource state
- How CRDs set the foundation for Operators (Module 8)
Prerequisites
Before starting this module, ensure you have:
- KIND cluster running
- kubectl installed and configured
- Familiarity with Kubernetes resource model (pods, deployments, services)
Overview
Every kubectl command you have used so far—kubectl get pods, kubectl get deployments, kubectl get services—works because those resource types are built into the Kubernetes API. But what if you could define your OWN resource types? What if kubectl get voteconfigs worked just like kubectl get pods? That is exactly what Custom Resource Definitions give you.
Time Estimate
- Reading: 15 minutes
- Lab: 45 minutes
- Quiz: 15 minutes
- Total: ~80 minutes
Difficulty
Intermediate-Advanced