yum install sysstat 安装 sar
[root@wang /]# sar -n DEV Linux 2.6.32-431.el6.x86_64 (wang) 2016年12月21日 _x86_64_ (4 CPU) 08时29分02秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s 08时30分01秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 08时30分01秒 eth0 1.63 0.91 0.14 0.11 0.00 0.00 0.00 平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 平均时间: eth0 1.63 0.91 0.14 0.11 0.00 0.00 0.00
[root@wang /]# sar -n DEV -f 路径文件 指定查看历史文件
网上资料
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 设备状况