1. 课程导论:etcd压测沙盘搭建课程目标、适用人群、前置知识要求、整体课程大纲概览
1.1 课程定位与核心目标
本课程面向需要深入掌握 etcd 性能基准测试与集群运维的工程师,通过从零搭建单节点到三节点 etcd 集群的压测沙盘,系统性地解决以下核心问题:
- 环境标准化:消除“在我机器上能跑”的环境差异,提供可复现的压测基线。
- 性能量化:掌握 etcd 读写延迟、吞吐量、QPS 等关键指标的采集与分析方法。
- 集群行为验证:理解单节点与多节点在 Leader 选举、网络分区、磁盘 I/O 压力下的表现差异。
- 故障注入与恢复:在沙盘中安全地模拟节点宕机、网络延迟、磁盘故障等场景。
一句话总结:学完本课程,你将拥有一个可随时重建、可任意折腾的 etcd 压测实验环境,并具备解读压测报告、定位性能瓶颈的实战能力。
1.2 适用人群
| 角色 | 痛点 | 本课程价值 |
|---|---|---|
| SRE / 运维工程师 | 生产环境 etcd 性能抖动,难以复现和定位 | 提供隔离沙盘,安全复现生产级压测场景 |
| Kubernetes 集群管理员 | 控制面组件依赖 etcd,但缺乏性能基准数据 | 掌握 etcd 性能基线制定与容量规划方法 |
| 中间件 / 存储开发 | 需要验证 etcd 在不同配置下的极限能力 | 搭建自动化压测流水线,对比不同版本/参数 |
| 技术架构师 | 评估 etcd 集群规模与业务负载的匹配度 | 通过压测数据支撑集群拓扑决策 |
1.3 前置知识要求
为顺利跟上课程节奏,建议学习者具备以下基础:
- Linux 基础操作:熟练使用命令行,理解进程、文件系统、网络配置基本概念。
- etcd 基本概念:了解键值存储、Raft 共识算法、Leader 选举等核心术语(课程会做简要回顾,但非零基础入门)。
- Go 语言基础(可选):部分压测工具使用 Go 编写,理解基本语法有助于自定义压测脚本。
- Docker / Docker Compose 基础:课程使用容器化部署沙盘,需掌握基本镜像拉取、容器启动、网络配置命令。
⚠️ 注意:如果你完全不了解 etcd 是什么,建议先阅读 etcd 官方文档的“Getting Started”章节,或观看本课程附录中的“etcd 核心概念速览”视频。
1.4 整体课程大纲概览
课程共 30 章,分为 5 个阶段,从环境搭建到高级压测分析,层层递进:
1.5 课程交付物与学习成果
完成本课程后,你将获得以下可直接复用的资产:
- 标准化沙盘模板:包含 Docker Compose 文件、etcd 配置文件、压测脚本的 GitHub 仓库模板。
- 性能基线数据集:单节点与三节点集群在不同负载下的延迟分布、QPS 曲线、错误率统计。
- 故障注入工具包:使用
tc(网络流量控制)、stress(压力工具)、fio(磁盘压测)模拟真实故障的脚本集合。 - 压测报告模板:可直接用于团队内部汇报的 Markdown/HTML 报告框架,包含图表占位与解读指南。
💡 学习建议:准备一个单独的笔记本或虚拟机(建议 4 核 8G 以上),用于搭建沙盘。不要在生产环境或共享开发环境直接运行压测,避免影响其他服务。