~/talk

K8s controller and CRD patterns in Python - kuryr-kubernetes case study

Talkat OpenInfra Summit 2020 · 2020-10-19..10-23· [kubernetes, python]
links:none on file
links:none on file
links:none on file
slides:none on file

Kuryr-Kubernetes implements Neutron networking and Octavia load balancers for pods, storing state in Kubernetes CRs instead of a DB and avoiding double encapsulation to improve throughput. Python lacks client-go so the project implements a streaming watch API with resourceVersion retries, a watcher that spawns per-resource green-thread queues, and a retry handler with exponential backoff for transient OpenStack failures. Annotations are replaced by CRDs with finalizers so OpenStack resources are created, tracked, and reliably cleaned up.

AI-written summary · about

  1. 0:00Introduction
  2. 0:21Agenda
  3. 1:17K8s controller
  4. 2:09K8s benefits
  5. 4:03Controller loop
  6. 4:52Controller overview
  7. 5:29ClientGo
  8. 5:59Component overview
  9. 11:38Custom resources definition
  10. 13:10Why custom resources definition
  11. 14:23Why we abandoned them
  12. 14:40Annotations
  13. 16:08custom resource definition
  14. 17:21removal of finalizers
  15. 20:02Thank you
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.