linux下运维必备的性能分析工具总结

性能分析工具总结:

1、  vmstat :对操作系统的内存信息、进程、CPU进行监视分析

#vmstat 2 3 每二秒更新输出一次,统计3次后停止。

[root@MYDB1 ~]# vmstat 2 3
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 170688 171224 464808    0    0     0     1   14    7  0  0 100  0  0
 0  0      0 170680 171224 464828    0    0     0     0   12   36  0  0 100  0  0
 0  0      0 170680 171224 464828    0    0     0     0   13   37  0  0 100  0  0 

Procs: r CPU时间片的进程数;b等待资源的进程数。

Memory:swpd 内存交换区的大小,只要si,so长期为0,就不影响。Free空闲的物理内存;buff 内存缓冲区;cache缓存,只要bi小就正常。

swap: si 磁盘调入内存;so内存调入磁盘,sosi长期多的话,说明需要增加内存了。

IO:磁盘读写状态;bi从设备读入的总量;bo写入设备的总量,bi+bo参考值为1000,超过就是IO有问题了。

System:采集间隔内发生的中断数。In每秒中断数;cs每秒产生的上下文切换次数,这二个值班越大,内核消耗CPU时间越多。

Cpu: us 进程消耗CPU的时间比,值越高,消耗的CPU时间越多,长期大于50%,需要优化程或算法;sy内核消耗CPU的时间比。Us+sy大于80%时,说明CPU资源不足。Id CPU空闲时间比;waIO等待占用CPU时间比,wa越高,说明IO越严重。Wa参考值为20%,长期大于20%说明IO问题严重。

2、  sar 可以获取系统的CPU、运行队列、磁盘IO、分页(交换区)、内存、CPU中断、网络等。

#sar –u 3 2  每三秒统计一次,统计2

[root@MYDB1 ~]# sar -n DEV 3 2
Linux 2.6.32-279.19.1.el6.x86_64 (MYDB1)        03/09/13        _x86_64_        (1 CPU)

18:00:50        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
18:00:53           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
18:00:53         eth0      4.00      0.00      0.29      0.00      0.00      0.00      0.00
18:00:53         eth1      0.33      0.00      0.02      0.00      0.00      0.00      0.00

18:00:53        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
18:00:56           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
18:00:56         eth0      2.66      0.33      0.21      0.15      0.00      0.00      0.00
18:00:56         eth1      0.66      0.00      0.04      0.00      0.00      0.00      0.00

Average:        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      3.33      0.17      0.25      0.08      0.00      0.00      0.00
Average:         eth1      0.50      0.00      0.03      0.00      0.00      0.00      0.00

参数:-A 所有设备;-u所有CPU-P指定的CPU-d硬盘;-r内存采样;-b内存缓冲区采样;-v进程、文件、节点和锁表状态;-n网络;-q队列;-R进程;-y终端设备;-W系统交换 –o filename 将命令结果以二进制格式放在文件中;

3、  iostat(需要安装Sysstat),主要针对磁盘IO磁盘监视。

#Iostat –d 2 3

[root@MYDB1 ~]# iostat -d 2 3
Linux 2.6.32-279.19.1.el6.x86_64 (MYDB1)        03/09/13        _x86_64_        (1 CPU)

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               0.16         0.19         2.28     531210    6494604
dm-0              0.29         0.18         2.28     522090    6494552
dm-1              0.00         0.00         0.00       2376          0

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

Blk_read/s:每秒读取的数据块数

Blk_wrtn/s每秒写入的数据块数

Blk_read 读取的所有块数

Blk_wrtn 写入的所有块数

参数:-c 显示CPU的使用情况;-d磁盘;-kKB这单位;-t打印开始执行时间;-x device 按磁盘名称统计。

4、  free  内存监控

#free –m (M为单位)

[root@MYDB1 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           995        829        166          0        167        453
-/+ buffers/cache:        208        787
Swap:         2015          0       2015

经验值:应用可用的内存/系统物理内存>70%,说明性能优良,<20%是,资源紧缺,需要增加内存。在这二个数之间,算正常。

5、  uptime

#uptime

[root@MYDB1 ~]# uptime
 18:17:59 up 33 days,  3:30,  3 users,  load average: 0.00, 0.00, 0.00

系统时间、开机运行时间、登录用户数、1分钟内、5分钟内、15分钟内平均负载。

Load average一般不能大于CPU的个数,长期大于的话,说明CPU很忙,需要优化程序或者增加CPU

6、  netstat:网络连接、运行端口、路由表等

#netstat –i

[root@MYDB1 ~]# netstat -i
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0  5295771      0      0      0   114725      0      0      0 BMRU

参数:-a 所有的连接与端口;-n有效的连接与端口;-r 路由表;-s按协议的统计;-vn类似;-t TCP协议;-u UDP协议;- I 自动配置的接口状态;-l LISTEN状态;-p对应的PID进程,-c按秒。

Iface:接口名称

MTU:最大传输单元,单位字节

RX-OK/TX-OK:正确无误的数据包

RX-ERR/TX-ERR:产生的错误

RX-DRP/TX-DRP:丢弃的包

RX-OVR/TX-OVR:误差遗失的包

错误、丢弃、遗失的包越大,网络问题越大。

7、  top

#top

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                        
    1 root      20   0 19228 1520 1232 S  0.0  0.1   0:07.49 init                                           
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.02 kthreadd                                       
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0 

参数:-d 时间间隔;-I不显示死的或闲的进程;-c 整个命令路径;-s安全模式运行;-b分屏输出,可与-n结合输出到文档;-n输出的次数,完成后退出。

PR:优先级

NInice值,负值班优先级高,正的相反

VIRT:使用的虚拟内存总量,单位KB

RES:占用的内存,单位KB

SHR:共享内存大小,单位KB

TIME+:使用的CPU时间总计,单位1/100

COMMAND:命令名或者路径

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值