AIX基本命令topas简介

由于最近工作需要涉及到AIX主机、存储层面,就对这方面的内容做个简要的笔记,以供后续参考。

topas命令利用System Performance Measurement Interface(SPMI) API获得有关信息,使系统开销保持最小程度,topas命令用于监控各种系统资源,比如cpu使用情况、内存和换页空间、磁盘性能、网络性能以及NFS统计信息等

Topas Monitor for host:    pgrid1               EVENTS/QUEUES    FILE/TTY
Thu Oct 15 21:13:28 2015   Interval:  2         Cswitch    1196  Readch     3694
                                                Syscall 2144.2K  Writech 1292.5K
CPU  User%  Kern%  Wait%  Idle%                 Reads        14  Rawin         0
ALL   19.7    6.0   20.9   53.4                 Writes      139  Ttyout      296
                                                Forks         0  Igets         0
Network  KBPS   I-Pack  O-Pack   KB-In  KB-Out  Execs         0  Namei        25
Total     9.0     52.0    50.5     4.4     4.6  Runqueue    2.0  Dirblk        0
                                                Waitqueue   5.5
Disk    Busy%     KBPS     TPS KB-Read KB-Writ                   MEMORY
Total   100.0   2646.2   352.0     0.0  2646.2  PAGING           Real,MB   61438
                                                Faults       27  % Comp     52
FileSystem        KBPS     TPS KB-Read KB-Writ  Steals      129  % Noncomp  19
Total              1.3K  145.5    3.6    1.3K   PgspIn        0  % Client   19
                                                PgspOut       0
Name            PID  CPU%  PgSp Owner           PageIn        0  PAGING SPACE
topasrec   26017938  13.3   4.2 root            PageOut     325  Size,MB   65536
emcp_mon    5767372  12.8   3.7 root            Sios        326  % Used      0
topas      43712720   0.0   8.7 oracle                           % Free    100
oracle     59048168   0.0  14.5 oracle          NFS (calls/sec)
agent      14155828   0.0  27.9 toptea          SerV2         0  WPAR Activ    0
oracle     11403504   0.0  17.9 oracle          CliV2         0  WPAR Total    0
xmtopas    58523722   0.0   4.3 root            SerV3         0  Press: "h"-help
oracle     44826690   0.0  14.5 oracle          CliV3         0         "q"-quit
oracle     45613158   0.0  16.5 oracle
aioserve   36110368   0.0   0.4 oracle
aioserve   15990858   0.0   0.4 oracle
aioserve   14024870   0.0   0.4 oracle
aioserve   18808886   0.0   0.4 oracle
aioserve   20316332   0.0   0.4 oracle
aioserve   55247090   0.0   0.4 oracle
aioserve   14811342   0.0   0.4 oracle
aioserve   18612470   0.0   0.4 oracle
aioserve   47120470   0.0   0.4 oracle
aioserve   10092550   0.0   0.4 oracle
aioserve   56361084   0.0   0.4 oracle

接下来对上面的topas命令做一个简要的说明:

CPU部分:
CPU  User%  Kern%  Wait%  Idle%
ALL   19.7    6.0   20.9   53.4

其中的user%显示的是用户进程占用的cpu时间比例,kern%显示的操作系统内核占用的cpu时间比例,wait%显示用于等待IO资源上占用cpu的时间比例(当这个值比较高,表示IO已经存在瓶颈),idle%显示的cpu空闲时间比例

如果按两次c键则会显示CPU列表,按一次c键又会关闭这个列表
CPU  User%  Kern%  Wait%  Idle%
14    76.1   17.5    0.0    6.4
0     68.4   14.2    0.0   17.3
12    21.3   16.7    0.0   62.0
4      9.4    2.3    0.0   88.4
8      7.7    6.0    0.0   86.3
6      7.4    2.2    0.0   90.4
2      0.2    0.4    0.0   99.4
10     0.0    0.1    0.0   99.9

网络接口:
Network  KBPS   I-Pack  O-Pack   KB-In  KB-Out
Total     9.0     52.0    50.5     4.4     4.6

network表示的是网路接口的名称,KBPS表示的在监视时间内每秒钟总吞吐量,I-Pack显示的是监视时间内每秒钟收到的数据包数目,O-Pack显示的是监视时间内每秒钟发送数据库数目,KB-In显示的是每秒钟接受的KB数目,KB-Out表示的是每秒钟发送的KB数目

同样按n键后可以以列表形式显示
Network  KBPS   I-Pack  O-Pack   KB-In  KB-Out
lo0       8.4     50.0    50.0     4.2     4.2
en0       1.0      4.0     4.0     0.2     0.8
en4       0.2      1.0     1.0     0.1     0.1
磁盘部分:
Disk    Busy%     KBPS     TPS KB-Read KB-Writ
Total   100.0   2646.2   352.0     0.0  2646.2

Disk表示物理磁盘的名称;busy%表示物理磁盘繁忙的百分比;即磁盘能满足的最大IOPS(每秒IO操作数)和当前IO数量的比率;KBPS表示的是监视时间内每秒钟读和写的KB数目;TPS表示的是每秒钟发送到物理磁盘的传输数据,传输是对物理磁盘的IO请求,多个逻辑请求可组合成对磁盘的单个IO请求;KB_read和KB_write则表示的物理磁盘每秒钟读取和写入BK的数目。

同样按d键后可以详细的显示各个物理磁盘的信息:
Disk    Busy%     KBPS     TPS KB-Read KB-Writ
power601  0.0     8.0      0.0    0.0     8.0
hdisk0    0.0     0.0      0.0    0.0     0.0
hdisk1    0.0     0.0      0.0    0.0     0.0
hdisk95   0.0     0.0      0.0    0.0     0.0
hdisk103  0.0     0.0      0.0    0.0     0.0
hdisk99   0.0     0.0      0.0    0.0     0.0
hdisk100  0.0     0.0      0.0    0.0     0.0
hdisk110  0.0     0.0      0.0    0.0     0.0
hdisk102  0.0     0.0      0.0    0.0     0.0
hdisk104  0.0     0.0      0.0    0.0     0.0
hdisk105  0.0     0.0      0.0    0.0     0.0
hdisk101  0.0     0.0      0.0    0.0     0.0
hdisk96   0.0     0.0      0.0    0.0     0.0
进程部分:
Name            PID  CPU%  PgSp Owner
topasrec   26017938  13.3   4.2 root
emcp_mon    5767372  12.8   3.7 root
topas      43712720   0.0   8.7 oracle
oracle     59048168   0.0  14.5 oracle
agent      14155828   0.0  27.9 toptea
oracle     11403504   0.0  17.9 oracle
xmtopas    58523722   0.0   4.3 root
oracle     44826690   0.0  14.5 oracle
oracle     45613158   0.0  16.5 oracle
aioserve   36110368   0.0   0.4 oracle
aioserve   15990858   0.0   0.4 oracle
aioserve   14024870   0.0   0.4 oracle
aioserve   18808886   0.0   0.4 oracle
aioserve   20316332   0.0   0.4 oracle
aioserve   55247090   0.0   0.4 oracle
aioserve   14811342   0.0   0.4 oracle
aioserve   18612470   0.0   0.4 oracle
aioserve   47120470   0.0   0.4 oracle
aioserve   10092550   0.0   0.4 oracle
aioserve   56361084   0.0   0.4 oracle

在进程部分topas默认列出最消耗cpu的几个进程
其中name表示的可执行程序名称,PID表示的进程id,%cpu表示该进程占用cpu的资源,PgSp表示分配给此进程的调页空间大小,即进程占用的pagingspace的空间大小,ower表示进程所有者

事件/队列部分:

EVENTS/QUEUES    FILE/TTY
Cswitch    1196  Readch     3694
Syscall 2144.2K  Writech 1292.5K
Reads        14  Rawin         0
Writes      139  Ttyout      296
Forks         0  Igets         0
Execs         0  Namei        25
Runqueue    2.0  Dirblk        0
Waitqueue   5.5

显示的是所选系统全局事件的每秒频率、线程运行和等待队列平均大小

Cswitch:在监视时间内每秒上下文切换的数量
Syscalls:在监视时间内每秒执行的系统调用数量
read:在监视时间内每秒执行的read系统调用数量
write:在监视时间内每秒执行的write系统调用数量
forks:在监视时间内每秒执行的fork系统调用数量
execs:在监视时间内每秒执行的exec系统调用数量
runqueue:准备运行但需要等待处理器可用的平均线程数目
waitrunqueue:正在等待页面调度完成的平均线程数目

文件/TTY部分:
FILE/TTY
Readch 3694
Writech 1292.5K
Rawin 0
Ttyout 296
Igets 0
Namei 25
Dirblk 0

显示的所选文件与tty统计信息的每秒频率

readch:在监视时间内read系统调用每秒读的字节数
writech:在监视时间内write系统调用每秒写的字节数
rawin:在监视时间内从TTY中每秒读取的原始字节数
Ttyout:在监视时间内每秒写入的TTY中的字节数
Igets:在监视时间内每秒调用信息节点查找历程的数量
Namei:在监视时间内每秒调用路径名查找历程的数量
Dirblk:在监视时间内被目录搜索历程每秒扫描的目录快数目

页面调度:
PAGING
Faults 27
Steals 129
PgspIn 0
PgspOut 0
PageIn 0
PageOut 325
Sios 326

换页空间即磁盘磁盘上的空间,在AIX操作系统中用来做内存空间使用,磁盘空间的速度相对于内存慢很多,换页空间只是内存页面的一个暂时存放地,存放的是那些长期不怎么用到的内存页面,如果paging大量出现,这个时候就说明了内存不够用了.页面调度主要要关注Pagein和Pageout部分,如果这两个值长期较大,在技术上叫做内存颠婆,即不停的把内存页面换到磁盘空间上,由于磁盘空间把内存页面读进来,系统的内存使用效率变的极差,系统响应性能也会变慢。

faults:在监视时间内每秒页面出错的数量,这个主要是应用程序指无法申请到内存
steals:在监视时间内每秒钟有物理内存4K帧被虚拟内管管理器占用
PgspIn:在监视时间内每秒钟从调页空间读取的4K页面的数量
PgspOut:在监视时间内每秒钟从把4K页面写入调页空间额数量
PageIn:在监视时间内每秒钟读取4K页面的数量。这包括于从文件系统读取有关的页面调度活动,从这个值减去PgspIn就可以得到在监视时间内每秒钟从文件系统读取的4K页面的数量
PageOut:在监视时间内每秒钟写4K页面的数量。从这个值中减去PgspOut就可以得到在监视时间内每秒钟写入文件系统4k页面的数量
Sios:在监视监视内虚拟内存管理器每秒钟发出的IO请求数目

内存部分:
MEMORY
Real,MB 61438
% Comp 52
% Noncomp 19
% Client 19

显示实际内存大小与内存使用的分布情况:

Real,MB:实际的内存大小
% Comp :当前分配给计算页面帧的实际内存的百分数,计算页面帧通常是那些被调页空间支持的帧
% Noncomp:当前分配给非计算页面帧的实际内存百分数,非计算页面帧通常是那些被文件空间支持的帧
% Client :当前被分配用来高速缓存远程安装的文件的实际内存的百分数

计算型内存就是进程实际使用的内存,例如程序中用到了堆栈,进程中变量熟知都需要在内存中保存,这部分内存就是计算型内存,而操作系统进行的文件读写,需要的IO缓冲区,或者写程序时打开文件、读写文件、均在文件件缓冲区进行,这部分内存就是非计算型内存。

调页空间:
PAGING SPACE
Size,MB 65536
% Used 0
% Free 100

%used:当前在使用的调页空间的百分比
%free:当前未使用的调页空间的百分比

如果调页空格键的使用率长期增长,就说明系统内存已经严重不足,已经开始使用磁盘空间来缓冲内存了(一般达到50%就需要警惕了)

NFS部分:
NFS (calls/sec)
SerV2 0 WPAR Activ 0
CliV2 0 WPAR Total 0
SerV3 0 Press: “h”-help
CliV3 0 “q”-quit

oracle@pgrid1:/home/oracle$ uname -a
AIX pgrid1 1 6 00C30C964C00
分别表示的是操作系统名、节点名称、操作系统的发型版本号、操作系统版本硬件运行系统的机器ID号

root@pgrid1:[/]# lsdev -C|grep proc
proc0          Available 00-00       Processor
proc2          Available 00-02       Processor
proc4          Available 00-04       Processor
proc6          Available 00-06       Processor
proc8          Available 00-08       Processor
proc10         Available 00-10       Processor
proc12         Available 00-12       Processor
proc14         Available 00-14       Processor

lsdev查看cpu数量

root@pgrid1:[/]# bootinfo -r
62914560
bootinfo -r查看系统的内存

root@pgrid1:[/]# bootinfo -y
64
bootinfo查看系统的位数

root@pgrid1:[/]# errpt
IDENTIFIER TIMESTAMP  T C RESOURCE_NAME  DESCRIPTION
A924A5FC   1105163415 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
A924A5FC   1101041415 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
A924A5FC   1101022115 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
9D30B78E   1031101315 T S tty0           RECEIVER OVER-RUN ON INPUT
4DA8FE60   1030115015 T S DR_KER_MEM     Memory related DR operation failed
4DA8FE60   1030061515 T S DR_KER_MEM     Memory related DR operation failed
A924A5FC   1028005315 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
A924A5FC   1020190815 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
A924A5FC   1015174515 P S SYSPROC        SOFTWARE PROGRAM ABNORMALLY TERMINATED
F7FA22C9   1014164115 I O SYSJ2          UNABLE TO ALLOCATE SPACE IN FILE SYSTEM
A6D1BD62   1014002515 I H unspecified    Firmware Event

root@pgrid1:[/]# errpt -aj A924A5FC
---------------------------------------------------------------------------
LABEL:          CORE_DUMP
IDENTIFIER:     A924A5FC

Date/Time:       Thu Nov  5 16:34:11 GMT+08:00 2015
Sequence Number: 3679
Machine Id:      00C30C964C00
Node Id:         pgrid1
Class:           S
Type:            PERM
WPAR:            Global
Resource Name:   SYSPROC

Description
SOFTWARE PROGRAM ABNORMALLY TERMINATED

Probable Causes
SOFTWARE PROGRAM

User Causes
USER GENERATED SIGNAL

        Recommended Actions
        CORRECT THEN RETRY

Failure Causes
SOFTWARE PROGRAM

        Recommended Actions
        RERUN THE APPLICATION PROGRAM
        IF PROBLEM PERSISTS THEN DO THE FOLLOWING
        CONTACT APPROPRIATE SERVICE REPRESENTATIVE

。。。。。。

erupt可以查看系统的报错信息

root@pgrid1:[/]# oslevel -r
6100-06
查看详细的操作系统版本

root@pgrid1:[/]# lsps -a
Page Space      Physical Volume   Volume Group Size %Used Active  Auto  Type Chksum
lvswap01        hdisk1            rootvg       32768MB     1   yes   yes    lv     0
hd6             hdisk0            rootvg       32768MB     1   yes   yes    lv     0

lsps查看交换空间的大小及其使用率
root@pgrid1:[/]# swap -l
device              maj,min        total       free
/dev/lvswap01         10, 17     32768MB     32708MB
/dev/hd6              10,  2     32768MB     32717MB

swap也是查看交换空间使用信息
root@pgrid1:[/]# vmstat 3

System configuration: lcpu=16 mem=61438MB

kthr    memory              page              faults        cpu    
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
 2  2 11105499 1268208   0   0   0 2030 2031   0 622 2219481 1898 20  7 58 15
 2  3 11105501 1268084   0   0   0 1470 1471   0 525 2192650 1630 21  6 60 13
 3  3 11105502 1268204   0   0   0 4594 4595   0 1868 2186276 4102 22  8 57 13
vmstat和linux中的vmstat类似,可以查看内存、进程、cpu、调页空间等使用状况。

About xiaoyu

xiaoyu,享受数据库带给xiaoyu的乐趣! 13439818916@163.com 欢迎邮件联系讨论
This entry was posted in linux、unix、windows. Bookmark the permalink.