G/co/crd/setup -

apiVersion: stable.example.com/v1 kind: DatabaseBackup metadata: name: nightly-backup spec: backupSchedule: "0 2 * * *" retentionDays: 7 Apply it:

April 14, 2026 Reading time: 5 minutes Introduction If you’ve been working with Kubernetes for a while, you’ve likely heard about Custom Resource Definitions (CRDs). They allow you to extend Kubernetes’ API and create your own resource types, just like pods or services. g/co/crd/setup

Double-check the schema section in your CRD — the structure must match exactly. apiVersion: stable

Now go ahead, create your first custom resource, and extend your cluster’s API with confidence. Now go ahead, create your first custom resource,

kubectl get crd | grep databasebackups kubectl explain databasebackup You should see your new resource type available. Now that the CRD exists, create an instance of your custom resource ( my-backup.yaml ):