Skip to content

20170330_kubeCon_2.5

20170330_kubeCon_2.5

2 - Presentations

2.5 - Writing a custom controller

Controllers

What is a k8s Controller ?
* A reconsiliation program
* Looping to ensure a state

k8s internal controllers
* Working in k8s-controller-manager

Tiers Controllers
* kube dns
* operatos*
* …

Examples: “Node Reboot operator”

Components:
* Reboot agent (On all nodes)
* Reboot controller
-> Schedule reboot via kubectl reboot ....

Reboot agent
* Daemonset
* Watch node annotations on k8s API: reboot-needed
* Counts “unavailable nodes” on k8s API

Controller
* https://github.com/aaronlevy.kube-controller-demo