Жизненный цикл объекта в Kubernetes: путь от kubectl apply до полного удаления
Привет. В предыдущих статьях этого цикла мы разбирали, как Kubernetes-объекты читаются ( первая — informer и кэш в controller-runtime ) и записываются ( вторая — Server-Side Apply, patch’и, managedFields ). Сегодня — про их жизненный цикл. Между kubectl apply и появлением объекта в etcd проходит целая цепочка: admission chain, мутирующие и валидирующие вебхуки, schema-валидация, встроенные плагины. Между kubectl delete и реальным исчезновением объекта может пройти от миллисекунд до часов — в зависимости от того, какие на нём финализаторы и какая стратегия каскадного удаления выбрана. Механизм при этом универсален для любого ресурса: Pod, Deployment, ваш CRD — жизненный цикл у всех один. В этой статье я постараюсь ответить, что происходит с объектом от его рождения до смерти. И отдельно поговорим про другое измерение — эволюцию его API-схемы.
https://habr.com/ru/companies/aenix/articles/1040618/
#kubernetes #controllerruntime #api #go #golang #open_sou #platform_engineering #devops #sre #cloud






gihyo.jp


