Linux主机CPU使用情况检查

top,vmstat,mpstat,pidstat,dstat,nmon,sar

top

-c  :Command-line/Program-name toggle
            Starts  top  with  the  last  remembered `c' state reversed.  Thus, if top was displaying command lines, now that field will show program
            names, and visa versa.  
#从最上面开始,最后记住的“c”状态颠倒过来。
#因此,如果top显示命令行,那么现在该字段将显示程序名,反之亦然。

top -c 显示命令执行的目录,相对清晰

-H  :Threads-mode operation
            Instructs  top  to  display  individual  threads.   Without this command-line option a summation of all threads in each process is shown.
#显示进程内的每个线程
-p  :Monitor-PIDs mode as:  -pN1 -pN2 ...  or  -pN1,N2,N3 ...
            Monitor only processes with specified process IDs.  This option can be given up to 20 times, or you can provide a  comma  delimited  list
#监视指定进程
            

top  -Hp 显示进程内的每个线程 

vmstat:Virtual Memory Statistics

vmstat命令经常用来查看进程,内存,IO和全部CPU整体的情况,但是默认是以kb的形式显示的.

建议使用-Sm或者-SM(m按照1000计算,M按照1024计算),如果参数记不住可直接在默认去掉数值的后面3位就可以转换成M/s

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0      0 613100   2108 202000    0    0     6     1   49   88  0  0 100  0  0
 0  0      0 613100   2108 202000    0    0     0     0   56   88  1  0 99  0  0
 0  0      0 613100   2108 202000    0    0     0     0   54   94  0  0 100  0  0
 0  0      0 613100   2108 202000    0    0     0     0   52   79  0  0 100  0  0
 0  0      0 613100   2108 202000    0    0     0     0   49   81  0  1 99  0  0

r/b: r表示正在运行的进程,b表示有阻塞io的进程,这个值高,需要排查磁盘性能和读写速度

memory:显示了内存的使用情况,建议使用free -m/g进行查看内存。

swap:si表示由硬盘进入内存,so表示由内存到磁盘。在内存充足的情况下,这两个值是0,如果存在使用的情况,需要对内存进行评估

io:bi(Blocks received from a block device (blocks/s).),bo(Blocks sent to a block device (blocks/s).)

system:每单位时间的终端数和上下文切换数

cpu:系统使用,内核使用,剩余,等待和虚机CPU超分情况。重点查看us,sy和st。如果st值不是0,集群中某台虚机存在使用cpu资源较多,或者使用的cpu超过实际cpu总量。

mpstat:

Report processors related statistics.报告处理器相关的统计信息。可以查看到具体cpu的使用情况(执行top按1也可以)

mpstat 2 5

每隔两秒在所有处理器中显示五个全局统计数据报告。

mpstat -P ALL 2 3

以两秒间隔显示所有处理器的三个统计报告。

[root@sun ~]# mpstat -P ALL 1 3
Linux 3.10.0-1160.el7.x86_64 (sun) 	03/29/2021 	_x86_64_	(1 CPU)

05:10:15 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:10:16 AM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:10:16 AM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:10:16 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:10:17 AM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:10:17 AM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:10:17 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:10:18 AM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:10:18 AM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
Average:     all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
Average:       0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

iowait,显示在系统有未完成的磁盘I/O请求期间,CPU空闲的时间百分比

idle可查看系统剩余cpu情况。

pidstat:

pidstat -u 1 每隔1秒查看cpu

pidstat -r 1 每隔一秒查看内存

pidstat -d 1 每隔一秒查看磁盘

-p 指定pid ; -C 显示仅用命令名称中包含字符串(比如ssh)的任务,该字符串可以是正则表达式(比如"ssh|nginx")。

示例:

pidstat -r -p 1643 2 5  以两秒为间隔显示5个关于PID 1643的页面故障和内存统计数据的报告。

pidstat -C "fox|bird" -r -p ALL 显示命令名包含字符串“fox”或“bird”的所有进程的全局页面错误和内存统计信息

dstat

nmon

sar

 

1, top oder by with P: 1040 / / first according to the process load sorting find maxLoad (pid)

2, top - Hp process pid: 1073 / / thread find relevant load pid.

3, printf "0 x % x" thread pid: 0 x431 / / thread pid converted to hexadecimal, prepare the way for later find jstack log

4, jstack process pid | vim + / hex threads pid / / such as:jstack 1040|vim +/0x431

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

工具人01

仗剑天涯,从你的打赏开始

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值