zoukankan      html  css  js  c++  java
  • AIX系统分析工具详解

    目录

    性能检查总览:

          CPU性能分析步骤:

          内存分析步骤

          IO分析步骤

     性能检查总览:

    AIX性能检查模块包括CPU、内存、IO以及网络,其常规步骤可展示为下图:

    针对目前的实际情况,主要介绍CPU、内存和IO的内存分析常规步骤。

    CPU性能分析步骤:

    1、判断CPU(usr%+sys%)的比率是否大于90%,如超过转2。

    命令:sar,vmstat,topas, nmon等

    例子:topas,其中user%对应于用户态(usr%)占用的CPU使用比例,Kern%对应于系统态(sys%)占用的CPU使用比例,如下图:

    注:如果系统CPU有IO wait存在,说明可能IO或内存方面存在瓶颈,请按内存和IO分析步骤来检查。其中主要导致IO Wait的主要原因如下:

            a) 内存不够而引起频繁的的数据交换,导致数据存取存在交换空间的 I/O瓶颈。

            b) 硬盘数据分布不合理

    2、检查那个进程占用CPU资源较多

    命令:topas, nmon,ps -aux等

    示例(topas):

    3、判断是否有非业务进程或异常进程,如有则检查导致异常进程的原因,判断是否合理

    4、如主要为业务进程所用,收集CPU使用率详细信息。

          工具:tprof -k -s -e -x "sleep 收集的时间长度"

    注释:

    收集的时间长度一般不要太长,否则数据量会很大。

    这条命令将创建一个sleep.prof文件,主要关注图中标红项。

    5、判断Sys%的比例,如和往常相比占有率偏高,如是可能是应用问题,建议联系相关厂商或开发人员分析具体原因

    6、如Sys%相比往常偏低,可能是系统业务更加繁忙,有潜在的CPU瓶颈问题,建议增加CPU或找相应厂商工程师分析具体原因。

    内存分析步骤:

    1、判断系统是否有计算页面调入现象?换页空间是否持续增高?

    命令:vmstat,topas, nmon

    2、如有,查看文件型内存和计算型内存的占用比例,根据系统的类型判断设置是否合理,如文件内存占用不合理,建议通过系统参数调整

           a)对于数据库系统(Oracle,db2等),文件缓存比例不要太大,基点建议为5%左右

           b)对于文件操作型应用(如SAS),文件缓存的比例要相对较大。

           c)对于其它类型,建议文件缓存的比例不要超过20%

    命令:topas, nmon,vmo等

    3、查看占用内存最多的进程

    命令:nmon,ps aux|head –$(待列出的进程数目) 等.

    示例(nmon):

    4、判断是否有占用内存较多的非业务进程或异常进程,如有则请求相关人员或厂商查询导致异常或内存泄露的原因

    命令:svmon –Pns

    5、如均为业务进程,协助应用工程师调查业务目前内存使用是否正常

    6、附:详查内存使用情况的几个命令:

         用户物理内存使用情况:      svmon –U

         所有进程物理内存使用情况:  svmon –P

         特定进程物理内存使用情况:  svmon –P pid

         指定命令的物理内存使用情况:svmon –C command1… commandn

    实例:检查进程是否有内存泄露: 

    • 输入命令:svmon –P 进程ID,然后记录“Work process private”项对应的值
    • 输入命令:svmon –P 进程ID,然后记录“Work process private”项对应的值
    •  等待一段时间,重复运行刚才的命令:svmon –P 进程ID,对照“Work process private”项对应的值有没比以前增长很多,如有可能会有泄露问题

    IO分析步骤:

    1、判断系统是否有IO wait,如有则说明系统可能有IO性能问题

    命令:topas, nmon

    示例:(topas)

    2、查看IO概要信息,

         a)对内置盘,判断系统磁盘的繁忙率是否超过80%、读写流量和每个磁盘IO每秒请求数;

         b)对盘阵,主要检查读写流量和IO每秒请求数

    命令:topas, nmon, iostat

    示例:

     3、查看IO使用最高的几个进程,判断IO使用是否合理,排除备份等高IO使用情况

           命令:nmon,filemon

           示例:(nmon)

     4、查找最活跃的文件、文件系统、逻辑卷和物理卷,判断数据使用和分布是否合理?

          命令:filemon –o /tmp/filemon.out –O all

          示例:

    Most Active Logical Volumes

    ------------------------------------------------------------------------

      util  #rblk  #wblk   KB/s     volume                   description

    ------------------------------------------------------------------------

      1.00 10551264  5600 17600.8  /dev/rms09_lv          /RMS/bormspr0/oradata07

      1.00 6226928   7584 10394.4  /dev/rms06_lv          /RMS/bormspr0/oradata04

      1.00 128544 3315168  5741.5  /dev/rms04_lv          /RMS/bormspr0/oracletemp

    .......

    Most Active Physical Volumes

    ------------------------------------------------------------------------

      util  #rblk  #wblk   KB/s  volume                   description

    ------------------------------------------------------------------------

      1.00 3313059   4520 5531.2   /dev/hdisk66          SAN Volume Controller Device

      1.00 7563668  22312 12647.6  /dev/hdisk59          SAN Volume Controller Device

      1.00  53691 1868096 3204.1  /dev/hdisk61           SAN Volume Controller Device

     ……

    5、对于缓存型文件系统,检查系统是否有足够的缓存来处理文件页面

          a)检查系统文件内存的使用率和交换情况

          命令:filemon,topas, nmon

          b)判断系统内存是否足够用来和应该高速缓存那些由正在运行进程使用的文件页面?vmstat、svmon

          c)如有必要,调整vmo参数来增加系统文件内存的使用。

    6、如果是内置磁盘,检查“热”文件是否有很多碎片?如有碎片,利用工具重组物理分区分配。

        命令:fileplace,reorgvg

        示例:fileplace

        判断方法,顺序性=(总的存储数目Nfrags – 存储的分组数目)/总的存储数目,如果该值较小,则说明碎片太多。

        对本例,顺序性=(9538 - 18)/9538 = 99.8%


  • 相关阅读:
    16平衡树
    15二叉检索树
    11用户权限
    10触发器
    8函数
    8存储过程
    linux下如何进入单用户模式
    RHEL6.4 字符模式下安装图形界面图文教程
    杂记
    Java内存管理(一):深入Java内存区域
  • 原文地址:https://www.cnblogs.com/zhenning17/p/15201843.html
Copyright © 2011-2022 走看看