这门课到底在解决什么工作场景

很多团队把 Istio 引入生产环境后,往往会卡在一个尴尬的节点:原生的流量路由、熔断和重试策略基本能满足日常需求,但一旦遇到定制化的网络层逻辑,比如按特定业务规则改写请求头、在网格边缘做自定义鉴权、或者植入非标准的可观测性打点,单纯改 Istio 配置就不够用了。硬写 Lua 或者改 Ingress Gateway 源码又太重,维护成本极高。这门课聚焦的 WebAssembly 扩展,就是用来填这个坑的。它解决的核心场景是:在不侵入业务代码、不改动 Istio 原生源码的前提下,用 WASM 插件的方式给网格做轻量级的二次开发,让定制逻辑能跟着网格一起热更新。

适合什么基础与建议先看的模块

这门课不是给零基础准备的。资料里的开篇也写得很直白:它建立在已有 Istio 基操和原理课的基础上。如果你连 VirtualService、DestinationRule 都没动手配过,或者不知道 Envoy Filter 是怎么挂载的,建议先去补基础。对于已经能在测试环境跑通 Istio 基本路由的运维或后端开发,建议先把基操复习那几节过一遍,尤其是 Gateway API 的四件套和 Filter 简单用法。这部分看着像回顾,但它其实是后续写 WASM 扩展时理解流量拦截点的关键。很多插件写完不生效,问题不在 WASM 代码,而是没搞懂请求在 Gateway 层是怎么被层层过滤的。把这几节吃透,再去看具体的 WASM 开发章节,逻辑会顺畅很多。

学完能独立做什么与资料配合练习

学完之后,你应该能在团队里独立承担一件事:写一个可用的 WASM 插件,编译成对应文件,挂到 Istio 的 Ingress Gateway 或者 Sidecar 上跑起来。比如自己写一段逻辑,拦截所有出口流量,按特定规则加上鉴权头,或者把响应里的敏感字段打码。这不需要多高深的算法,核心是搞懂 Envoy 的请求生命周期以及 WASM 插件能挂载的钩子点。资料配合练习的方式很明确:先把基操里的多网关设置和本地文件夹映射跑通,确保你的测试环境能稳定接收外部流量,这是验证插件生效的前提。然后跟着开发章节的顺序,从最简单的添加请求头开始写,编译后挂载到网关上用 curl 验证。不要一上来就写复杂的鉴权逻辑,先用最基础的改写头功能跑通「编写-编译-挂载-验证」的完整闭环,再逐步往里加复杂规则。


技术栈一直在更新,我们的课程要不断跟进。本课程建立在你看过我们之前的istio基操课、原理课的基础上进行进阶,主要分三个部分:1)基操复习和进阶 2)istio

课程目录

*   第一章:istio基操查缺补漏 cplist.push('第一章:istio基操查缺补漏');/

  *   第1讲:开张课、课程基本内容

  *   第2讲:设置多个Ingress Gateway网关以及结构

  *   第3讲:安装kiali和 测试服务 (复习课)

  *   第4讲:查看、调试 配置的常见手法

  *   第5讲:使用gateway api 创建istio "四件套"

  *   第6讲:gateway-api入门(2) filter的简单用法、添加请求头

  *   第7讲:如何在ingress gateway添加本地文件夹映射