I/O排查命令

I/O能够说是问题大户,线上的问题常常都是它引发的,不少人殊不知道怎么定位这种问题。今天简单介绍一下,在此抛砖引玉。ios

此类问题咱们通常分三步定位:按系统级I/O、进程级I/O、业务级I/O定位便可,通常状况下分析前面两步就能够知道大体问题所在。spa

系统级I/O (使用iostat、vmstat命令)

经常使用选项code

-d 显示设备(磁盘)使blog

I/O能够说是问题大户,线上的问题常常都是它引发的,不少人殊不知道怎么定位这种问题。今天简单介绍一下,在此抛砖引玉。

此类问题咱们通常分三步定位:按系统级I/O、进程级I/O、业务级I/O定位便可,通常状况下分析前面两步就能够知道大体问题所在。

系统级I/O (使用iostat、vmstat命令)

经常使用选项

-d 显示设备(磁盘)使用状态 。

-x 显示和I/O相关的扩展数据。

-k 使用k为单位。

线上I/O问题排查思路

%util 表明磁盘繁忙程度,0%~100%之间。

argrq-sz 提交给驱动层的IO请求大小,用于度量随机程度。

svctm 单次IO请求耗时,寻道+旋转延迟时间,通常不超过8ms。

 

vmstat命令能够查看系统纬度的CPU负载,显示以下:



us:表示用户进程消耗的CPU时间百分比。

sy:内核模式消耗的CPU时间百分比。

wa:IO等待消耗的CPU时间百分比。

进程级I/O (使用iotop、strace)

经常使用选项

-d SEC:间隔SEC秒显示一次。

-p PID:监控的进程pid。

iotop

线上I/O问题排查思路



 

 

用状态 。进程

-x 显示和I/O相关的扩展数据。io

-k 使用k为单位。class

线上I/O问题排查思路

%util 表明磁盘繁忙程度,0%~100%之间。监控

argrq-sz 提交给驱动层的IO请求大小,用于度量随机程度。扩展

svctm 单次IO请求耗时,寻道+旋转延迟时间,通常不超过8ms。请求

 

vmstat命令能够查看系统纬度的CPU负载,显示以下:

us:表示用户进程消耗的CPU时间百分比。

sy:内核模式消耗的CPU时间百分比。

wa:IO等待消耗的CPU时间百分比。

进程级I/O (使用iotop、strace)

经常使用选项

-d SEC:间隔SEC秒显示一次。

-p PID:监控的进程pid。

iotop

线上I/O问题排查思路

相关文章
相关标签/搜索