江哥架构师笔记

路漫漫其修远兮
吾将上下而求索

按时间排序目录 第2页

控制器:自定义控制器

本文主要介绍如何为 CRD 资源编写自定义的控制器 介绍 上节课我们已经学习了如何使用 code-generator 来进行代码自动生成,通过代码自动生成可以帮我们自动生成 CRD 资源对象客户端访问的 ClientSet、Informer...

控制器:代码生成器

本文主要介绍如何使用代码生成器为 CRD 资源自动生成代码 介绍 上节课我们介绍了 CRD 的使用,了解到 CRD 仅仅是一种资源的定义而已,需要一个对应的控制器去监听 CRD 的各种事件来添加自己的业务逻辑才有实际意义,接下来我们就来介绍...

控制器:CRD 介绍

本文主要介绍 CRD 资源对象的使用 介绍 前面我们讲解了很多关于 client-go 的实现,也介绍了如何使用 client-go 来创建一个控制器,但是我们前面介绍的都是 Kubernetes 中内置的资源对象,比如 Pod、Deplo...

控制器:编写控制器

本文主要介绍如何使用 WorkQueue 来编写控制器 介绍 Kubernetes 控制器是一个主动调谐的过程,它会 watch 一些对象的期望状态,也会 watch 实际的状态,然后,控制器发送一些指令尝试让对象的当前状态往期望状态迁移。...

client-go:WorkQueue 源码分析

本文主要对 WorkQueue 组件进行分析说明。 介绍 前面我们把 Informer 的整个流程完整分析了一遍,我们可以通过监听对象的变化,将资源对象写入到事件处理器的回调函数中,但是如果我们直接在回调函数中处理这些数据会比较慢,对于这种...

client-go:Shared Informer 源码分析

本文主要对 SharedInformer 组件进行分析说明。 介绍 上节课我们分析了 Indexer 组件的实现,实际上最开始的时候我们在 Informer 示例中通过 Informer 的 Lister 获取的资源对象数据就来自于 Ind...

client-go:Indexer 源码分析

本文主要对 Informer 中的 Indexer 组件进行分析说明。 介绍 上节课我们讲到 DeltaFIFO 中的元素通过 Pop 函数弹出后,在指定的回调函数中将元素添加到了 Indexer 中。Indexer 是什么?字面意思是索引...

client-go:DeltaFIFO 源码分析

本文主要对 Informer 中的 DeltaFIFO 组件进行分析说明。 介绍 上节课我们讲到 Reflector 中通过 ListAndWatch 获取到数据后传入到了本地的存储中,也就是 DeltaFIFO 中。从 DeltaFIFO...

client-go:Reflector 源码分析

本文主要对 Informer 中的 Reflector 组件进行分析说明。 前面我们说了 Informer 通过对 APIServer 的资源对象执行 List 和 Watch 操作,把获取到的数据存储在本地的缓存中,其中实现这个的核心功能...

client-go:clientset使用

介绍 Clientset 是调用 Kubernetes 资源对象最常用的客户端,可以操作所有的资源对象。 前面我们说了在 staging/src/k8s.io/api 下面定义了各种类型资源的规范,然后将这些规范注册到了全局的 Scheme...