第一篇 · 系统基础:为什么先学这个
"在你能性能分析一个分布式系统之前,你必须先能性能分析一台服务器。" —— 改编自《Systems Performance》
分布式存储系统再复杂,每一份负载最终都由普通的 Linux 服务器承接:一次 RGW 的 GET 请求,要经历网卡中断、协议栈、页缓存、文件系统、块层、HBA/NVMe 驱动,再落到盘上的闪存颗粒。任何一个环节的排队,都会被上层用户感知为"存储慢了"。
应届生最常见的问题是把 Ceph 当黑盒背命令。本篇的目标是让存储栈对你透明:
本篇目标
| 学完之后 | 你能做到 |
|---|---|
| Linux 存储栈 | 画出一个 IO 从 write() 到盘的完整路径,说清每层在干什么 |
| 观测工具箱 | 知道"用什么工具看什么指标",而不是盲目跑 20 个命令 |
| 性能分析方法论 | 用 USE 方法系统化排查,结论有证据链 |
| 块设备与文件系统 | 理解 LVM、RAID、XFS/ext4、iSCSI/NVMe-oF 的角色 |
| 网络基础 | 理解存储网络的延迟构成 —— 分布式存储的第一瓶颈几乎总在网络 |
主要参考
- 《Systems Performance, 2nd Edition》(Brendan Gregg)—— 观测工具与方法论章节
- 你自己的开发机 —— 每个 Lab 都能在一台 Linux 上完成
学习建议
本篇不需要集群环境,一台 Linux 虚拟机/WSL2 即可。工具的输出不要只看一眼,把每一列的含义搞清楚,后续两篇会反复用到这些技能。