乐趣区

关于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 流

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

退出移动版