HPUX操作系统性能分析指南(8页).doc
-HPUX操作系统性能分析指南-第 7 页HPUX系统性能检查指南中国惠普有限公司张天2008-7修改记录编号日期描述版本作者审核发布日期12008-07-28建立文档目 录1 前言3编写目的3预期读者32 系统性能监控综述42.1 监控资源对象和标准4分析工具43 监控系统总体运行状态44 性能状态的判定流程和监命令6性能状态的判定流程6内存分析74.3 DISK IO 分析104.4 CPU 分析124. 5网络151 前言编写目的预期读者基础设施系统管理员,相关运行维护技术人员。2 系统性能监控综述2.1 监控资源对象和标准在HP的系统平台上,我们通常有4类资源需要我们的关注分别为: CPU,内存,磁盘IO和网络。一般来说此四类资源与系统整体性能息息相关,在日常的维护中,我们需要经常性的对这些资源的使用情况加以跟踪分析,以确定当前系统资源是否与实际业务压力相符,如果存在问题则通过系统或应用的调整加以解决。以下为HPUX 各类资源的性能阀值。值得注意的这里的阀值并非指系统峰值而是持续值。只有当系统持续超越这些阀值的时候才能够判断相应的资源为系统瓶颈。Memory BottleneckBoth vhand and swapper activeDisk BottleneckDisk utilization > 50%Request queues > 3CPU BottleneckCPU utilization > 90%Run queues > 3 per processorNetwork BottleneckCollisions/out-bound packets > 5%2.2分析工具HPUX操作系统提供的用于检查系统性能的命令和工具主要分为两种:1.标准UNIX命令和自带的性能分析工具;2.收费的性能分析软件。常用工具:标准UNIX命令:检查CPU 状态的命令 sar u; sar q; top ;vmstat检查内存状态的命令 vmstat,sar -b,top,swapinfo检查IO状态的命令 sar d; sar u; sar b; 检查网络状态的命令 netstat 收费的性能分析软件为GLANCE,是由 HP 提供的一个功能强大的性能分析工具,可以监控几乎所有的系统资源。同时HP还提供OVPM和MWA等作为后台性能状态收集工具。3 监控系统总体运行状态总体的性能状态收集一般是通过GLANCE来简单判断系统的总体性能。 值得注意的是,我们需要关注的是持续的性能峰值,对于瞬时峰值则不必太关注。通过GLANCE 的默认界面(下图)我们可以知道系统资源的大体使用情况(红色标识部分),其中我们可以看到:CPU 使用率为100;DISK 使用率为100;内存使用率为75;SWAP使用率为59;由此我们可以简单的判断系统存在很大的CPU 及IO 压力。从而判断了整体的性能状态和资源使用情况。然后通过后文介绍的方法对每一种不同的资源进行具体分析。需要注意的是下图中DISK 100%,并非指系统全部硬盘,而是指使用率最高的1块或者若干块硬盘,也就是说CPU 的使用率取所有的CPU使用率的平均值,而DISK IO 则取最忙的硬盘的峰值。在GLANCE监控界面的左上角可以观察到服务器名,当前系统时间,而右上角则是相关资源的当前刷新值,平均值和自从GLANCE 运行起来后的该项资源所达到的最高值。界面下方列出各个进程对资源的实际使用情况,这些进程默认是按照对CPU消耗的使用率由大到小进行排序。除了GLANCE 我们也可以通过TOP 来进行判断,但是没有GLANCE 直观。此处不再举例说明。同时通过GLANCE (热键A)我们可以用实现定义好的方法判定每一种应用对系统资源的使用情况,但是实现此功能需要进行一定的配置4 性能状态的判定流程和监命令4.1性能状态的判定流程一般来说我们从上图发现系统存在一定压力后,可以采用如下方式对系统各项资源进行判定,(下图取自HPUX PERFORMANCE TUNING ).值得注意的是DISK 使用率>50%是一个理想值,更多情况下我们通过磁盘响应时间和DISK QUEUE 来判断是否存在IO 瓶颈。磁盘使用率只作为参考值而非关键标准。上面的监控流程,主要是参考GLANCE ,如果相关主机上没有GLANCE,那么可以通过VMSTAT或者SAR 来进行判断。4.2内存分析内存作为系统重要的资源对于减少IO访问提高应用响应速度有着重要的意义。 A 判断条件. 内存使用率高SWAP区被使用,. 持续的页面PAGE OUT (SWAP和VHAND 进程持续激活)B.相关判定命令内存不足的判定条件主要是是否有持续的PAGE OUT和 VHAND/SWAPPER进程是否持续激活 所以所有的工具以观测以是否页面交换为主。下图中红色字体为需要观测的值:首先GLANCE 中使用热键(d)观测是否对VIRTUAL MEMEORY由持续读写,如果由表明系统对交换区持续访问。其次 GLANCE 中使用热键(m),观测是否由大量的VM读写,同时可以观测到系统的内存使用情况。如还有多少自由内存,及系统、应用、BUFFER 等分别对系统的占用情况。第三 GLANCE中使用热键(v)观测是否相对应的交换区设备有持续且大量的读写第四,可以观测SWAPINFO ATM 的输出,看看交换区是否有实际的使用,注意此处仅仅观测实际的交换区的情况,对于伪交换区则不考虑。第五,通过VMSTAT 可以观测到是否有持续的PO4.3 DISK IO 分析 IO作为系统重要的资源对于减少IO访问提高应用响应速度有着重要的意义。 A监控条件. DISK使用率高DISK QUEUE>3. AVSERV /AVWAIT 明显变长B. 相关命令通过GLANCE (热键d)可以判定系统整体的IO活动,此处不再举例通过GLANCE (热键u)可以找到最忙是哪些硬盘,下图中可以看到100忙的硬盘机器实际流量,等待队列和繁忙度等信息,通过热键(S)可以选择相应的硬盘,可以看到相关硬盘上的VG和LV信息。如果没有GLANCE 我们可以使用sar d/sar u来判断IO 活动。在sar -d 中注意的是AVQUE(IO 等列队列,此值应当小于3);AVSERV(后台IO 响应时间)HP-UX setlserv B.11.11 U 9000/800 05/08/0818:59:32 device %busy avque r+w/s blks/s avwait avserv c22t如果系统sar -u 中WIO 也是我们需要关注的一点,一般来说持续高的WIO (>20%).表明系统IO 性能不足,造成CPU因等待IO完成而出现等待 。但IO 性能不是导致WIO 过高的唯一因素。4.4 CPU 分析系统CPU是整个系统的核心资源,通常也是系统的最繁忙部分,某些用户应用需要进行大量计算,导致CPU保持繁忙状态。同时对于多CPU系统,系统应用应当保持足够的并发毒否则不能充分利用多个CPU的系统资源.A监控标准.CPU 使用率大于90 .CPU QUEUE 大于3B. 相关判定命令在判断CPU压力之前我们首先要明白的是系统到底有多少CPU资源,其次CPU资源具体的使用情况,且如果CPU 压力持续高,那么我们需要搞清楚哪些应用、进程在使用CPU。常用的工具有glance ,sar u ,sar q, vmstat,top等等。首先glance (热键a) ,我们可以看到CPU整体的使用情况和实际压力,特别是LoadAvg的长度,如果该数据持续接近或者大于3,表明系统压力过大,CPU 可能处理不过来,此时如果能够排除是SYSTEM 过多的消耗了CPU 的话,则应当考虑扩容或者优化程序。如果没有GLANCE 我们可以通过sar q来判定。其次通过GLANCE (热键c),我们可以看到CPU的实际消耗情况。对于一个良好的系统我们认为CPU 消耗USER MODE 的比例应当远远超过SYSTEM MODE最好达到4:1的状态(最理想值)。USER MODE =USER+NICEREALTIMENEGATIVE NICE如果没有GLANCE ,我们也可以通过sar -u 来进行分析在下图中sar u 1 10 表示每秒收集一次,一共十次。最后的AVERAGE为这十次的最终平均值。同时通过VMSTAT的输出我们也可以了解到CPU 的SYS/USER 百分比。第三步我们可以通过glance(热键A)来判断每一类应用对CPU的消耗情况,此界面同样适用于分析各类应用对IO、MEM的消耗。下图可见ORACLE 类应用的实际消耗:CPU 76.4%;内存3.07GB,每个时间间隔产生943次逻辑IO,和645次物理IO.是系统资源最大的消耗者。4. 5网络网络监控相对于其他资源的监控而言比较简单。一般来说我们只需要简单的通过netstat ni, netstat p tcp 等即可。也可以通过GLANCE查看网络状态A.监控标准 OERRS 值为0或者保持稳定 COLL 小于5,PING首先可以通过 netstat ni ,如下图红色字体,#/netstat -niName Mtu Network Address Ipkts Ierrs Opkts Oerrs Colllan2* 1500 none none 0 0 0 0 0 lan1:1 1500 135.64.128.0 135.64.128.43 21 0 0 0 0 lan1 1500 135.64.128.0 135.64.128.33 14573359 0 11835179 0 0 lan0 1500 192.1.1.0 192.1.1.1 213172 0 398589 0 0 lo0 4136 127.0.0.0 127.0.0.1 2227435 0 2227435 0 0 在上图中我们可以看到网络的工作情况包括冲突率,错误率,进出包数量等等其次通过GLANCE 我们也可以看到相关情况(热键l) 此处不在列出