Linux系统资源包括:CPU、IO(磁盘和网络)、内存等
利用率达到三个阶段时:
1)50% 引起注意
2)70% 密切关注
3)90% 严重情况
vmstat、sar、iostat、mpstat、ifconfig、netstat、top、ps命令系统自带
dstat:yum -y install dstat
ifctop: 安装依赖 yum -y install flex byacc ncurses ncurses-devel libpcap-devel
wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz
解压,配置,编译安装
或直接安装
yum -y install iftop
iotop:yum -y install iotop
用法:
1)dstat
dstat -tcdrlmn 查看cpu,磁盘,io,负载,内存,网络情况2)ifctop
界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。
中间的<= =>这两个左右箭头,表示的是流量的方向。
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
参数:-i 设定监测的网卡,如:# iftop -i eth1-B 以bytes为单位显示流量(默认是bits),如:# iftop -B-n 使host信息默认直接都显示IP,如:# iftop -n-N 使端口信息默认直接都显示端口号,如: # iftop -N-F 显示特定网段的进出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-h 帮助,显示参数信息-p 使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的IP信息;-b 使流量图形条默认就显示;-f 过滤计算包用的;-P 使host信息及端口信息默认就都显示;-m 设置界面最上边的刻度的最大值,刻度分五个大段显示,例:# iftop -m 100M
# 进入iftop画面后的一些操作命令(注意大小写)
按h切换是否显示帮助;
按n切换显示本机的IP或主机名;
按s切换是否显示本机的host信息;
按d切换是否显示远端目标主机的host信息;
按t切换显示格式为2行/1行/只显示发送流量/只显示接收流量;
按N切换显示端口号或端口服务名称;
按S切换是否显示本机的端口信息;
按D切换是否显示远端目标主机的端口信息;
按p切换是否显示端口信息;
按P切换暂停/继续显示;
按b切换是否显示平均流量图形条;
按B切换计算2秒或10秒或40秒内的平均流量;
按T切换是否显示每个连接的总流量;
按l打开屏幕过滤功能,输入要过滤的字符,比如ip,按回车后,屏幕就只显示这个IP相关的流量信息;
按L切换显示画面上边的刻度;刻度不同,流量图形条会有变化;
按j或按k可以向上或向下滚动屏幕显示的连接记录;
按1或2或3可以根据右侧显示的三列流量数据进行排序;
按
按>根据远端目标主机的主机名或IP排序;
按o切换是否固定只显示当前的连接;
按f可以编辑过滤代码,这是翻译过来的说法,我还没用过这个!
按!可以使用shell命令,这个没用过!没搞明白啥命令在这好用呢!
按q退出监控。3)sar
sar [options] [-A] [-o file] t [n]
t为采样间隔,n为采样次数,默认值是1;-o file 表示将命令结果以二进制格式存放在文件中,file 是文件名。
参数:-A:所有报告的总和-u:输出CPU使用情况的统计信息-v:输出inode、文件和其他内核表的统计信息-d:输出每一个块设备的活动信息-r:输出内存和交换空间的统计信息-b:显示I/O和传送速率的统计信息-a:文件读写情况-c:输出进程统计信息,每秒创建的进程数-R:输出内存页面的统计信息-y:终端设备活动情况-w:输出系统交换活动信息
怀疑CPU存在瓶颈,可用 sar -u 和 sar -q 等来查看
怀疑内存存在瓶颈,可用 sar -B、sar -r 和 sar -W 等来查看
怀疑I/O存在瓶颈,可用 sar -b、sar -u 和 sar -d 等来查看
一、CPU分析
可以使用vmstst、sar、dstat、mpstat、top、ps等命令来分析
二、内存分析
可以用vmstat、sar、dstat、free、top、ps等命令来进行统计分析。
三、网络分析
衡量系统网络的使用情况,可以使用的命令有sar、ifconfig、netstat以及查看net的dev速率,通过查看收发包的吞吐率达到网卡的最大上限(问题:网络的最大上限怎么看呢?),网络数据报文有因为这类原因而引发的丢包、阻塞等现象都证明当前网络可能存在瓶颈。在进行性能测试时,为了减小网络的影响,一般我们都是在局域网中进行测执行。
四、IO分析
可以使用sar、iostat、iotop等命令进行系统级别的IO监控分析。当发现IO的利用率大于40%时候,就需要注意了;当使用率大于60%则处于告警阶段;大于80%时IO就会出现阻塞了。