在使用 RockyLinux 服务器时,你是否遇到过系统卡顿、应用响应缓慢,甚至数据库查询超时等问题?这些问题很可能是由存储性能瓶颈引起的。本文将手把手教你如何诊断和优化 RockyLinux 的存储性能,即使你是 Linux 新手,也能轻松上手!
什么是存储性能问题?
存储性能问题通常表现为磁盘 I/O(输入/输出)延迟高、吞吐量低或 CPU 等待 I/O 完成的时间过长(即 iowait 高)。这类问题会直接影响 Web 服务、数据库、虚拟化等对磁盘敏感的应用。
第一步:查看系统整体 I/O 负载
我们可以使用
top或
htop命令快速查看 CPU 的 iowait 指标:
$ top# 在 top 输出中,关注这一行:%Cpu(s): 0.5 us, 0.3 sy, 0.0 ni, 98.2 id, 1.0 wa, 0.0 hi, 0.0 si, 0.0 st
其中
wa就是 iowait,如果长期高于 10%,说明系统正在等待磁盘 I/O,可能存在RockyLinux存储性能优化空间。
第二步:使用 iostat 查看磁盘详细指标
安装并运行
iostat(属于 sysstat 包):
# 安装 sysstatsudo dnf install -y sysstat# 每2秒刷新一次,共显示5次iostat -x 2 5
重点关注以下字段:
%util:设备忙于处理 I/O 请求的时间百分比。接近 100% 表示磁盘饱和。 await:I/O 请求平均等待时间(毫秒)。超过 20ms 可能存在问题。 rkB/s 和 wkB/s:每秒读写的数据量(KB)。第三步:定位高 I/O 进程
使用
iotop实时查看哪些进程在大量读写磁盘:
# 安装 iotopsudo dnf install -y iotop# 以 root 权限运行sudo iotop -o
参数
-o表示只显示有 I/O 活动的进程,方便快速定位罪魁祸首。
第四步:检查文件系统与挂载选项
某些挂载选项会影响性能。例如,ext4 文件系统默认启用了 journal(日志),虽然安全但可能影响写入速度。你可以通过以下命令查看当前挂载选项:
mount | grep "/"# 示例输出:/dev/sda2 on / type ext4 (rw,relatime,seclabel,data=ordered)
如果你使用的是 SSD,建议添加
noatime,nodiratime,discard等选项以提升性能(需在 /etc/fstab 中修改并重启或 remount)。
第五步:进行磁盘基准测试
使用
fio工具模拟真实负载,测试磁盘极限性能:
# 安装 fiosudo dnf install -y fio# 执行一个简单的随机写测试(注意:会在当前目录生成 testfile)fio --name=randwrite --ioengine=sync --rw=randwrite \ --bs=4k --size=1G --numjobs=1 --runtime=60 --time_based \ --end_fsync=1
通过对比不同磁盘或配置下的 fio 结果,可以科学评估 Linux磁盘性能调优 效果。
常见优化建议
使用 SSD 替代机械硬盘(HDD)。 确保 RAID 配置合理(如 RAID 10 适合高 I/O 场景)。 调整内核 I/O 调度器(如使用mq-deadline或
nonefor NVMe)。 定期清理日志和临时文件,避免磁盘写满。
总结
通过以上步骤,你可以系统性地诊断 RockyLinux 的存储性能问题。无论是排查 存储瓶颈排查,还是实施 RockyLinux I/O性能诊断,关键在于“观察 → 定位 → 测试 → 优化”的闭环流程。
记住:性能优化不是一蹴而就的,而是持续迭代的过程。希望这篇教程能帮你打造更稳定、高效的 RockyLinux 服务器!
