0PricingLogin
Docker & Kubernetes for Developers · Lesson

Custom Resource Definitions (CRDs)

Extend Kubernetes functionality by defining your own custom resources to manage domain-specific objects.

Extend Kubernetes API

Welcome! In this lesson, we'll explore Custom Resource Definitions (CRDs). CRDs allow you to extend Kubernetes by defining your own custom resource types.

Think of it as teaching Kubernetes new words and concepts, so it can manage application-specific objects just like it manages built-in ones like Pods or Deployments.

Why Custom Resources?

Kubernetes provides powerful primitives like Pods, Deployments, and Services. But what if your application needs to manage a unique kind of object, like a database cluster, a serverless function, or a custom build pipeline?

  • Domain-Specific Objects: Define resources tailored to your application's unique needs.
  • Abstraction: Simplify complex application deployments into a single, manageable resource.
  • Kubernetes Native: Leverage Kubernetes's declarative API, tooling (kubectl), and watch mechanisms for your custom objects.

All lessons in this course

  1. Custom Resource Definitions (CRDs)
  2. The Operator Pattern in Kubernetes
  3. Serverless with Kubernetes (Knative)
  4. Extending the API Server with Admission Webhooks
← Back to Docker & Kubernetes for Developers