1. 课程导论与沙盘全景
1.1 课程背景与痛点
在云原生基础设施中,etcd 作为 Kubernetes 的控制面数据存储,其性能直接决定集群的调度延迟与 API 响应能力。当管理多个集群时,etcd 的读写压力、网络抖动、Cilium 的 eBPF 数据路径与 CNI 控制面之间的资源竞争,往往成为难以定位的瓶颈。
核心痛点: 多集群环境下,etcd 的线性一致性写入延迟、Cilium 的 BPF map 竞争、以及跨集群网络策略的同步开销,三者叠加导致压测结果不可预测,传统单集群调优经验失效。
1.2 沙盘全景架构
本课程构建的压测沙盘采用 3 个独立 Kubernetes 集群(模拟生产多集群拓扑),每个集群内部署完整的 etcd 集群与 Cilium CNI。沙盘通过自定义压测引擎生成混合读写负载,并采集关键指标。
1.3 课程目标
完成本课程后,学员将具备以下能力:
| 能力维度 | 具体目标 | 可验证成果 |
|---|---|---|
| etcd 性能调优 | 掌握 etcd 读写路径、Raft 共识、磁盘 I/O 与网络延迟的调优方法 | 压测场景下 etcd P99 延迟降低 40% 以上 |
| Cilium 瓶颈定位 | 熟练使用 bpftrace、cilium monitor、Hubble 定位 eBPF 数据路径瓶颈 | 定位并解决 BPF map 竞争、策略匹配延迟问题 |
| 多集群压测方法论 | 设计跨集群压测场景,分析控制面与数据面交互瓶颈 | 输出多集群压测报告与调优建议 |
| 沙盘复现与扩展 | 基于沙盘架构复现生产问题,验证调优方案 | 独立搭建沙盘并完成一次完整压测 |
1.4 学习路径
课程共 30 章,分为 5 个阶段,建议按顺序学习:
- 基础篇(第 1-6 章): 沙盘搭建、etcd 与 Cilium 核心原理、压测工具链部署。
- etcd 调优篇(第 7-14 章): 磁盘、网络、内存、Raft 参数、快照策略、集群拓扑优化。
- Cilium 瓶颈篇(第 15-22 章): eBPF 数据路径、BPF map 竞争、网络策略性能、Hubble 观测。
- 多集群压测篇(第 23-27 章): 跨集群负载模型、控制面压力测试、故障注入与恢复。
- 综合实战篇(第 28-30 章): 全链路压测、瓶颈定位实战、调优报告输出。
学习建议: 每章结束后,在沙盘中复现压测场景并记录指标变化。建议准备一个笔记本专门记录调优前后的对比数据。
1.5 预期收益
学员完成课程后,将获得以下直接收益:
- 技能提升: 掌握 etcd 与 Cilium 的深度调优技能,成为云原生基础设施领域的稀缺人才。
- 可复用沙盘: 获得一套完整的多集群压测沙盘代码与配置,可直接用于生产环境预研。
- 瓶颈定位方法论: 形成系统化的瓶颈定位流程,从指标采集、分析到根因定位,不再盲目调参。
- 性能报告模板: 提供标准化的压测报告模板,包含延迟、吞吐、资源消耗等关键指标。
1.6 沙盘环境要求
| 组件 | 版本要求 | 说明 |
|---|---|---|
| Kubernetes | v1.28+ | 支持 Cilium 完整功能 |
| etcd | v3.5+ | 推荐 v3.5.10 以上 |
| Cilium | v1.15+ | 开启 Hubble 与 BPF Tcpinfo |
| 压测工具 | 自定义 Go 压测引擎 | 课程提供源码与镜像 |
| 监控 | Prometheus + Grafana | 预置 etcd 与 Cilium 仪表盘 |
注意: 沙盘至少需要 9 台虚拟机或物理机(每集群 3 节点),建议配置 8C16G 以上。如果资源有限,可缩减为 2 集群,但部分跨集群压测场景会受限。