
k8s自定义controller实战及源码
介绍了informer、indexer的源码,讲述了如何实现一个自定义controller
相隔一个图书馆的距离
一个2023年7月刚参加工作的菜鸡,此博客充当工作笔记
展开
-
(四)clientset、dynamic client源码阅读
分两步,第一步获取unstructedList形式的对象,此时每个对象都是unstructed的即未知的;第二步是手动把unstructedList中的unstructed对象解析成指定对象。总结:以clientset podWatch为例。2.1:dynamic client创建。1.1:clientset创建过程。原创 2024-03-05 15:42:57 · 393 阅读 · 0 评论 -
(三)Indexer源码阅读
代码基于k8s v1.23queue是一个提供fifo能力的store接口,indexer是一个提供索引功能的store接口,cache.cache是indexer的一个实例,cache.cache的存取操作以及index功能的实现都是委托于内部的threadSafeMap,所以本文以cache.cache结构体为剖析对象本文内容: 1:cache.Index和threadSafeMap.Index函数。通过分析,彻底理解k8s indexer机制 2:cache.Add操作详解。通过分析,巩固理解原创 2024-02-29 14:20:24 · 183 阅读 · 0 评论 -
(二)informer源码阅读
k8s版本基于v1.23本文分析了informer的相关源码,当读完本文读者就应该可以了解到一个要实现一个自定义controller,应该做一些什么事情。文章内容如下: 1:informer创建流程 2:informer.AddEventHandler添加处理函数 3:informer启动流程 !!! 4:informer.Lister 5:等待informer同步完成 6:自定义controller笔记原创 2024-02-28 16:44:54 · 573 阅读 · 0 评论