首页主机资讯Linux分区怎样进行性能监控

Linux分区怎样进行性能监控

时间2025-12-02 09:20:03发布访客分类主机资讯浏览273
导读:Linux 分区性能监控实操指南 一 关键指标与判断要点 吞吐量与 IOPS:关注每秒读写字节(如 rkB/s、wkB/s)与每秒 I/O 次数(r/s、w/s)。高吞吐低 IOPS 多为大块顺序 I/O,高 IOPS 低吞吐多为小块随机...

Linux 分区性能监控实操指南

一 关键指标与判断要点

  • 吞吐量与 IOPS:关注每秒读写字节(如 rkB/s、wkB/s)与每秒 I/O 次数(r/s、w/s)。高吞吐低 IOPS 多为大块顺序 I/O,高 IOPS 低吞吐多为小块随机 I/O
  • 时延:关注平均等待/完成时间(r_await、w_await)。数值持续升高通常意味着设备繁忙或路径瓶颈
  • 队列与饱和度:关注平均队列长度(aqu-sz)与设备利用率(%util)。%util 长期接近 100% 表示设备饱和;aqu-sz 持续偏大 表示排队严重。
  • CPU 侧信号:在 top/vmstat 中观察 %wa(iowait),升高常伴随存储瓶颈。
  • 分区与设备:多数工具既能按**设备(如 sda)也能按分区(如 sda1)**统计;注意文件系统缓存影响,必要时用 direct I/O 绕过缓存进行更贴近设备的评估。

二 常用工具与命令清单

  • iostat(强烈推荐):按设备/分区查看 I/O,扩展模式显示更细指标。
    示例:
    • 实时查看所有设备与分区:sudo iostat -x 1
    • 只看设备 sda 的扩展统计:sudo iostat -x 1 sda
    • 以 KB/s 为单位查看分区统计:iostat -p sda -dk
  • vmstat:系统级资源与块 I/O 概览,便于看 %wa 与块 I/O。
    示例:vmstat 1;按分区统计:vmstat -p sda1 1 3
  • iotop:按进程实时显示磁盘 I/O,定位“谁在刷盘”。
    示例:sudo iotop -o -d 1(仅显示正在做 I/O 的进程)
  • sar:历史与实时 I/O 报告(需启用 sysstat 统计)。
    示例:sar -d 1 5(实时);sar -d -f /var/log/sa/saXX(历史)
  • dstat:综合资源监控,便于同时观察 CPU/内存/磁盘。
    示例:dstat -dny --top-io 1
  • atop:按进程汇总 I/O 活动,便于回溯变化。
    示例:atop | grep DSK
  • blktrace + blkparse:块层 I/O 跟踪,深入分析请求路径与延迟分布。
    示例:sudo blktrace /dev/sda(采集);blkparse 解析输出
  • ioping:评估路径/设备延迟与抖动(类似 ping 的磁盘版)。
    示例:sudo ioping /dev/sda5 -c 4
  • 安装提示:iostat/sar/mpstat/dstat 属于 sysstat;iotop/atop 需单独安装;部分发行版默认未启用 sysstat 的历史日志。

三 按分区定位问题的步骤

  1. 识别设备与分区映射:lsblk -o NAME,TYPE,SIZE,MOUNTPOINT,FSTYPE;确认目标路径落在哪个 sdX分区
  2. 实时观察分区 I/O:iostat -x 1 | egrep “Device|sda1”;同时看 %util、aqu-sz、r_await/w_await 是否异常。
  3. 查看分区累计统计与变化:vmstat -p sda1 1 3,观察读/写请求与扇区累计变化(适合确认是否有持续写入)。
  4. 定位进程级来源:sudo iotop -oPa(仅显示正在做 I/O 的进程,含线程与 PID),结合进程命令行与工作目录确认业务来源。
  5. 若需进一步确认文件/目录层面:sudo lsof +D /path(查看被频繁访问的路径),或 atop 中按 DSK 列筛选。

四 历史趋势与健康巡检

  • 历史趋势:启用并保持 sysstat 运行,使用 sar -d 1 5 实时查看,或 sar -d -f /var/log/sa/saXX 回看某日历史,用于容量规划与异常回溯。
  • 硬件健康:
    • SATA/SAS:sudo smartctl -a /dev/sdX(关注介质错误、温度、重映射计数等)
    • NVMe:sudo nvme list;sudo nvme smart-log /dev/nvme0
  • 快速只读评估(安全):sudo hdparm -Tt /dev/sdX(分别测试缓存与磁盘顺序读能力)。

五 阈值参考与排障建议

  • 阈值参考:
    • %util 持续接近 100% → 设备饱和,优先考虑更快介质、扩容、减少随机 I/O、优化 SQL/日志/缓存策略。
    • r_await/w_await 明显升高 → 关注设备负载、队列、驱动/路径(如 LVM/RAID/网络存储)与文件系统层抖动。
    • aqu-sz 持续偏大 → 队列过深,检查并发写入、合并写策略、I/O 大小与调度器设置。
    • %wa 升高 → 存储瓶颈可能性高,结合 iostat/vmstat/iotop 交叉验证。
  • 工具选择建议:
    • 实时定位“分区 + 进程”首选 iostat + iotop
    • 需要历史趋势用 sar
    • 需要综合视图用 dstat/nmon/atop
    • 需要延迟/路径诊断用 ioping/blktrace

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux分区怎样进行性能监控
本文地址: https://pptw.com/jishu/760963.html
Linux LAMP中PHPMyAdmin的使用技巧 Debian上如何安装C++

游客 回复需填写必要信息