运行在IBM的P系列服务器上的AIX操作系统以其良好的性能、可扩展性和可用性征服了许多挑剔的用户,在现代主流信息系统中占有重要的地位。本文参考了一些成熟的理论,结合作者的性能测试实践经验,旨在对性能测试中AIX服务器的资源监控进行分析和总结。
1、负载压力条件下的性能监控
通过在监控负载压力条件下AIX服务器的表现,针对暴露的性能瓶颈进行调整,可以对信息系统进行优化。而对性能的监控主要可以通过商业软件和命令行两种方式实现,而前者主要通过调用系统自身命令行执行实现。
1.1 服务器资源监控指标:
AIX服务器的主要监控指标见下表:
1.2 服务器资源监控指标获取的方式:
服务器资源监控指标可以通过商业测试软件、监视工具、AIX命令行三种方式获取。
1.2.1 基于商业软件(如loadrunner)
开启RPC服务及其守护进程后,可以连接AIX服务器对其资源情况进行监控。
1.2.2 基于文本的监视工具(以Nmon为例)
在服务器上安装Nmon后,可以通过命令行实时获取服务器资源,既能获取原始数据资料(如下图1),也可通过后期处理得到可展示的图表,(如下图2)。
图1 测试中获取的Disk total 原始数据片段
图2 测试中Disk total指标生成图表
1.2.3 基于命令行
AIX提供了对服务器资源监控的多组命令,下面进行简要介绍。
1.2.3.1 Vmstat
# vmstat 2
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 0 22478 1677 0 0 0 0 0 0 188 1380 157 57 32 0 10
1 0 22506 1609 0 0 0 0 0 0 214 1476 186 48 37 0 16
1.2.3.2 Iostat
# iostat -t 2 6
tty: tin tout avg-cpu: % user % sys % idle % iowait
0.0 0.8 8.4 2.6 88.5 0.5
0.0 80.2 4.5 3.0 92.1 0.5
0.0 40.5 7.0 4.0 89.0 0.0
1.2.3.3 Sar
# sar -P ALL 2 3
17:30:50 cpu %usr %sys %wio %idle
17:30:52 0 8 92 0 0
1 0 4 0 96
2 0 1 0 99
3 0 0 0 100
- 2 24 0 74
17:30:54 0 12 88 0 0
1 0 3 0 97
2 0 1 0 99
3 0 0 0 100
- 3 23 0 74
1.2.3.4 PS
# ps aux
USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND
root 516 94.9 0.0 8 8 - A Mar 15 2503:26 kproc
root 17306 2.4 7.0 11840 8504 - A Mar 15 62:35 /usr/lpp/X11/bin/
root 33852 0.7 0.0 568 620 pts/9 A 14:47:29 0:01 /usr/bin/ksh
root 33486 0.5 2.0 2144 2136 pts/7A 14:15:15 0:11 /afs/austin.ibm.c
root 1032 0.2 0.0 64 56 - A Mar 15 6:09 kproc
root 31404 0.1 1.0 1128 1144 ? A 15:16:55 1:39 aixterm -e rlogin
root 29776 0.1 1.0 964 856 ? A 12:56:18 0:07 aixterm -e elm
其中需重点关注RSS、SZ、%MEM三个指标,RSS指的是进程中实时驻留的内存千字节大小,SZ指的是在进程的数据段的页空间的千字节虚拟尺寸。
1.2.3.5 Netstat
# netstat -i
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
lo0 16896 <Link> 144834 0 144946 0 0
lo0 16896 127 localhost 144834 0 144946 0 0
tr0 1492 <Link>10.0.5a.4f.3f.61658339 0 247355 0 0
tr0 1492 9.3.1 ah6000d 658339 0 247355 0 0
en0 1500 <Link>8.0.5a.d.a2.d5 0 0 112 0 0
en0 1500 1.2.3 1.2.3.4 0 0 112 0 0