Extending Kubernetes 101
summary
Shows how to design a CRD schema, run Kubernetes 1.8’s code generators to produce a strongly typed clientset/informers/deepcopy set, implement an operator in Go with simple add update delete handlers, build a Go binary, containerize with Docker, load the image into Minikube and run it with a ServiceAccount, ClusterRole and Deployment. Demo verifies the controller logs on create/update/delete. Notes that Rook implements five CRDs and operator-kit is used for boilerplate.
AI-written summary · about
chapters (39)
- 0:00Introduction
- 0:30Agenda
- 1:25Declarative resources
- 1:52namespace
- 2:10pod
- 2:48custom resources
- 3:37Etsy D operator
- 5:07Prometheus operator
- 6:53Traditional approach
- 8:08Natural approach
- 9:07Consistency
- 9:38Controller
- 10:43Define
- 11:55Custom Controller
- 13:20Runtime
- 13:58Coop Cuddle
- 14:34Sample Manifest
- 15:25World Property
- 16:01Land of Code
- 16:16GitHub
- 16:29Types Go
- 17:17Sample Type
- 17:56Sample List
- 20:24Sample Project
- 21:11Sample Resource
- 22:25Simple Hello World Application
- 23:27Update
- 23:51Code Generator
- 24:23Run Code Generator
- 25:35Go Binary
- 25:47Docker Container
- 26:17Docker Build
- 26:54Running Container
- 27:22Running Operator
- 27:57Running Sample Operator
- 28:39Create Sample Resource
- 29:23Sample Operator
- 30:08Sample Editor
- 31:46Summary
related talks
48mKubernetes as backend: CRD & Operators
47mLet's dive into Kubernetes operator creation
40mExtending K8s- Introducing Custom Resources, Controllers, Operators & Schedulers
55mIntroduction to Kubernetes Operators
28mKubernetes CRD Design for the Long Haul: Tips, Tricks, and Lessons Learned
48mKUBERNETES EXTENSIBLE MODEL EXPLAINED: CRDS AND OPERATORS
31mKubernetes Operators within Reach of Any Developer
26mWriting Kubernetes Controllers for CRDs: Challenges, Approaches and Solutions
