1. 课程全景与目标

云原生网络正在经历从“连通性”到“可观测性+安全性+运维自动化”的范式转移。Cilium 作为基于 eBPF 技术的云原生网络、安全与可观测性平台,已逐步成为 Kubernetes 集群网络的事实标准。本课程聚焦于 Cilium 在蓝绿发布场景下的网络运维挑战,并通过事件流还原技术构建完整的故障时间线,帮助运维人员从“被动救火”转向“主动防御”。

1.1 Cilium 在云原生网络中的核心地位

Cilium 通过 eBPF 在内核层面动态注入网络、安全与可观测性逻辑,无需修改应用代码或重启服务。其核心能力覆盖以下维度:

能力维度 传统方案(iptables/Calico) Cilium 方案
网络策略 基于 IP 与端口,规则膨胀 基于身份标识(Identity),细粒度 L3/L4/L7 策略
负载均衡 kube-proxy iptables 模式,性能瓶颈 eBPF 原生 XDP/TC 转发,延迟降低 40%+
可观测性 外部工具(Prometheus + 日志) Hubble 实时流式事件,L3/L4/L7 全栈可见
安全隔离 NetworkPolicy + 第三方防火墙 基于身份 + DNS + HTTP 方法的零信任模型
运维复杂度 高(规则变更需 reload) 低(eBPF 动态加载,无中断)
关键洞察: Cilium 将网络策略、负载均衡、可观测性三者统一在 eBPF 运行时层,使得蓝绿发布过程中的流量切换、策略迁移、故障定位可以在同一数据平面完成,无需跨系统协调。

1.2 蓝绿发布对网络运维的挑战

蓝绿发布(Blue-Green Deployment)要求同时运行两套完整环境,通过流量切换实现零停机更新。但在实际运维中,网络层面常出现以下“暗礁”:

  • 策略漂移: 蓝环境策略未随流量迁移同步更新,导致绿环境 Pod 被错误阻断。
  • DNS 缓存污染: 旧 Service 端点缓存未刷新,流量仍发往已下线的蓝环境。
  • 连接耗尽: 长连接未优雅关闭,绿环境 Pod 启动后无法接收新连接。
  • 身份冲突: 蓝绿环境共享同一 Identity 范围,导致策略匹配混乱。
  • 可观测性断层: 流量切换瞬间,Hubble 事件流出现 3-5 秒空白窗口。
运维警示: 蓝绿发布不是简单的“切流量”,而是对网络策略、DNS 解析、连接管理、身份标识的原子性协同考验。任何一个环节的时序错位,都会导致生产故障。

1.3 事件流还原技术:构建故障时间线

本课程的核心方法论是事件流还原(Event Stream Reconstruction)——通过 Cilium 的 Hubble 事件流、Kubernetes API 审计日志、eBPF 跟踪点三者交叉关联,将蓝绿发布过程中的网络状态变化还原为一条精确的故障时间线。

事件流还原的三大支柱:

  1. Hubble 流式事件: 记录每个网络流的 L3/L4/L7 元数据,包括源/目的 Identity、TCP 状态、HTTP 方法、响应码。
  2. Kubernetes 审计日志: 记录 Service、Endpoint、NetworkPolicy 的变更事件,精确到毫秒级时间戳。
  3. eBPF 内核跟踪点: 捕获 connect()、accept()、close() 等系统调用,识别连接生命周期异常。

通过将这三类事件按时间轴对齐,运维人员可以回答以下关键问题:

  • 流量切换前 5 秒,哪个 NetworkPolicy 被删除?
  • 故障发生时,绿环境 Pod 的 Identity 是否已就绪?
  • 连接耗尽期间,有多少 TCP 半连接处于 SYN_RECV 状态?
  • DNS 缓存失效后,第一个失败请求的完整路径是什么?
课程目标: 学完本课程后,你将能够独立搭建 Cilium 蓝绿发布环境,使用 Hubble CLI 和 eBPF 工具捕获事件流,并基于时间线还原任意网络故障的根因。课程包含 5 个真实故障剧本,覆盖策略漂移、DNS 污染、连接耗尽、身份冲突、可观测性断层等典型场景。
Cilium 事件流还原:蓝绿发布故障时间线架构 Hubble 流式事件 L3/L4/L7 网络流元数据 TCP 状态 / HTTP 方法 / 响应码 Kubernetes 审计日志 Service / Endpoint / NetworkPolicy 变更事件 + 毫秒级时间戳 eBPF 内核跟踪点 connect() / accept() / close() 连接生命周期异常捕获 事件流还原引擎 时间轴对齐 · 事件关联 · 异常检测 · 根因推断 输出:精确到毫秒的故障时间线 蓝绿发布故障时间线(示例) T0 策略删除 T1 DNS 缓存 T2 连接耗尽 T3 身份冲突 T4 观测断层 每个故障节点都关联 Hubble 事件、审计日志、eBPF 跟踪点的精确时间戳

1.4 课程结构概览

本课程共 30 章,分为四个阶段:

阶段 章节范围 核心内容
基础篇 第 1-8 章 Cilium 架构、eBPF 原理、Hubble 事件流、蓝绿发布网络模型
工具篇 第 9-14 章 Hubble CLI/UI、tetragon、kubectl-trace、事件流捕获与导出
实战篇 第 15-25 章 5 个故障剧本:策略漂移、DNS 污染、连接耗尽、身份冲突、观测断层
进阶篇 第 26-30 章 自动化时间线生成、SLO 告警集成、生产环境最佳实践
学习路径建议: 基础篇和工具篇建议按顺序学习;实战篇可根据实际运维场景跳转;进阶篇适合有 Cilium 生产经验的学员。每章末尾提供可复现的故障剧本和事件流还原练习。