外观
性能与资源
先定位是哪一类资源
sh
# 总览
top
# IO 等待(关注 %wa 和 await)
iostat -x 2 5
# 内存
free -h
# 每台客户机的资源
qm list; pct list内存「被吃光」
用 ZFS 时看 available,不是 used
free -h 的 used 包含 ZFS 的 ARC 缓存,看起来内存快满了。available 才是真实可用量。
available 也很小的话,检查 ARC 上限:
sh
arc_summary | head -20设置上限的方法见 ZFS 入门。完整的排查步骤和安全设置上限的方式见ZFS ARC 吃光内存。
IO 慢
常见原因,按出现频率:
| 原因 | 怎么确认 |
|---|---|
| 虚拟机磁盘在机械盘上 | 看存储对应的物理盘 |
| 没开 IO thread / 用了 IDE 总线 | qm config <vmid> 看 scsihw 和磁盘参数 |
| 存储池接近写满 | ZFS 超过 80% 后写入性能明显下降 |
| 多个备份任务同时跑 | 错开备份时间 |
| 客户机里没装 VirtIO 驱动 | 用的是模拟设备,开销大 |
完整的由浅入深排查步骤见IO 延迟高。
CPU 超额分配
给客户机的 vCPU 总数可以超过物理核心,宿主机会调度。但单台客户机分太多核反而可能变慢(调度开销、NUMA 跨节点)。
从少开始,观察负载再加。