M.2 为什么会掉速
M.2 SSD 特别是消费级 PCIe 4.0 与 5.0 型号,在高负载下温度上升很快,触发阈值后固件会主动限速,极端情况还做关机保护,表现为掉速、延迟抖动甚至短时掉盘。服务器里的 M.2 通常位于风道边缘,往往没有独立散热片,装机时必须确认它的散热条件。
基本信息
| 表现 | 顺序写掉速、延迟抖动、偶发掉盘 |
|---|---|
| 常见原因 | 缺少散热片、风道不畅、持续写压力过大 |
| 缓解手段 | 加装散热片、优化风道、避免用 M.2 承载持续写业务 |
| 选型建议 | 服务器场景选带散热设计的企业级 M.2 或 U.2 |
| 权限要求 | root |
典型使用场景
- 排查 M.2 上出现的性能突然下降
- 装机时确认 M.2 位置是否在有效风道内
- 评估能否把日志与缓存迁移到别的位置
- 巡检时把盘温度纳入监控项
- 机房季节温差变化后复核温度趋势
- 为监控平台统一温度采集口径
温度观察
温度观察
smartctl -A /dev/nvme0n1 | grep -i temperature # 读温度字段
nvme smart-log /dev/nvme0 | grep -i temperature # NVMe 盘温度与警告位
nvme smart-log /dev/nvme0 | grep -i -E "warning|critical" # 是否已触及温度阈值
sensors | grep -i nvme # lm-sensors 环境下读温度温度相关字段
| 字段 | 含义 | 关注点 |
|---|---|---|
| Temperature | 当前复合温度 | 与阈值比较 |
| Warning Temperature | 预警阈值 | 接近时提前调整负载 |
| Critical Temperature | 保护阈值 | 触发后限速甚至关机 |
| Thermal Throttle 计数 | 发生限速的次数 | 持续增长说明散热余量不足 |
把温度纳入监控:M.2 的温度趋势比单次读数更有参考价值,夏冬机房温差也会反映在曲线上。
不同工具给出的温度口径不一样:复合温度与控制器温度并不是同一个值,做告警阈值前先统一采集口径,否则会来回误报。
加装散热片时要确认与主板结构不冲突:压不实的散热片会带来更差的导热效果,装完要用温度数据验证。