Kubernetes Practical By Samson Tanimawo, PhD Published Feb 12, 2026 4 min read

CRD Design Best Practices

Custom resources: design for evolution.

Schema

OpenAPI v3 schema. Validates inputs.

Required fields; defaults; enums.

Status

Separate spec from status. Spec = desired; status = observed.

Standard pattern.

Evolve

Versioning v1alpha1 → v1beta1 → v1. Conversion webhooks for migration.

Plan before launch.