这门课解决什么工作场景

日常把业务部署到 Kubernetes 集群后,直接全量替换往往让人提心吊胆,一旦新版本有缺陷,所有用户立刻受影响。这套资料聚焦 Argo Rollouts,专门解决“如何平滑地把新版本推上去”的问题。它不谈大而全的理论,而是带你做金丝雀发布与灰度推进。通过这套方案,你能把线上流量按比例切给新版本,观察无异常后再继续推进,一旦指标异常则迅速回滚。它解决的核心痛点是:让应用版本更迭不再是一锤子买卖,而是可控、可观察、可随时叫停的渐进式过程。

适合什么基础与建议先看哪几块

这套内容默认你已经对 Kubernetes 有基本认知,了解 Deployment、Service 等概念,最好写过一点 Go 代码。如果你完全没碰过 K8s,建议先补齐基础再看,否则会在操作上卡壳。建议学习时直接从前面几节实操入手,先跟着步骤创建第一个金丝雀部署,跑通手动推进和回滚的完整流程,建立直观体感。接着重点看后面融入 Nginx Ingress 的部分,这部分教你如何根据请求头等特征精确切分流量,是实际工作中最常用的灰度策略。最后的补充课讲解了用 Golang 调用 Rollouts 的基本套路,如果你有二次开发需求,这块是重点。

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

跟着这套资料走完,你能独立为现有的 K8s 业务设计并落地一套灰度发布流程。具体来说,可以把原来的全量发布改造为按比例放量的金丝雀模式,并结合 Ingress 做基于请求头的精准流量路由,还能在出问题时快速触发回滚。练习时,务必自己搭一个本地的 Minikube 或测试集群,不要只看演示。先照着资料把基础的 Rollout 资源对象写出来,实际跑一遍手动灰度推进;随后接入你自己的 Nginx Ingress 控制器,测试按请求头切分流量的效果。有编程基础的话,再试着自己跑通 Golang 调用的代码,理解背后的 API 交互逻辑,为后续做内部发布平台打下底子。


后面打算专门重新做一个专栏,来讲cicd这方面的基操和二开。这回先用argo rollouts打个头阵。本课时主要是基操使用和简单二开。适合有一定k8s基础和c

课程目录

*   第1讲:开张课、课程内容、什么还是渐进式发布

*   第2讲:创建第一个金丝雀部署(灰度发布)、手动推进

*   第3讲:灰度发布中的延迟推进、回滚项目

*   第4讲:初步融入 nginx ingress 进行金色雀发布

*   第5讲:融入 nginx ingress金丝雀发布(2) 根据头区分流量

*   第6讲:补充课:golang调用rollouts基本套路