Unix系统性能监控命令

文章描述:-2022年4月14日发(作者:汪雨年)Unix系统性能监控命令1、sar命令1.1Sar命令介绍:Sar[opti][-A][-ofile]t[n]在命令行中,n和t两个参数组合起来定义采集间隔和次数,t为采样间隔,是必须有的参数,你为采样次数,是可选的,默认值是1,-0file表示将命令结果以二进制格式存放在文件中,file在此处不是关键字,是文件名。Opti为命令行选项,sar命

-

Unix系统性能监控命令
2022年4月14日发
(作者:汪雨年)

Unix系统性能监控命令

1、sar命令

1.1Sar命令介绍:

Sar[opti][-A][-ofile]t[n]

在命令行中,n和t两个参数组合起来定义采集间隔和次数,t为采样间隔,是必须有的

参数,你为采样次数,是可选的,默认值是1,-0file表示将命令结果以二进制格式存

放在文件中,file在此处不是关键字,是文件名。Opti为命令行选项,sar命令选项

很多,下面只列出常用选项:

-A:所有报告的总和

-u:cup利用率

-d:硬盘使用报告

-r:没有使用的内存页面和硬盘块

-g:串口i/o的情况

-b:缓冲区使用情况

-a:文件读写情况

-c:系统调用情况

-R:进程的活动情况

-y:终端设备活动情况

-w:系统交换活动

1.2举例:

1.2.1使用sar–u命令监控cpu使用

$sar–u55

12:21:15%usr%sys%wlo%idle

%usr–运行在用户模式下cup的使用百分比

%sys–运行在系统模式下cup的使用百分比

%wio—进程在等待块i/o时闲置状态下cup的使用百分比

%idle—闲置状态时cup的使用百分比

显示说明:

在所有的显示中,我们应主要注意%wio和%idle,%wio的值过高,表示硬盘存在i/o

瓶颈,%idle值高,表示cup较空闲,如果%idle值高但系统响应时间慢时,就肯能

是cup等待分配内存,此时应加大内存容量。%idle值如果持续低于10,那么系统的

cpu处理能力相当较低,表示系统中最需要解决的资源是cpu。1.2.2使用命行sar-vtn例如,每30秒采样一次,连续采样5次,观察核心表的状态,需键入如下命

令:#sar-v305显示内容包括:proc-sz:目前核心中正在使用或分配的进程表的表项数,由核心参数

MAX-PROC控制inod-sz:目前核心中正在使用或分配的i节点表的表项数,由核心参数

MAX-IODE控制

file-sz:目前核心中正在使用或分配的文件表的表项数,由核心参数MAX-FILE

控制。

ov:溢出出现的次数。

Lock-sz:目前核心中正在使用或分配的记录加锁的表项数,由核心参数

MAX-FLCKRE控制

显示格式为:实际使用表项/可以使用的表项数

显示内容表示,核心使用完全正常,三个表没有出现溢出现象,核心参数不需

调整,如果出现溢出时,要调整相应的核心参数,将对应的表项数加大。1.2.3使用命行sar-dtn例如,每30秒采样一次,连续采样5次,报告设备使用情况,需键入如下命令:#sar-d305屏幕显示:SCO_SVscosysv3.2v5.0.5i8038610/01/200111:06:43device%busyavquer+w/sblks/savwaitavserv(-d)11:07:13wd-01.472.754.6714.735.503.1411:07:43wd-00.4318.773.078.6625.111.4111:08:13wd-00.772.782.777.264.942.7711:08:43wd-01.1011.184.1011.2627.322.6811:09:13wd-01.9721.785.8634.0669.663.35Averagewd-01.1512.114.0915.1931.122.80显示内容包括:device:sar命令正在监视的块设备的名字。%busy:设备忙时,传送请求所占时间的百分比。avque:队列站满时,未完成请求数量的平均值。r+w/s:每秒传送到设备或从设备传出的数据量。blks/s:每秒传送的块数,每块512字节avwait:队列占满时传送请求等待队列空闲的平均时间。

屏幕显示:

SCO_SVscosysv3.2v5.0.5i8038610/01/2001

10:33:23proc-szovinod-szovfile-szovlock-sz(-v)

10:33:53305/32101337/276401561/1706040/128

10:34:23308/32101340/276401587/1706037/128

10:34:53305/32101332/276401565/1706036/128

10:35:23308/32101338/276401592/1706037/128

10:35:53308/32101335/276401591/1706037/128avserv:完成传送请求所需平均时间(毫秒)。显示说明:在显示的内容中,wd-0是硬盘的名字,%busy的值比较小,说明用于处理传送

请求的有效时间太少,文件系统效率不高,一般来讲,%busy值高些,avque

值低些,文件系统的效率比较高,如果%busy和avque值相对比较高,说明硬盘

传输速度太慢,需调整。1.2.4命令sar-btn例如,每30秒采样一次,连续采样5次,报告缓冲区的使用情况,需键入如

下命令:#sar-b305屏幕显示:SCO_SVscosysv3.2v5.0.5i8038610/01/200114:54:59bread/slread/s%rcachebwrit/slwrit/s%wcachepread/spwrit/s(-b)14:55:290014:55:590014:56:29423298858860014:56:590014:57:290Average00显示内容包括:bread/s:每秒从硬盘读入系统缓冲区buffer的物理块数。lread/s:平均每秒从系统buffer读出的逻辑块数。%rcache:在buffercache中进行逻辑读的百分比。bwrit/s:平均每秒从系统buffer向磁盘所写的物理块数。lwrit/s:平均每秒写到系统buffer逻辑块数。%wcache:在buffercache中进行逻辑读的百分比。pread/s:平均每秒请求物理读的次数。pwrit/s:平均每秒请求物理写的次数。显示说明:在显示的内容中,最重要的是%cache和%wcache两列,它们的值体现着buffer

的使用效率,%rcache的值小于90或者%wcache的值低于65,应适当增加系统

buffer的数量,buffer数量由核心参数BUF控制,使%rcache达到90左

右,%wcache达到80左右。但buffer参数值的多少影响I/O效率,增加buffer,

应在较大内存的情况下,否则系统效率反而得不到提高。

1.2.5命令sar-gtn例如,每30秒采样一次,连续采样5次,报告串口I/O的操作情况,需键入如下

命令:#sar-g305屏幕显示:SCO_SVscosysv3.2v5.0.5i8038611/22/2001

17:07:03ovsiohw/sovsiodma/sovclist/s(-g)

17:07:330.000.000.00

17:08:030.000.000.00

17:08:330.000.000.00

17:09:030.000.000.00

17:09:330.000.000.00

Average0.000.000.00显示内容包括:ovsiohw/s:每秒在串口I/O硬件出现的溢出。ovsiodma/s:每秒在串口I/O的直接输入输出通道高速缓存出现的溢出。ovclist/s:每秒字符队列出现的溢出。显示说明:在显示的内容中,每一列的值都是零,表明在采样时间内,系统中没有发生串

口I/O溢出现象。

2.使用top命令发现系统中最影响性能的用户2.1top命令介绍

top[-][d][p][q][c][C][S][s][n]

d指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。

p通过指定监控进程ID来仅仅监控某个进程的状态。

q该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top

将以尽可能高的优先级运行。

S指定累计模式

s使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。

i使top不显示任何闲置或者僵死进程。

c显示整个命令行而不只是显示命令名

top命令是unix下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于

Windows的任务管理器

2.2top命令显示

Loadaverages:2.83,3.30,3.67

143processes124sleeping,15running,4oncup

Cupstates:45.9%idle,24.8%user,7.3%kernel,22.0%iowait,0.0%swap

Memory:2048Mreal,36Mfree,2920Mswapinuse,982Mswapfree

Pidusernamelwpprinicesizeresstatetimecpucommand

23696oracle11520586M536Mrun279:557.57%oracle

……

3.

使用mpstat命令确定cup瓶颈

3.1Mpstat命令介绍

mpstat[-P{|ALL}][internal[count]]

参数的含义如下:

参数解释

-P{|ALL}表示监控哪个CPU,cpu在[0,cpu个数-1]中取值

internal相邻的两次采样的间隔时间

count采样的次数,count只能和delay一起使用

当没有参数时,mpstat则显示系统启动以后所有信息的平均值。有interval时,第一

行的信息自系统启动以来的平均信息3.2屏幕显示$uptime12:45pmup119day(s),19:01,1user,loadaverage:2.96,2.98,3.30。。。。。。。。。3.3显示说明

uptime命令可以显示系统已经运行了多长时间,信息显示依次为:现在时间、系统已经运行

了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载,

提供快速查看cpu中所有任务(包括正在运行的任务)在1分钟,5分钟,15分钟内

的负载。在sun下是1,5,15分钟,在digtalunix下是5,30,60注释:那么什么是系统平均负载呢?系统平均负载是指在特定时间间隔内运行队列中

的平均进程数。如果每个CPU内核的当前活动进程数不大于3的话,那么系统

的性能是良好的。如果每个CPU内核的任务数大于5,那么这台机器的性能有

严重问题。

4.使用sar命令监控磁盘i/0问题4.1命令$sar–d524.2屏幕显示12:59:00device%busyavquer+w/sblks/savwaitavserv12:59:05md30710.810317380.07.5Md31340.4529340.07.1…..4.3显示内容-d选项监控磁盘i/o%busyAvque--平均队列长度R+w/s--读和写的活动

blks/s—传送的数据块的数量

avwait–平均等待时间

avserv--平均服务时间

4.4

较高的%busy和Avque意味着出现了磁盘i/0瓶颈

4.4命令

$sar–b25

4.5屏幕显示

17:08:24bread/slread/s%rcachebwrit/slwrit/s%wcachepread/spwrit/s

17:08:26

……

4.6显示内容

-b—选项报告缓冲区活动,它等同于磁盘i/o活动,如果怀疑数据库i/o有问题这个命令

很有用

bread/s–每秒钟从磁盘进行物理读入的数量

lread/s–每秒钟从缓冲区读入的数量

%rcache–读入请求的缓冲区命中率

bwrit/s–每秒钟向磁盘物理写入的数量,它给dba提供了服务器上整体希尔活动指标

lwrit/s–每秒钟向缓冲区写入的数量

%wcache–写入请求的缓冲区命中率

pread/s–每秒钟从磁盘读入的数量,这个是i/0子系统上负载的极好度量

pwrit/s—每秒钟写入磁盘的数量

4.7显示说明

所显示的内容反映了目前与系统buffer有关的读,写活。在所报告的数字中,最重

要的是%rcache和%wcache(统称为cache命中率)两列,它们具体体现着系统buffer

的效率。衡量cache效率的标准是它的命中率值的大小

5.使用iostat确定磁盘i/o瓶颈

5.1命令介绍

iostat[-t][interval[count]]

interval指每次统计间隔的时间;

count指按照这个时间间隔统计的次数。

Iostat可以用于报告终端和磁盘i/0活动情况,确定磁盘瓶颈。输出结果的第一行显

示了自数据库启动以来各个i/o的统计数据,最常用的选项有-d,-x,-D,-c(cpu

负载)

iostat是I/Ostatistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。

它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。它不能对某个进程进行

深入分析,仅对系统的整体情况进行分析。

5.2命令

$iostat–dmd30md31md32sd1055

5.3屏幕显示

Md30md31md32sd10

Kpstpsservkpstpsservkpstpsservkpstpsserv

94

…..

-d选项可以列出每秒传送的字节数,每秒的传输次数以及平均服务时间(以豪秒计)。-d

仅仅显示i/o,不区分读操作和写操作。

5.4命令$iostat–dmd30md31md32sd1055

5.5.屏幕显示

Md30md31md32sd10

Rpswpsutilrpswpsutilrpswpsutilrpswpsutil

100.5000.3000.3434.3

…..

-D选项报告每秒的读操作数量,写操作数量以及磁盘使用率

5.6命令$iostat–x53

5.7屏幕显示

Extendeddevicestatistics

Devicer/sw/skr/skw/swaitactvsvc_t%w%b

Md300.50.14.04.50.00.012.800

…..

-x选项报告所有磁盘的扩展磁盘统计数据

对结果的分析:

通过查看bps列和sps列的值我们可以知道哪些磁盘比较忙,哪些磁盘比较闲

6.使用sar命令和vmstat命令监控分页/交换一种可以快速判定自系统启动可以来是否存在任何交换活动的方法就是运行vmstat

–s命令,如果swp/in和swp/out列出现非零值,就说明很可能出现了问题。另外可以使

用sar命令挖掘更多的信息。

vmstat可以用来确定一个系统的工作是受限于CPU还是受限于内存:如果CPU的sy和us值相

加的百分比接近100%,或者运行队列(r)中等待的进程数总是不等于0,则该系统受限于CPU;

如果pi、po的值总是不等于0,则该系统受限于内存。

可以使用sar命令检查系统的分页/交换活动,任何分页和交换现象都预示着将出现问题。

在虚拟内存系统中,如果当前非活动用户(的进程)从内存移到磁盘上时,就会出现分

页现象(一个小问题)。而如果由于内存的不足造成当前活动用户(的进程)被移到了磁

盘上,就会出现交换现象(问题很严重)。分页不像交换那么糟糕,但是随着分页的增加,

很快就会出现交换。

6.1命令$sar–p55

6.2屏幕显示

15:15:44atch/spgin/sppgin/spflt/svflt/sslock/s

15:15:49109.15302.58351.29154.67680.91c0.40

…..

6.3显示内容

-p—选项报告分页活动

atch/s—每秒的分页故障数据,可通过在内存中重新声明一个页来解决故障(每秒附件)

pgin/s--每秒换进pagein请求数

ppgin/s—每秒换进的页数

pflt/s--每秒保护错误中的分页错误数(非法访问页)或者copy-on-write(写入时拷贝)

vflt/s--每秒翻译页错误数(不再内存中的有效页)

slock/s—每秒因软件锁请求物理i/o引起的错误数

6.4命令$sar–w55

6.5屏幕显示

15:25:00swpin/sbswin/sswpot/sbswot/spswch/s

15:25:050.000.00.000.06520

….

6.6显示内容

-w选项报告交换和内存切换活动

swpin/s--每秒进程换人的数量

bswin/s--每秒512个字节的换人数量

swpot/s--每秒进程换出的数量

bswot/s--每秒512个字节的换出数量

pswch/s--每秒进程上下文切换的数量

6.7命令$sar–r55

6.8屏幕显示

15:26:50freemenfreeswap

15:26:5545441998060

……

6.9显示说明

-r选项报告空闲内存和空闲交换

当freemen(空闲内存—以512字节为单位列出)低于一个特定的水平时,系统就开始分

页。如果它继续下降,系统就开始将一些进程交换出去。这个一个系统性能快速恶化的

信号,可以查占用过多内存的进程,或者是否存在过多的进程。

6.10命令$sar–g55

6.11屏幕显示

15:35:46pgout/sppgout/spgfree/spgscan/s%ufs_ipf

15:35:5143.5458.4557.060.000.00

…..

6.12显示内容

–g选项报告分页活动

pgout/s—每秒换出(pageout)请求数

ppgout/s–每秒换出(pageout)的页数

pgfree/s–由分页控制程序每秒放入空闲列表的页数

pgscan/s--由分页控制程序每秒扫描的分页数

%ufs_ipf—UFSincode与由iget获取的有重用页的空闲列表的比例。这些页已被填充,

无法被进程重新声明使用,这样,它就是iget造成的页面填充比例。

很高的ppgout(从内存中移出的页面数)也说明内存不足的问题。

每2秒采样一次,连续采样5次,报告缓冲区的使用情况

6.13命令#sar-b25

6.14屏幕显示

HP-UXchnytp01B.11.11U9000/80008/16/08

10:41:20bread/slread/s%rcachebwrit/slwrit/s%wcachepread/spwrit/s

10:41:22367400

10:41:2484800

10:41:261206000

10:41:284611400

10:41:372451500

Average5842833791432012900

6.15显示内容

bread/s:每秒从硬盘读入系统缓冲区buffer的物理块数。

lread/s:平均每秒从系统buffer读出的逻辑块数。

%rcache:在buffercache中进行逻辑读的百分比。

bwrit/s:平均每秒从系统buffer向磁盘所写的物理块数。

lwrit/s:平均每秒写到系统buffer逻辑块数。

%wcache:在buffercache中进行逻辑读的百分比。

pread/s:平均每秒请求物理读的次数。

pwrit/s:平均每秒请求物理写的次数。

6.16显示说明

在显示的内容中,最重要的是%cache和%wcache两列,它们的值体现着buffer的使用效率,%rcache

的值小于90或者%wcache的值低于65,应适当增加系统buffer的数量,buffer数量由核心参数

BUF控制,使%rcache达到90左右,%wcache达到80左右。但buffer参数值的多少影响I/O效

率,增加buffer,应在较大内存的情况下,否则系统效率反而得不到提高。

如果%rcache列的值小于90%,并且%wcache列的值不在70-80%之间,我们必须观察系统中什么

应用在做什么样的读/写操作,我们是否需要增加缓冲区的大小

注意:怀疑CPU存在瓶颈,可用sar-u和sar-q来看,怀疑I/O存在瓶颈,可用sar-b、sar-u和

sar-d来看

7.使用ipcs命令确定共享内存的使用情况Ipcs命令可以用来监控sga的使用情况,它报告sga中每个共享内存段尺寸,如果在

整个sga中没有足够的内存来容纳一个连续的内存段,sga就将建立非连续的内存段,在

实例崩溃的情况下,可能就会出现内存无法释放的问题。如果发生了这种情况,注意ipcrm

命令可以清除这些段(ipcrm–m用于内存段,ipcrm-s用于信号段)

7.1命令格式

ipcs[-mqs][-abcopt][-Ccore][-namelist]

ipcs–mob

可以看内存可用值ipcs-ma也可

7.2命令:ipcrm-m5

可以清除不用的内存,即在ipcs-mob中显示的ATTCH为0的值

7.3命令$ipcs–b

7.4屏幕显示

Ipcstatusfromasofsatjan716:04:05cst2006

Tidkeymodeownergroupqbytes

Messagequeues:

Tidkeymodeownergroupsegsz

Sharedmemory:

M4608oxdf00bc84–rw-r-----oracledba708837376

M4609oxbd76b6f0–rw-r------oracledba541065216

Tidkeymodeownergroupnsems

Semaphores:

S655360xae97–ra-----rootroot129

S10x100ae97–ra------rootroot128

S20x1–ra-ra-rarootroot1

S30x73657276–ra-ra-ra-rootroot3

S12451880xd8647e24–ra-r-----oracledba504

S12451890xbcdcaaa8–ra-r-----oracledba304

这里,sga建立了2个非连续的段。通常最好是让整个sga处于一个单一的共享内存段,

英文跟踪一个以上的段以及在这些段之间来回切换都需要额外的开销。可以在/etc/system文

件中增加参数shmmax的设置,以增加一个单一的共享内存段的最大尺寸。

fo

8.1语法:

/usr/sbin/swapinfo[-mtadfnrMqw]

输出:

KbKbKbPCTSTART/Kb

TYPEAVAILUSEDFREEUSEDLIMITRESERVEPRIAME

dev41943%0-1/dev/vg00/lvol2

reserve-213764-213764

memory12861601%

8.2说明:

swapinfo主要看used多少,而不在于总数大小,buffercache中的值交换到swap中后是不会

被释放出来的,只有user的进程进入swap后才会释放,所以swap的值很高也没有关系

9.

ifconfig:查看(或设置)网络设备信息

ifconfig-a:查看所有网络设置信息

:显示登录到服务器的情况以及服务器重启情况

:显示硬盘空间及使用情况

领导建议:

领导补充:

-

Unix系统性能监控命令

发布时间:2022-04-14 10:31:38
文章版权声明:除非注明,否则均为IT技术网-学习WEB前端开发等IT技术的网络平台原创文章,转载或复制请以超链接形式并注明出处。

发表评论

评论列表 (有 8 条评论,241人围观)
电脑保姆V铁粉4 minutes ago Google Chrome 93.0.4577.82 Windows 10 x64
以增加一个单一的共享内存段的最大尺寸
北京钓鱼台七号院V铁粉13 minutes ago Google Chrome 93.0.4577.82 Windows 10 x64
09
六种人不能吃石斛V铁粉1 minute ago Google Chrome 93.0.4577.82 Windows 10 x64
显示说明:在显示的内容中
东方爱婴团购V铁粉24 minutes ago Google Chrome 93.0.4577.82 Windows 10 x64
在所报告的数字中
长株潭轻轨V铁粉22 minutes ago Google Chrome 93.0.4577.82 Windows 10 x64
08
阿凡达全球票房V铁粉1 minute ago Google Chrome 93.0.4577.82 Windows 10 x64
13wd-01.9721.785.8634.0669.663.35Averagewd-01.1512.114.0915.1931.122.80显示内容包括:device:sar命令正在监视的块设备的名字
最好用的浏览器排行V铁粉9 minutes ago Google Chrome 93.0.4577.82 Windows 10 x64
ipcrm-s用于信号段)7.1命令格式ipcs[-mqs][-abcopt][-Ccore][-namelist]ipcs–mob可以看内存可用值ipcs-ma也可7.2命令:ipcrm-m5可以清除不用的内存

最近发表

随便看看

热门文章

标签列表