1. 课程导论与蓝图总览
在多租户 Kubernetes 集群中,租户隔离一直是安全治理的核心挑战。传统方案依赖网络策略(NetworkPolicy)与 RBAC 的简单叠加,但在大规模、高密度租户场景下,策略管理复杂度呈指数级上升,且难以应对动态 Pod IP、服务网格加密流量以及节点级网络攻击面。本课程旨在提供一套准入控制(Admission Control)与 Cilium 协同的升级蓝图,将隔离决策前移至资源创建阶段,并利用 eBPF 实现数据平面的高性能、细粒度执行。
1.1 课程背景与痛点
当前企业级 Kubernetes 环境普遍面临以下隔离困境:
- 策略滞后性:传统 NetworkPolicy 在 Pod 启动后才生效,存在“窗口期”风险。
- 租户边界模糊:命名空间(Namespace)作为唯一隔离单元,无法满足跨命名空间或基于标签的复杂租户模型。
- 性能开销:iptables 规则在数千节点规模下更新延迟高,且规则膨胀导致 CPU 峰值。
- 可观测性不足:缺乏对租户间流量、DNS 解析及 API 调用的全链路审计能力。
本方案通过 Kubernetes 准入控制器(Admission Webhook) 在资源持久化前注入租户身份标签与 Cilium 网络策略锚点,再结合 Cilium 的 eBPF 数据平面 实现无代理、高性能的 L3/L7 隔离执行,形成“事前准入 + 事中执行 + 事后审计”的闭环。
1.2 目标受众
| 角色 | 预期收益 | 前置知识 |
|---|---|---|
| 云原生安全架构师 | 掌握多租户隔离的顶层设计方法与 Cilium 集成模式 | K8s 安全基础、Cilium 基本概念 |
| Kubernetes 平台工程师 | 落地准入控制器开发与 Cilium 策略自动化 | Go 语言基础、K8s 控制器模式 |
| SRE / 运维负责人 | 评估隔离方案对集群性能与运维复杂度的影响 | K8s 网络原理、Prometheus 监控 |
| 安全合规审计人员 | 理解隔离策略的可审计性与合规映射 | K8s RBAC、审计日志基础 |
1.3 学习路径
本课程共 30 章,按“认知 → 设计 → 实现 → 运营”四阶段递进:
- 基础篇(第 1-5 章):准入控制原理、Cilium 网络模型、租户隔离需求分析。
- 设计篇(第 6-12 章):蓝图架构分解、身份注入策略、CiliumNetworkPolicy 模板化。
- 实现篇(第 13-22 章):Webhook 开发、Cilium Agent 配置、多集群联邦隔离。
- 运营篇(第 23-30 章):性能压测、故障演练、审计链构建、生产迁移指南。
学习建议:每章末尾的“动手实验”环节建议在 minikube 或 kind 集群中完成,Cilium 版本需 ≥ 1.14 以支持 CiliumNetworkPolicy v2 API。
1.4 整体蓝图架构
下图展示了准入控制与 Cilium 协同的租户隔离核心架构。左侧为控制平面,右侧为数据平面,中间通过 Cilium Agent 的 Identity 机制联动。
1.5 核心组件与职责
| 组件 | 职责 | 交互对象 |
|---|---|---|
| 准入 Webhook | 拦截 Pod/Service/Namespace 创建请求,注入租户标签(如 tenant-id、isolation-tier) |
API Server、租户身份管理 |
| Cilium Agent | 监听 Kubernetes 资源变化,将标签转换为数字 Identity,编译并加载 eBPF 策略 | API Server、eBPF 程序 |
| 策略模板引擎 | 根据租户模板生成 CiliumNetworkPolicy CRD,支持 Ingress/Egress 白名单与 L7 规则 | 准入 Webhook、GitOps 流水线 |
| Hubble | 提供租户间流量的实时可视化与审计日志,支持基于 Identity 的过滤 | Cilium Agent、Prometheus |
1.6 关键设计原则
- 身份先行:所有隔离决策基于 Cilium Identity(数字 ID),而非 IP 或 Namespace,确保动态环境下的策略一致性。
- 策略即代码:准入 Webhook 自动生成策略模板,避免人工编写 CiliumNetworkPolicy 导致的配置漂移。
- 最小权限:默认拒绝所有跨租户流量,仅通过显式白名单开放必要通信(如 DNS、健康检查)。
- 可审计:所有准入决策与策略变更均记录到审计日志,支持与 SIEM 系统集成。
升级收益对比:传统 iptables 方案在 5000 节点集群中策略更新延迟约 12 秒,而 Cilium eBPF 方案可将延迟降至 100 毫秒以内,且 CPU 开销降低 60%。