Linux系统性能指标监控
实时监控-网络监控: netstat -> netstat 命令用于显示本机网络链接,运行端口、路由表等信息
netstat 参数说明:
-n: 拒绝显示别名,能显示数字的全部转化成数字
-l: 仅列出有在Listen(监听)的服务状态
-p:显示建立相关链接的程序名
-t:显示tcp相关的选项
-u :仅显示udp相关的选项
-i:显示自动匹配接口的信息
-c:每隔一个固定时间,执行该netstat命令
常用:
root@agu:~# netstat -ntlp (一般用来查看运行的端口是否在监听状态)
root@agu:~# netstat -i (一般用来查看网络传输的大小以及有没有发生错误)
root@agu:~# netstat -i -c 1 (每隔一秒打印一次)
实时监控-磁盘监控: iostat 是对系统磁盘IO操作进行监控,它的输出主要显示磁盘的读写操作的统计信息。同时给出cpu的使用情况
netstat 参数说明:
-x: 输出指定要统计的磁盘设备名称,默认为所有磁盘设备,默认为所有磁盘设备
例子:
root@agu:~# iostat
Linux 4.4.0-105-generic (agu) 06/25/2018 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.14 0.00 0.16 0.01 0.00 99.69
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
vda 0.18 0.63 0.95 334213 502920
root@agu:~# iostat -x
Linux 4.4.0-105-generic (agu) 06/25/2018 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.14 0.00 0.16 0.01 0.00 99.69
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.06 0.04 0.14 0.63 0.95 17.43 0.00 2.85 1.46 3.24 0.39 0.01
root@agu:~# iostat -x vda 1 2
Linux 4.4.0-105-generic (agu) 06/25/2018 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.14 0.00 0.16 0.01 0.00 99.69
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.06 0.04 0.14 0.63 0.95 17.42 0.00 2.85 1.46 3.24 0.39 0.01
avg-cpu: %user %nice %system %iowait %steal %idle
0.00 0.00 0.99 0.00 0.00 99.01
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
iostat -x vda 1 2 命令意思: 每个1秒钟打印一次vda这个磁盘使用信息,一共打印两次。
%util 表示cpu繁忙程度,越高越繁忙
万能命令 - sar
(System Activity Report 系统活动情况报告) 是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统活动进行报告。
sar的性能监控范围
1)文件的读写情况,系统调用的使用情况、磁盘I/O、cpu效率、内存使用状况、进程活动及IPC有关的活动等。
sar语法:
sar [options] [-A] [-o file] t [n]
在命令行中,n和t两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的。默认值是1, -o file表示将命令结果以二进制格式存放在文件中,file在此处不是关键字,是文件名。 Options为命令行选项。
sar选项:
-A:所有报告的总和。
-u:CPU利用率
-v:进程、节点、文件和锁表状态。
-r:显示系统内存的使用情况
-B: 内存分页情况
-b:缓冲区使用情况
strace
Linux监控工具:nmon
1. 下载: root@agu:~# wget http://sourceforge.net/projects/nmon/files/nmon_linux_14i.tar.gz
此时文件默认下载到了当前工作目录下
2. root@agu:~# tar -xzvf nmon_linux_14i.tar.gz
此时解压文件夹中有很多文件,根据自身操作系统的版本选择相应的版本(查看64位还是32位命令:getconf LONG_BIT, ubutu查看操作系统信息:lsb_release -a)
解压一个文件一般用tar -czvf *.tar.gz shell
3. root@agu:~# mv nmon_x86_64_centos6 nmon
修改文件名后,方便后面使用
4. root@agu:~# cp nmon /usr/bin/
copy到/usr/bin/目录下后,这样就可以在任何一个文件夹下直接使用nmon命令了
5. root@agu:~# mkdir ~/nmonData、
建立这个文件夹的目的是后面把所有nmon的数据都放在这个文件夹里面
6. root@agu:~# cd ~/nmonData
7. root@agu:~/nmonData# nmon -f -F demo.nmon -s 1 -c 10 -t
nmon用法:
-f:这是nmon必选参数,并且必须放在第一个,就是输出文件的意思,用该参数的话,nmon输出的文件名就是默认名称:hostname_date_time_nmon
-F <filename> 这个参数和-f相同,只不过用户可以自己定义文件名称。
-s 采集数据频率,也就是保存数据的频率。
-c 采集数据次数
-t 输出最消耗资源的进程数据
-h 查看帮助
Linux监控工具:nmon_analyzer
nmon_analyzer 的作用就是分析nmon数据采集后的结果,nmon_analyzer 需要借助Excel宏,WPS默认没有安装宏,需要下载插件
nmon_analyzer 下载地址: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power+Systems/page/nmon_analyser