1、iostat -m 硬盘读写性能
[admin@vm-lw-t02 ~]$ iostat -m
Linux 3.10.0-1062.el7.x86_64 (vm-lw-barrelled-tms-performance-canal-t02) 06/02/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
38.50 0.00 7.06 1.10 0.00 53.35
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 34.08 0.08 15.42 54409 10313184
dm-0 3.02 0.08 0.00 54301 3268
dm-1 31.15 0.00 15.42 98 10309914
-m:以M为单位显示[可替换K、M、G]
tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。“一次传输”意思是“一次I/O请求”。多个逻辑请求可能会被合并为“一次I/O请求”。“一次传输”请求的大小是未知的。
MB_read/s:每秒从设备(drive expressed)读取的数据量;
MB_wrtn/s:每秒向设备(drive expressed)写入的数据量;
MB_read:读取的总数据量;
MB_wrtn:写入的总数量数据量
2、iostat -x 磁盘使用率及响应时间
[admin@vm-t02 ~]$ iostat -x -m
Linux 3.10.0-1062.el7.x86_64 (vm-lw-barrelled-tms-performance-canal-t02) 06/02/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
38.50 0.00 7.06 1.10 0.00 53.35
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda 0.00 0.08 2.49 31.58 0.08 15.42 931.65 5.32 156.21 94.38 161.10 2.43 8.28
dm-0 0.00 0.00 2.48 0.54 0.08 0.00 58.40 0.24 81.07 94.96 17.47 18.58 5.61
dm-1 0.00 0.00 0.03 31.12 0.00 15.42 1013.77 5.11 164.00 78.42 164.07 1.39 4.33
rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的 时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge)
wrqm/s:每秒这个 设备相关的写入请求有多少被Merge了
r/s:每秒响应的读取请求数
w/s:每秒响应的写入请求数
rMB/s:每秒读取的数据量
wMB/s:每秒写入的数据量
await:每一个IO请求的处理的平均时间(单位是微秒)。这里可以理解为IO的响应时 间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。
%util:在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该 设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈
3、iostat -c CPU状态
[admin@vm-t02 ~]$ iostat -c
Linux 3.10.0-1062.el7.x86_64 (vm-lw-barrelled-tms-performance-canal-t02) 06/02/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
38.50 0.00 7.06 1.10 0.00 53.34
4、vmstat 内存使用情况
[admin@vm-t02 ~]$ vmstat 1 10
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
5 0 0 148824 0 5784632 0 0 22 4113 1 9 39 7 53 1 0
2 0 0 148028 0 5784664 0 0 0 0 12316 22368 46 10 44 0 0
2 0 0 148116 0 5784664 0 0 0 0 12409 23361 44 7 48 0 0
2 0 0 148148 0 5784664 0 0 0 0 12176 23661 45 7 48 0 0
3 0 0 147744 0 5784664 0 0 0 0 11666 20677 45 9 46 0 0
r:在运行队列中等待的进程数
b:在等待io的进程数
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: 闲置时间
r、b列一般为0,表示没有等待进程,如果不为0表示系统性能有问题
si、so 两 列,表示内存交换的频繁程度,如果数值长期很大,表示内存不够,要和硬盘交换数据,也可以表示要读写的数据每次都不一样
bi、bo 两列,表示I/O输入输出很频繁