linux io查看?linux io性能分析

大家好,今天来为大家解答linux io查看这个问题的一些问题点,包括linux io性能分析也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~

如何查看linux服务器硬盘IO读写负载

打开终端

用top命令查看。输入:

top#查看swap

iostat-x110#查看%util%idle

#如果iostat没有要yuminstallsysstat

#如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。idle小于70%IO压力就较大了,一般读取速度有较多的wait.

#如果你想对硬盘做一个IO负荷的压力测试可以用如下命令

timeddif=/dev/zerobs=1Mcount=2048of=direct_2G

#此命令为在当前目录下新建一个2G的文件

欢迎追问

linux查看磁盘io的几种方法

怎样才能快速的定位到并发高是由于磁盘io开销大呢?可以通过三种方式:

第一种:用 top命令中的cpu信息观察

Top可以看到的cpu信息有:

Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie

Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si

具体的解释如下:

Tasks: 29 total进程总数

1 running正在运行的进程数

28 sleeping睡眠的进程数

0 stopped停止的进程数

0 zombie僵尸进程数

Cpu(s):

0.3% us用户空间占用CPU百分比

1.0% sy内核空间占用CPU百分比

0.0% ni用户进程空间内改变过优先级的进程占用CPU百分比

98.7% id空闲CPU百分比

0.0% wa等待输入输出的CPU时间百分比

0.0% hi

0.0% si

0.0% wa的百分比可以大致的体现出当前的磁盘io请求是否频繁。如果 wa的数量比较大,说明等待输入输出的的io比较多。

第二种:用vmstat

vmstat命令报告关于线程、虚拟内存、磁盘、陷阱和 CPU活动的统计信息。由 vmstat命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。

输入命令:

vmstat 2 5

如果发现等待的进程和处在非中断睡眠状态的进程数非常多,并且发送到块设备的块数和从块设备接收到的块数非常大,那就说明磁盘io比较多。

vmstat参数解释:

Procs

r:等待运行的进程数 b:处在非中断睡眠状态的进程数 w:被交换出去的可运行的进程数。此数由 linux计算得出,但 linux并不耗尽交换空间

Memory

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

free:空闲的内存,单位KB

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

Swap

si:从磁盘交换到内存的交换页数量,单位:KB/秒

so:从内存交换到磁盘的交换页数量,单位:KB/秒

IO

bi:发送到块设备的块数,单位:块/秒

bo:从块设备接收到的块数,单位:块/秒

System

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

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

CPU

按 CPU的总使用百分比来显示

us: CPU使用时间

sy: CPU系统使用时间

id:闲置时间

准测

更多vmstat使用信息

第二种:用iostat

安装:

Iostat是 sysstat工具集的一个工具,需要安装。

Centos的安装方式是:

yum install sysstat

Ubuntu的安装方式是:

aptitude install sysstat

使用:

iostat-dx显示磁盘扩展信息

root@fileapp:~# iostat-dx

r/s和 w/s分别是每秒的读操作和写操作,而rKB/s和wKB/s列以每秒千字节为单位显示了读和写的数据量

如果这两对数据值都很高的话说明磁盘io操作是很频繁。

如何查看linux服务器io读写情况

首先、用top命令查看

top- 16:15:05 up 6 days, 6:25, 2 users, load average: 1.45, 1.77, 2.14

Tasks: 147 total, 1 running, 146 sleeping, 0 stopped, 0 zombie

Cpu(s): 0.2% us, 0.2% sy, 0.0% ni, 86.9% id, 12.6% wa, 0.0% hi, 0.0% si

Mem: 4037872k total, 4003648k used, 34224k free, 5512k buffers

Swap: 7164948k total, 629192k used, 6535756k free, 3511184k cached

查看12.6% wa

IO等待所占用的CPU时间的百分比,高过30%时IO压力高

其次、用iostat-x 1 10

avg-cpu:%user%nice%sys%iowait%idle

0.00 0.00 0.25 33.46 66.29

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm%util

sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

sdb 0.00 1122 17.00 9.00 192.00 9216.00 96.00 4608.00 123.79 137.23 1033.43 13.17 100.10

sdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

查看%util 100.10%idle 66.29

如果%util接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

idle小于70% IO压力就较大了,一般读取速度有较多的wait.

同时可以结合vmstat查看查看b参数(等待资源的进程数)

vmstat-1

如果你想对硬盘做一个IO负荷的压力测试可以用如下命令

time dd if=/dev/zero bs=1M count=2048 of=direct_2G

此命令为在当前目录下新建一个2G的文件

我们在新建文件夹的同时来测试IO的负荷情况

阅读剩余
THE END