The Future of Your CRDs Evolving an API
CustomResourceDefinitions (CRDs) are a cornerstone of many extensions built on-top of Kubernetes. They allow to define custom API objects and the API server will handle their life-cycle. Most APIs st …
Talk Title | The Future of Your CRDs Evolving an API |
Speakers | Mehdy Bohlool (Software Engineer, Google), Stefan Schimanski (Senior Software Engineer, Red Hat) |
Conference | KubeCon + CloudNativeCon North America |
Conf Tag | |
Location | Seattle, WA, USA |
Date | Dec 9-14, 2018 |
URL | Talk Page |
Slides | Talk Slides |
Video | |
CustomResourceDefinitions (CRDs) are a cornerstone of many extensions built on-top of Kubernetes. They allow to define custom API objects and the API server will handle their life-cycle. Most APIs start with one version, but sooner or later need to evolve while keeping compatibility with current clients/users. Kubernetes standard types do that through versioning and conversion between versions. This talk covers the corresponding evolution path for CRD based APIs. The talk will cover: - Why Kubernetes has multiple versions - New feature: CRD Versioning with Conversion - Round-Tripability Concept - How to update schemaless API objects to schemaful - Pruning and how to enable it - Defaulting - How to plan for Master Rollbacks when writing a CRD - Storage version and storage migration - Failure modes - Monitoring and managing a cluster with multi-versions - Kube builder support and Demo