linux:sar监控命令

sar
sar -u   监控CPU
[root@Test1 ~]# sar -u
Linux 2.6.32-358.el6.i686 (Test1)     03/26/2015     _i686_    (1 CPU)

11:08:23 PM       LINUX RESTART

11:10:02 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
11:20:01 PM     all      0.05      0.00      1.12      1.04      0.00     97.79
Average:        all      0.05      0.00      1.12      1.04      0.00     97.79

%usr:用户进程消耗cpu的时间百分比
%nice:运行正常进程消耗cpu的时间百分比
%system:系统进程消耗cpu的时间百分比
%iowait:I/O等待所占cpu的时间百分比
%steal:在内存紧张环境下,pagein强制对不同页面进行的steal操作
%idle:CPU空闲状态的时间百分比
在所有显示中,应主要注意%iowait和%idle,%iowait的值过高,表示硬盘存在I/O瓶颈,%idle值高,表示cpu比较空闲,如果%idle值高,但系统系统响应慢,则有可能是cpu等待分配内存,此时应加大内存容量,%idle值如果持续低于10,那么系统cpu出来能力相对较低,表明系统中最需要解决的资源瓶颈是cpu。

sar -v 3 5       sar监控inode、文件和其他内核表
[root@Test1 /]# sar -v 3 5
Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

12:22:40 AM dentunusd   file-nr  inode-nr    pty-nr
12:22:43 AM     29225      1056     36515         2
12:22:46 AM     29225      1056     36515         2
12:22:49 AM     29225      1056     36515         2
12:22:52 AM     29225      1056     36515         2
indove-sz:目前核心中正在使用或分配的节点表的表项数,由核心参数MAX-INODE控制
file-sz  :目前核心中正在使用或分配的文件表的表项数,由核心参数MAX-FILE控制。
super-sz :溢出出现的次数
dentunusd: 目录高速缓存中未被使用的条目数

sar -r 2 4    监控内存和交换空间
[root@Test1 /]# sar -r 2 4     监控内存和交换空间
Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

01:00:35 AM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
01:00:37 AM    667612    363068     35.23     55968    119224    575564     18.60
01:00:39 AM    667612    363068     35.23     55968    119224    575564     18.60
01:00:41 AM    667612    363068     35.23     55968    119224    575564     18.60
01:00:43 AM    667612    363068     35.23     55968    119224    575564     18.60
Average:       667612    363068     35.23     55968    119224    575564     18.60
kbmemfree:因为这个值和free命令中的free值基本一致,所以它不包括buffer和cache的空间
kbmemused:因为这个值和free命令中的used值基本一直,所以它包括buffer和cache空间
%memused:  这个值是kbmemfree和内存总量(不包括swap)的百分比
kbbuffers和kbcached:这两个值就是free命令中的buffer和cache
kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap)。
%commit : 这个值是kbcommit与内存总量(包含swap)的一个百分比

sar 监控内存分页
[root@Test1 /]# sar -B 2 1
Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

01:30:59 AM  pgpgin/s pgpgout/s   fault/s  majflt/s  pgfree/s pgscank/s pgscand/s pgsteal/s    %vmeff
01:31:01 AM      0.00      0.00     18.59      0.00     53.77      0.00      0.00      0.00      0.00
Average:         0.00      0.00     18.59      0.00     53.77      0.00      0.00      0.00      0.00
pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)
pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)
fault/s:每秒系统产生的缺页数,即主缺页之和(major+minor)
majflt/s:每秒产生的主缺页数

sar 监控I/O速率
[root@Test1 /]# sar -b 2 1
Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

01:37:45 AM       tps      rtps      wtps   bread/s   bwrtn/s
01:37:47 AM      0.00      0.00      0.00      0.00      0.00
Average:         0.00      0.00      0.00      0.00      0.00
tps:每秒物理设备的I/O传输总量
rtps:每秒从物理设备读入的数据总量
wtps: 每秒从物理设备写入的数据总量
bread/s:每秒从物理设备读入的数据量,单位为块/s
bwrtn/s:每秒从物理设备写入的数据量,单位为块/s

sar -q  3 2    监控队列长度以及系统平均负载
[root@Test1 /]# sar -q 3 2
Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

01:47:55 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
01:47:58 AM         0       191      0.00      0.00      0.00
01:48:01 AM         0       191      0.00      0.00      0.00
Average:            0       191      0.00      0.00      0.00
runq-sz :运行队列的长度(等待运行的进程数)
plist-sz: 进程列表中进程(processes)和线程(threads)的数量
ldave-l : 最后1min的系统平均负载
ldave-5 : 最后5min的系统平均负载
ldave-l5 : 最后15min的系统平均负载

sar -W 3 2监控交换页信息
[root@Test1 /]# sar -W 3 2
]Linux 2.6.32-358.el6.i686 (Test1)     03/27/2015     _i686_    (1 CPU)

01:55:24 AM  pswpin/s pswpout/s
01:55:27 AM      0.00      0.00
01:55:30 AM      0.00      0.00
Average:         0.00      0.00
pswpin/s : 每秒系统换入的交换页面(swao page)数量
pswpout/s: 每秒系统换出的交换页面数量

sar -d 3 2 -p 监控设备使用情况
tps:每秒从物理磁盘I/O的次数,多个逻辑请求会合并为一请求个I/O磁盘,一次传输的大小是不确定的
rd_sec/s:每秒读扇区的次数
wr_sec/s:每秒写扇区的次数
avgrq-sz:平均每次设备I/O操作的数据大小(扇区)
avgqu-sz:磁盘请求队列的平均长度
await:从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒
svctm:系统处理每次请求的平均时间,不包括请求队列中消耗的时间
%util:I/O请求占CPU的百分比,比率越大,说明越饱和
要判断系统瓶颈问题,有时需要几个sar命令选项结合起来
怀疑cpu存在瓶颈,可以用sar -u 和sar -q
怀疑内存存在瓶颈,sar -B sar -r 和sar -w
怀疑I/O存在瓶颈,sar -b sar -u sar -d


[root@localhost logs]# sar -h
用法: sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
主选项和报告:
        -b      I/O 和传输速率信息状况
        -B      分页状况
        -d      块设备状况
        -I { <中断> | SUM | ALL | XALL }
                中断信息状况
        -m      电源管理信息状况
        -n { <关键词> [,...] | ALL }
                网络统计信息
                关键词可以是:
                DEV     网卡
                EDEV    网卡 (错误)
                NFS     NFS 客户端
                NFSD    NFS 服务器
                SOCK    Sockets (套接字)        (v4)
                IP      IP 流   (v4)
                EIP     IP 流   (v4) (错误)
                ICMP    ICMP 流 (v4)
                EICMP   ICMP 流 (v4) (错误)
                TCP     TCP 流  (v4)
                ETCP    TCP 流  (v4) (错误)
                UDP     UDP 流  (v4)
                SOCK6   Sockets (套接字)        (v6)
                IP6     IP 流   (v6)
                EIP6    IP 流   (v6) (错误)
                ICMP6   ICMP 流 (v6)
                EICMP6  ICMP 流 (v6) (错误)
                UDP6    UDP 流  (v6)
        -q      队列长度和平均负载
        -r      内存利用率
        -R      内存状况
        -S      交换空间利用率
        -u [ ALL ]
                CPU 利用率
        -v      Kernel table 状况
        -w      任务创建与系统转换统计信息
        -W      交换信息
        -y      TTY 设备状况

本文出自 “sar的监控命令” 博客,请务必保留此出处http://rainbow9912.blog.51cto.com/9070528/1637554

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。