关于linux运维:Linux系统性能监控命令系列之-sar

大家好,我是Sean

在应用咱们碰到问题堪称是形形色色,零碎卡顿、死机、宕机、I/O呈现瓶颈等等,这时,咱们应该思考应用零碎给咱们提供的sar命令来对系统作一个理解,该命令是系统维护的重要工具,次要帮忙咱们把握系统资源的应用状况,特地是内存和CPU 的应用状况。

sar(零碎运行状态统计工具)

在应用咱们碰到问题堪称是形形色色,零碎卡顿、死机、宕机、I/O呈现瓶颈等等,这时,咱们应该思考应用零碎给咱们提供的sar命令来对系统作一个理解,该命令是系统维护的重要工具,次要帮忙咱们把握系统资源的应用状况,特地是内存和CPU 的应用状况。

sar命令 是Linux下零碎运行状态统计工具,它将指定的操作系统状态计数器显示到规范输出设备。sar工具将对系统以后的状态进行取样,而后通过计算数据和比例来表白零碎的以后运行状态。它的特点是能够间断对系统取样,取得大量的取样数据。取样数据和剖析的后果都能够存入文件,应用它时耗费的系统资源很小。

启动命令参数

-A:显示所有的报告信息;
-b:显示I/O速率;
-B:显示换页状态;
-c:显示过程创建活动;
-d:显示每个块设施的状态;
-e:设置显示报告的完结工夫;
-f:从指定文件提取报告;
-i:设状态信息刷新的间隔时间;
-P:报告每个CPU的状态;
-R:显示内存状态;
-u:显示CPU利用率;
-v:显示索引节点,文件和其余内核表的状态;
-w:显示替换分区状态;
-x:显示给定过程的状态。

常用命令

查看CPU应用状况
sar 1 3  或 sar -u 1 3 
每1秒打印一次cpu情况,打印3次后退出

将cpu统计后果保留到文件
sar -o test 1 3
每1秒打印一次cpu情况,打印3次后退出,并保留到文件test
sar -f test
查看保留到test文件的cpu记录

查看均匀负载
sar -q 1 3

查看零碎swap分区统计状况
sar -W 1 3

查看IO和传递速率
sar -b 1 3

查看磁盘应用状况
sar -d 

统计网络信息     
sar -n DEV
sar -n EDEV
统计socket连贯信息         
sar -n SOCK
TCP连贯的统计          
sar -n TCP

查看内存应用状况
sar -r 1 3

命令详解

查看CPU应用状况

sar 1 3  或 sar -u 1 3 

%user   用户空间的CPU应用
%nice   扭转过优先级的过程的CPU使用率
%system   内核空间的CPU使用率
%iowait   CPU期待IO的百分比 
%steal   虚拟机的虚拟机CPU应用的CPU
%idle   闲暇的CPU

在以上的显示当中,次要看%iowait和%idle,%iowait过高示意存在I/O瓶颈,即磁盘IO无奈满足业务需要,如果%idle过低示意CPU使用率比较严重,须要联合内存应用等状况判断CPU是否瓶颈

sar还能够把CPU应用状况记录成二进制文件,并能够从新读取:

生成文件:sar -o test 1 3
查看文件:sar -f test

查看均匀负载

sar -q 1 3

runq-sz    运行队列的长度(期待运行的过程数,每核的CP不能超过3个)
plist-sz   过程列表中的过程(processes)和线程数(threads)的数量
ldavg-1  最初1分钟的CPU均匀负载,行将多核CPU过来一分钟的负载相加再除以外围数得出的平均值,5分钟和15分钟以此类推
ldavg-5   最初5分钟的CPU均匀负载
ldavg-15  最初15分钟的CPU均匀负载

查看内存应用状况

sar -r 1 3

kbmemfree   闲暇的物理内存大小
kbmemused   应用中的物理内存大小
%memused      物理内存使用率
kbbuffers      内核中作为缓冲区应用的物理内存大小,kbbuffers和kbcached:这两个值就是free命令中的buffer和cache. 
kbcached      缓存的文件大小
kbcommit       保障以后零碎失常运行所须要的最小内存,即为了确保内存不溢出而须要的起码内存(物理内存+Swap分区)
commit       这个值是kbcommit与内存总量(物理内存+swap分区)的一个百分比的值
kbactive  
kbinact 
kbdirty 

查看零碎swap分区统计状况

sar -W 1 3

pswpin/s    每秒从替换分区到零碎的替换页面(swap page)数量
pswpott/s   每秒从零碎替换到swap的替换页面(swap page)的数量

查看IO和传递速率

sar -b 1 3

tps  磁盘每秒钟的IO总数,等于iostat中的tps
rtps  每秒钟从磁盘读取的IO总数
wtps  每秒钟从写入到磁盘的IO总数
bread/s  每秒钟从磁盘读取的块总数
bwrtn/s  每秒钟此写入到磁盘的块总数

查看磁盘应用状况

sar -d

DEV  磁盘设施的名称,如果不加-p,会显示dev253-0相似的设施名称,因而加上-p显示的名称更间接
tps  每秒I/O的传输总数
rd_sec/s  每秒读取的扇区的总数
wr_sec/s  每秒写入的扇区的总数
avgrq-sz  均匀每次次磁盘I/O操作的数据大小(扇区)
avgqu-sz  磁盘申请队列的均匀长度
await  从申请磁盘操作到零碎实现解决,每次申请的均匀耗费工夫,包含申请队列等待时间,单位是毫秒(1秒等于1000毫秒),等于寻道工夫+队列工夫+服务工夫
svctm  I/O的服务解决工夫,即不包含申请队列中的工夫
%util  I/O申请占用的CPU百分比,值越高,阐明I/O越慢

统计网络信息

sar -n 参数
sar -n DEV

sar -n EDEV 1 1 

sar -n SOCK

参数 含意
DEV 网络接口统计信息
EDEV 网络接口谬误
NFS NFS 客户端
NFSD NFS 服务器
SOCK 套接字
IP IP流
EIP IP流谬误
ICMP ICMP流
EICMP ICMP流谬误
TCP TCP流
ETCP TCP流谬误
UDP UDP流
SOCK6 套接字
IP6 IP流
EIP6 IP流谬误
ICMP6 ICMP流
EICMP6 ICMP流谬误
UDP6 UDP流

明天的分享就到这里啦!感激各位的浏览!码字不易,如果本文对你有帮忙的话,帮忙点个赞吧~哈哈。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理