阅读:5699回复:2
k8s api扩展之:聚合API实战入门
本课程是k8s基础速学3的单独子课程,主要讲解的是k8s另外一个api扩展方式:聚合API(之前讲过crd)。新课程会大量使用聚合API开发扩展应用、多集群应用等。 本课程不适合新手。
聚合API有哪些场景? 举3个例子 一、耳熟能详的metrics server ,它就是实现了 /apis/metrics.k8s.io/ 这个聚合API 。使得我们可以 使用kubectl top 命令来查看 节点和pod的指标 二、多集群开发 : 譬如我们有三个集群A,B,C ,在A集群 执行 kubectl get ipods ,就可以把 三个集群的PODS都给列出来 三、高度封装k8s api 。 有些项目不允许用户直接使用client-go请求k8s。 通过聚合API做封装。让用户访问特定的API来获取资源。常见于一些云商的系统 本课程做一个入门教学,分两章 讲解实际应用。 并为我们后面的多集群开发 打下基础。 本课程不适合新手,课件需要向讲师私人索要。由于不可描述的原因,课程里会故意留坑。 VIP学员一对一口述讲解 第三章:聚合API高级编程 第16讲:本地启动小型k8s api server 的基础代码 今天进入第三章,真正完整的聚合API需要启动一个小型的APIServer,今天先从最基本代码开始 第17讲:kubectl 访问本地小型k8s api server 沿着上节课,我们使用kubectl 对我们上节课的apiserver进行基本操作 第18讲:使用etcd作为后端存储的代码改造 后面我们重点使用etcd作为后端存储,今天讲一下基本套路 第19讲:etcd作为存储(2) 实现增删改查 有了上节课基础,我们来初步实现增删改查 第20讲:结合OpenAPI 处理基本验证 今天讲的是验证 第21讲:扩展(1): 创建k8s资源时修改内容 这个功能在webhook中也有,今天我们在聚合API中也模拟一下 每周更新1-2课时 第二章:进阶案例-Ingress增强资源 第9讲:创建自定义资源类型”实体类”(ingress) 今天开始我们来实现进阶案例,通过聚合API来增强Ingress的操作 第10讲:表格化列表展示(通用转换函数) 免费试听 写个通用的转化函数用于显示 资源列表 第11讲:使用真实Ingress数据转化为自定义资源并展现 今天我们要做的是把k8s自带Ingress资源转化为我们自己的MyIngress资源 第12讲:获取自定义Ingress资源和失败处理的套路 今天我们来演示下当获取自定义资源失败时的处理套路 第13讲:新增自定义Ingress资源(1):无脑新增 重点来了:新增。这里面有很多细节需要处理,今天先处理无脑新增 第14讲:新增自定义Ingress资源(2):同步创建Ingress资源 今天完成资源同步代码 第15讲:新增自定义Ingress资源(3):apply操作的实现(演示课、选学) 手工实现apply的操作 第一章:最粗暴的理解和编码 第1讲:开张课、聚合API的学习指引 免费试听 老套路的开张课。我们讲下聚合API的基本概念和学习指引 第2讲:编写最简单聚合API服务(上):基本代码 为了让大家能够快速上手,我们弄了一个特别low但是简单高效的代码帮助大家理解和编码 第3讲:编写最简单聚合API服务(下):编译和部署 把我们上节课的low代码给部署了。 后面开始逐步扩展内容点。 如遇观看问题,请加群联系讲师 第4讲:编写最简聚合api(3):获取自定义资源列表 今天我们用最简单的代码来模拟实现资源列表 第5讲:编写最简聚合api(4):根据namespace获取自定义资源列表(上节课后作业) 免费试听 上节课课后作业,支持namespace模式获取自定义资源列表 第6讲:编写最简聚合api(5):简单获取资源详细 今天给大家演示下获取资源详细的过程 第7讲:编写最简聚合api(6):让kubectl打印出自定义字段 当我们使用kubectl打印资源时可以设置我们想要的字段作为列。CRD中可以通过配置,那么aa里用啥呢? 第8讲:编写最简聚合api(7):简单模拟支持标签选择器 今天让我们的聚合API支持标签选择器 |
|
最新喜欢:![]()
|