1. 课程导论:Helm 与网络拓扑资源配额概述
1.1 为什么需要这门课程?
在 Kubernetes 多租户或微服务架构中,团队往往通过 Helm Chart 快速部署应用。然而,缺乏对网络拓扑与资源配额的统一管控,会导致以下典型问题:
- 资源争抢:无限制的 Pod 数量或 CPU/内存请求导致节点过载。
- 网络冲突:Service 或 Ingress 名称空间未隔离,跨团队流量意外路由。
- 配额失控:Namespace 级别的 ResourceQuota 未与 Helm 发布流程联动,上线后才发现配额不足。
- 拓扑混乱:Pod 间通信路径不可控,延迟敏感型服务被非关键流量干扰。
本课程将系统讲解如何通过 Kubernetes 准入控制(Admission Control) 机制,在 Helm 安装/升级阶段自动注入网络拓扑约束与资源配额策略,实现“发布即合规”。
核心价值:将运维策略左移到开发部署阶段,减少人工审核,提升集群稳定性与资源利用率。
1.2 课程目标
完成本课程后,学员将能够:
- 理解 Helm 与 Kubernetes 准入控制器的协作原理。
- 设计基于网络拓扑(节点拓扑、区域拓扑、服务拓扑)的资源配额模型。
- 编写自定义准入控制 Webhook,在 Helm 渲染阶段校验并注入配额配置。
- 使用 Helm 插件或 Chart Hooks 实现策略的自动化分发与回滚。
- 构建可观测的配额审计面板,实时监控策略执行效果。
1.3 适用人群
| 角色 | 关注点 | 课程收益 |
|---|---|---|
| 平台工程师 | 集群稳定性、多租户隔离 | 掌握策略即代码的落地方法 |
| SRE / 运维 | 资源利用率、故障域隔离 | 学会拓扑感知的配额配置 |
| DevOps 工程师 | CI/CD 流水线合规 | 集成准入控制到发布流程 |
| 架构师 | 全局网络与资源治理 | 设计可扩展的策略框架 |
1.4 前置知识要求
学员应具备以下基础能力:
- Kubernetes 基础:熟悉 Pod、Service、Namespace、ResourceQuota、NetworkPolicy 等核心资源。
- Helm 使用经验:掌握 Chart 结构、values.yaml 覆盖、helm install/upgrade 命令。
- 网络基础:理解 Kubernetes 网络模型(CNI)、Service 类型、Ingress 路由。
- 编程/脚本能力:能阅读 YAML/JSON,了解 Go 或 Python 的基本语法(用于 Webhook 开发)。
建议:如果对 Admission Webhook 完全陌生,建议先阅读 Kubernetes 官方文档“动态准入控制”章节,再开始本课程。
1.5 课程知识体系总览
下图展示了本课程的核心模块及其关系:
1.6 课程章节速览
| 章节 | 主题 | 关键产出 |
|---|---|---|
| 1 | 课程导论 | 知识体系总览、环境准备清单 |
| 2-5 | Helm 与准入控制基础 | Helm 渲染流程、Webhook 配置 |
| 6-10 | 网络拓扑与配额模型 | 拓扑标签设计、ResourceQuota 模板 |
| 11-18 | 策略实现与测试 | Go Webhook、Helm 插件、单元测试 |
| 19-24 | 集成与观测 | GitOps 集成、Prometheus 告警 |
| 25-28 | 实战案例 | 多租户隔离、跨集群拓扑配额 |
| 29-30 | 总结与扩展 | 最佳实践、社区生态展望 |
注意:本课程所有实验均在 Kubernetes v1.28+ 与 Helm v3.12+ 环境下验证。请确保你的实验环境满足版本要求,否则部分特性可能不可用。