0x01 Disk
1. IO status iostat
/iotop
用于查看CPU状态统计信息和各类设备、磁盘分区的IO信息统计
iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] \
[ -x ] [ -y ] [ -z ] \
[ -j { ID | LABEL | PATH | UUID | ... } ] \
[ [ -T ] -g group_name ] \
[ -p [device [,...] | ALL ] ] \
[ device [...] | ALL ] [ interval [ count ] ]
第一次执行,默认输出开机到现在全部统计信息,之后每隔interval
输出一次,一共输出count
次,输出分为cpu
和device
两部分内容
输出表项分析
CPU 表部分
表项 | 内容 |
---|---|
%user | CPU在用户层级执行应用程序的时间占比 |
%nice | CPU在用户层级,执行设有nice priority的application的时间占比 |
%system | CPU在系统层面执行内核程序的时间占比 |
%iowait | 显示CPU因为系统外部磁盘IO导致的空闲时间占比 |
%steal | 显示虚拟化导致的CPU非自愿等待时间(此时supervisor在服务其他虚拟虚拟处理器) |
%idle | 显示CPU因为非磁盘IO原因导致的空闲时间占比 |
Device 表部分
表名 | 内容 |
---|---|
Device | 设备名称,在/dev中可以看到 |
tps | transfers per second |
Blk_reads/s \ Blk_wrtn/s | 当将一些设备设置Block时,每秒读写数据量 |
Blk_read \ Blk_wrtn | 当将一些设备设置Block时,读写总量 |
rrqm/s \ wrqm/s | 每秒被merge的读写请求数 |
r/s \ w/s | 每秒从设备(drive expressed)读写的数据量 |
rsec/s \ wsec/s | 每秒读写的扇区数(sector) |
avgrq-sz | 平均请求扇区的大小 |
avgqu-sz | 是平均请求队列的长度。毫无疑问,队列长度越短越好。 |
await | 每一个IO请求的处理的平均时间(单位是微秒毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。这个时间包括了队列时间和服务时间,也就是说,一般情况下,await 大于svctm ,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。 |
r_await \ w_awit | 读写请求被设备响应的平均时间 |
svctm | 表示平均每次设备I/O操作的服务时间(以毫秒为单位)。如果svctm 的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,如果await的值远高于svctm 的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢。 |
%util | 在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度 |
参数内容
过滤报告输出参数
参数 | 内容 |
---|---|
-c | 单独显示CPU报告 |
-d | 单独显示Device报告 |
-g <group_name> | 设定需要显示的设备群 |
-p [ { device [,...] | ALL } ] | 对于选定设备的不同分区单独显示 |
-j { ID | LABEL | PATH | UUID | ... } | 设定需要显示的设备名 |
-x | 显示额外统计参数 |
设定输出格式
参数 | 内容 |
---|---|
-k \ -m | 设定数据统计单位 Kb/s 还是 Mb/s |
-N | 显示LVM2设备统计信息时,使用device mapper name标识设备 |
-h | 更加便于阅读 |
-y | 执行多次输出时,第一次不再输出从开机到现在的统计信息 |
-z | 对于统计时间内的非活动设备不显示 |
-t | 每次输出时,显示输出时间 |
-T | 只显示Group统计结果,不显示独立设备显示结果 |
1.2. Disk capacity df
/ du
命令格式
输出表项分析
参数内容
0x02 Memory
2.1.
查看内存的方法
- top
- free
- cat /pro/meminfo
ps aux –sort -rss
- vmstat -s
- gnome-shell-system-monitor-applet