阅读:4637回复:7
Operator实战第一波:手撸http ingress 网关 (第二波即将开启)
之前k8s基础速学3讲过Operator基础开发篇,我们使用的是kubebuilder.接下来我们开设一系列的实战加强课。本课程是第一波,模拟nginx-ingress开发一个可扩展可自定义的网关。本课程不适合新手。
本课程默认您的golang水平已经到中高级,课程中不会对基础语法进行讲解。 本课程的前置课程 1、 k8s基础速学3 2、k8s可视化系统开发 本课程将实现:类似nginx-ingress的基本功能、反代功能、jwt集成、限流、支持插件编写。功能可以达到生产级使用 本课程分两个大章节 1、使用go 完成一个拥有类似nginx的网关功能,并且支持k8s ingress配置解析 2、开发operator把网关做成控制器集成到k8s中 第二章:http网关的Operator开发 第11讲:创建最基本的控制器和管理器代码 我们今天开始创建控制器。在不使用脚手架的情况下 第12讲:发布Ingress、自定义控制器接收 今天我们初步实现发布ingress 然后可以通过控制器接收 第13讲:crd模式下和控制器的结合方式(选学) 本课程我们不是crd模式。应学员要求我们手工来做一下crd模式下和控制器的结合方法 第14讲:准备工作、网关和控制器同时启动 我们之前做了一个网关 和一个控制器,那么我们先初步(初步)让他们同时启动 第15讲:发布自己的ingress、控制器监听和持久化配置 今天我们开始发布自己的ingress。控制器监听并且触发网关配置持久化 第16讲:发布ingress触发配置重载 沿着上节课,当我们发布ingress后,需要触发我们网关的配置重载。 第17讲:删除ingress触发网关配置重载 今天实现的是删除ingress配置后触发网关配置重载 第18讲:手工简单部署控制器(1)打包镜像 免费试听,无需登录 今天讲一下控制的简单打包方式 第19讲:手工简单部署控制器(2)开发时测试部署、体内访问apiserver 今天演示手工版本的operator如何方便开发级运行和测试 第20讲:手工简单部署控制器(3)为ingress显示Ip Address 免费试听,无需登录 第一波的最后一课。第二波Operator进阶篇 节后开启 第一章:手撸一个简易反代网关 第1讲:开张课、本课程基本架构和内容 免费试听,无需登录 老套路的开张课,讲解下基本技术栈和课程架构 第2讲:集成第三方库初步完成反代功能 今天先把基本结构弄出来。后面会逐步支持ingress的反代功能。 第3讲:初步集成k8s runtime库、配置文件的设计 今天我们开始设计配置文件结构,其中先引入k8s的一个库,第二章要用 第4讲:路由解析(1):结合mux初步完成路由解析 反代网关首先重要的功能是路由解析。今天讲解下思路 第5讲:路由解析(2):支持前缀匹配(上节课课后思考题) 上节课的课后思考题 第6讲:路由解析(3):支持Host匹配 今天我们来完成Host匹配的功能 第7讲:路由解析(4):支持路径重写(rewrite-target) nginx-ingress中有路径重写功能,今天我们也来模拟实现 第8讲:路由解析(5):支持路径重写(上节课代码更正) 上节课代码的补丁课 第9讲:路由解析(6):支持添加请求头过滤器(练习课) 免费试听,无需登录 有了我们前面的代码架构,今天我们来完成请求头过滤器的实现 第10讲:路由解析(7):支持添加响应头过滤器 应学员要求我们加一节课时演示下响应头过滤器怎么开发 (为了维护正版学员的利益:本课程部分关键细节会故意隐藏,需要VIP1对1口头讲解,部分代码故意留坑,因此购买盗版会浪费您大量时间和金钱,支持正版是我们永远录下去的动力) |
|
|
7楼#
发布于:2021-10-04 02:15
第一波完结,第二波即将开启 (我们的课程永远不会完结)
|
|
|