性能·磁盘 / 命令文档

iostat 系统性能监控

$ iostat 8 个章节 Linux 命令详解

概述

掌握Linux磁盘I/O性能分析的核心工具

基础概念 核心指标 性能分析

iostat 简介

iostat 是Linux系统中用于监控磁盘I/O性能的核心工具,属于sysstat工具包的一部分。它能够实时显示CPU使用率和磁盘I/O统计信息,是系统管理员进行性能调优的必备工具。

iostat [选项] [间隔时间] [次数]

常用参数组合

iostat -x 1

每秒显示扩展磁盘统计信息

最常用的实时监控命令

iostat -d 2 5

每2秒显示磁盘统计,共5次

适合短期性能观察

iostat -c

仅显示CPU使用率

专注CPU性能分析

iostat -h

以人类可读格式显示

数值带单位显示

学习目标

理解iostat输出的每个指标含义

掌握磁盘I/O性能瓶颈识别方法

学会设置合适的监控阈值

熟悉常见性能问题的诊断流程

建立系统性的运维监控体系

CPU指标详解

%user 正常: <30%

用户态CPU使用率

应用程序消耗的CPU时间百分比

%nice 正常: <5%

低优先级进程CPU使用率

nice值调整的进程CPU占用

%system 注意: >20%

内核态CPU使用率

系统调用和内核操作消耗

%iowait 警告: >10%

等待I/O操作的CPU空闲时间

磁盘瓶颈的重要指示器

%steal 注意: >5%

虚拟机被其他虚拟机抢占的时间

虚拟化环境特有指标

%idle 健康: >70%

CPU空闲时间百分比

系统负载的反向指标

磁盘I/O指标详解

rrqm/s 优化指标

每秒合并的读请求数

值越高说明读操作合并效果越好

wrqm/s 优化指标

每秒合并的写请求数

写操作合并效率指标

r/s 监控: >100

每秒读操作次数

磁盘读取频率,高值需关注

w/s 监控: >100

每秒写操作次数

磁盘写入频率,影响性能

rkB/s 监控带宽

每秒读取的千字节数

读取吞吐量指标

wkB/s 监控带宽

每秒写入的千字节数

写入吞吐量指标

关键延迟指标

await 关键: >10ms

平均I/O请求处理时间

包含队列等待+服务时间

svctm 已废弃

平均服务时间(不准确)

新版本中已移除此指标

%util 警告: >85%

磁盘利用率

磁盘繁忙程度的核心指标

性能瓶颈诊断流程

sda设备分析: 诊断结论:磁盘I/O瓶颈,需要优化
sdb设备分析: 诊断结论:设备运行状态良好

性能阈值参考表

指标优秀良好需关注严重问题
%iowait< 1%1-5%5-10%> 10%
await (ms)< 55-1010-20> 20
%util< 60%60-80%80-90%> 90%
IOPS< 设备最大值的50%50-70%70-85%> 85%

高级指标解析

aqu-sz(队列深度)

平均请求队列大小

• < 1.0: 磁盘负载轻 • 1.0-4.0: 正常范围 • > 4.0: 可能存在瓶颈

%rrqm / %wrqm

请求合并率

• > 10%: 合并效果好 • < 5%: 随机I/O较多 • 0%: 纯随机访问模式

rareq-sz / wareq-sz

平均请求大小(KB)

• > 64KB: 顺序I/O为主 • 4-64KB: 混合模式 • < 4KB: 随机I/O为主

同分类 · 其他命令文档