0


linux查看磁盘IO,网络IO 总结

linux查看磁盘IO,网络 IO可用的命令

  1. **top **监控整体服务器,cpu,内存,磁盘,网络等

  2. **dstat -d **查看当前磁盘每秒的读取,写入量,单位K

  3. **dstat -r **查看当前磁盘随机的读IOPS,写IOPS

  4. dstat -n 查看网卡每秒接收,发送量,单位K,不足1K时显示Byte数

  5. **pidstat **统计各个进程的磁盘IO,也可以监控指定进程,还可以监控cpu和内存

  6. **iotop **类似top命令,不过iotop是只监控io相关的进程

  7. **vmstat **监控io活跃的进程,还可以监控内存,cpu相关

开始对上面各个命令详细解释

1. top 监控整体服务器,cpu,内存,磁盘,网络等最常用的监控命令了,可以查看我的这篇博客

top命令总结_YZF_Kevin的博客-CSDN博客

由于以下三个命令都用到了dstat,需要先安装,ubuntu下使用 apt install dstat 安装,centos下使用 yum -y install dstat 进行安装

2. dstat -d 查看当前磁盘每秒的读取,写入量,每秒刷新一次,单位K,不足1K时用B表字节数

每秒刷新一次,普通的机械硬盘可以做到每秒上百MB的读写数据量,SSD硬盘可以做到每秒500MB - 3000MB的读写数据量,大家可以依次估算

如下图,read表磁盘每秒读取量,104B表104字节,writ表磁盘每秒写入量,19K表写入了19K的数据

** 3. dstat -r 查看当前磁盘随机的读IOPS,写IOPS**

每秒刷新一次,普通的机械硬盘可以每秒300次的随机IOPS,SSD硬盘可以每秒8万-10万的随机IOPS,大家可以依次估算自己的硬盘使用情况

如下图,read表随机磁盘的每秒读取次数,writ表随机磁盘的每秒写入次数,即随机IOPS

比如writ为2.57就是每秒随机写入2.57次,极低了

4. dstat -n 查看网卡每秒接收,发送量,单位K,不足1K时显示Byte数

每秒刷新一次,现在都是千M网卡了,也就是网卡可以达到100多M每秒,依次可以估算网络流量距离极限还有多远

如下图

recv表网卡每秒收到的字节数,不足1K时用B表示byte数

send表网卡每秒发送出去的字节数,不足1K时用B表示byte数

** 5. pidstat 统计各个进程的磁盘IO,还可以监控cpu和内存**

每秒刷新一次,最后按下ctrl+C退出时会把刚才的监控平均值打印出来,如下图

可以看到

第一列是当前时间戳

PID表进程号

kB_rd/s 表每秒read磁盘的数据量

kB_wr/s 表每秒write磁盘的数据量

kB_ccwr/s 表任务取消的写入磁盘的KB,当任务截断脏的pagecache的时候会发生

Command表该进程的启动命令

最下面的Average是平均值,可以更清晰地看到各个进程的IO情况

6. iotop 类似top命令,不过iotop是只监控io相关的进程

每秒刷新一次,可以查看哪些进程使用io比较高

按下o键可以只显示I当前O活跃的线程,再按下o键可以恢复显示成全部的IO线程

按下p键可以把线程ID转换为进程ID,再按下p键可以恢复成线程ID

如下图

所有的列讲解一下

Total DISK READ : 从磁盘中读取的总速率

Total DISK WRITE : 往磁盘里写入的总速率

Actual DISK READ : 从磁盘中读取的实际速率

Actual DISK WRITE : 往磁盘里写入的实际速率

**TID ** : 线程ID,按p键可转换成进程ID,再按p键可恢复成线程ID

PRIO : 优先级

USER : 线程所有者

DISK READ : 从磁盘中读取的速率

DISK WRITE : 往磁盘里写入的速率

SWAPIN : swap交换百分比

**IO> ** : IO等待所占用的百分比

COMMAND : 具体的进程命令

7. vmstat 监控io活跃的进程,还可以监控内存,cpu相关

如下图,vmstat 表每隔2秒输出一次,一共输出3次

** procs**

    r        等待运行的进程数

    b        处在非中断睡眠状态的进程数

memory

    swpd        虚拟内存使用情况,单位:K

    free        空闲的内存,单位K

    buff        被用来做为缓存的内存数,单位:K

    cache        被用来做为缓存的内存数,单位:K

swap

    si        从磁盘交换到内存的交换页数量

    so        从内存交换到磁盘的交换页数量

io

    bi        发送到块设备的块数        

    bo        从块设备接收到的块数

system

    in        每秒的中断数,包括时钟中断

    cs        每秒的环境(上下文)切换次数

cpu

    us        用户态CPU 使用百分比

    sy        内核态CPU 使用百分比

    id        cpu空闲百分比

    wa        

    st
标签: linux 服务器 运维

本文转载自: https://blog.csdn.net/yzf279533105/article/details/127178107
版权归原作者 YZF_Kevin 所有, 如有侵权,请联系我们删除。

“linux查看磁盘IO,网络IO 总结”的评论:

还没有评论