Linux从sar到sar2html的认识
这些变形的工具、诸如:淘宝的Tsar、ksar、sar2html....等、都是通过抓取 sar的数据
所以在最终呈现的数据上变化不大、只是展现的手段和效果不一样而已
sar 是帮助我们了解当前系统的内存、CPU和IO(磁盘IO和网络IO)
下面通过简单的几个方面介绍一下sar的使用
㈠ 内存
以下两个关键指标、让我们对系统使用内存情况一目了然
⑴ 内存使用情况统计
-r:输出物理内存和虚拟内存的统计信息
[plain]
[root@obe11g ~]# sar -r 5 4
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013
05:11:21 AM kbmemfree kbmemused %memused kbbuffers kbcached kbswpfree kbswpused %swpused kbswpcad
05:11:26 AM 291880 1645960 84.94 47836 1309352 4192956 0 0.00 0
05:11:31 AM 291832 1646008 84.94 47836 1309352 4192956 0 0.00 0
05:11:36 AM 291816 1646024 84.94 47836 1309352 4192956 0 0.00 0
05:11:41 AM 293608 1644232 84.85 47836 1309372 4192956 0 0.00 0
Average: 292284 1645556 84.92 47836 1309357 4192956 0 0.00 0
参数解释:
kbmemfree:剩余可用内存、单位K
kbmemused:已用内存、以K 为单位、该值不考虑内核自身所使用的内存
%memused:已用内存百分比
kbbuffers:已用buffer(内核所用)、单位K
kbcached:已用cache(内核所用)、单位K
kbswpfree:剩余Swap、单位K
kbswpused:已用Swap、单位K
%swpused:已用Swap百分比
kbswpcad:被缓存的Swap、单位K
⑵ 分页统计
[plain]
-B
[root@obe11g ~]# sar -B 5 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013
05:16:56 AM pgpgin/s pgpgout/s fault/s majflt/s
05:17:01 AM 0.00 39.20 4.60 0.00
05:17:06 AM 0.00 23.20 117.20 0.00
05:17:11 AM 0.00 23.20 114.00 0.00
05:17:16 AM 0.00 14.40 113.80 0.00
05:17:21 AM 0.80 48.00 1470.00 0.00
Average: 0.16 29.60 363.92 0.00
参数解释:
pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)
pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)
fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)
majflt/s:每秒钟产生的主缺页数.
㈡ CPU
-u
[plain]
[root@obe11g ~]# sar -u 3 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013
05:25:41 AM CPU %user %nice %system %iowait %idle
05:25:44 AM all 2.00 0.00 1.67 0.00 96.33
05:25:47 AM all 0.67 0.00 1.00 0.00 98.33
05:25:50 AM all 2.00 0.00 1.00 0.00 97.00
05:25:53 AM all 4.00 0.00 6.33 0.00 89.67
05:25:56 AM all 0.67 0.00 1.67 0.00 97.67
Average: all 1.87 0.00 2.33 0.00 95.80
参数解释:
%user:显示在用户级别(application)运行使用 CPU 总时间的百分比
%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比
%system:在核心级别(kernel)运行所使用 CPU 总时间的百分比
%iowait:显示用于等待I/O操作占用 CPU 总时间的百分比
%idle:显示 CPU 空闲时间占用 CPU 总时间的百分比
以下是三种常见的场景:
1)若 %iowait 的值过高,表示硬盘存在I/O瓶颈
2)若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
3)若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU
㈢ IO
⑴ 磁盘IO
[plain]
[root@obe11g ~]# sar -b 3 5
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013
05:32:02 AM tps rtps wtps bread/s bwrtn/s
05:32:05 AM 0.00 0.00 0.00 0.00 0.00
05:32:08 AM 0.00 0.00 0.00 0.00 0.00
05:32:11 AM 0.00 0.00 0.00 0.00 0.00
05:32:14 AM 0.00 0.00 0.00 0.00 0.00
05:32:17 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
⑵ 网络IO
用法sar -n { keyword [,...] | ALL }, keyword包括:
DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6, EIP6, ICMP6, EICMP6 和 UDP6
不同的keyword统计不同的方面,关于网络IO的统计主要是用DEV
[plain]
[root@obe11g ~]# sar -n DEV 2 3
Linux 2.6.9-42.0.0.0.1.EL (obe11g.us.oracle.com) 07/24/2013
05:37:21 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:23 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:23 AM eth0 14.00 1.00 1969.00 58.00 0.00 0.00 0.00
05:37:23 AM sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:23 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:25 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:25 AM eth0 8.50 1.00 804.00 42.00 0.00 0.00 0.00
05:37:25 AM sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
05:37:25 AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
05:37:27 AM lo 0.50 0.50 44.00 44.00 0.00 0.00 0.00
05:37:27 AM eth0 7.50 0.50 771.50 21.00 0.00 0.00 0.00
05:37:27 AM sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
Average: lo 0.17 0.17 14.67 14.67 0.00 0.00 0.00
Average: eth0 10.00 0.83 1181.50 40.33 0.00 0.00 0.00
Average: sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
无论是sar、还是其变体、都是只是故障诊断和性能调优的工具、