百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Linux 系统性能监控工具集sysstat之sar(二)

ahcoder 2025-06-12 10:08 6 浏览

上一篇介绍了sysstat的配置,存储以及sar如何观察CPU负载情况,这一篇介绍如何使用sar分析内存使用情况以及监控磁盘I/O活动情况

上一篇:Linux 系统性能监控工具集sysstat之sar(一)

下一篇:Linux 系统性能监控工具集sysstat之sar(三)完结

(2)分析内存使用趋势

sar -r -f /var/log/sysstat/sa24 -s 10:00:00 -e 11:00:00 #查看24 号10点到11点的内存数据

输出字段:

kbmemfree:空闲物理内存(KB)。

kbavail:可用内存(包括缓存和缓冲,KB)。

kbmemused:已用物理内存(KB)。

%memused:内存使用率百分比。

kbbuffers:内核缓冲区占用的内存(KB)。

kbcached:缓存占用的内存(KB)。

kbcommit:系统当前负载所需内存(KB)。

%commit:kbcommit 占总内存的百分比。

kbactive:活跃内存(正在使用的内存,KB)。

kbinact:非活跃内存(可回收的内存,KB)。

kbdirty:等待写回磁盘的脏数据(KB)。

应用场景:

内存泄漏:若 kbmemfree 持续下降且 kbbuffers 未显著增加,可能应用存在内存泄漏。

缓存效率:高 kbbuffers 表示磁盘缓存有效,减少直接磁盘读写。

内存不足:如果 %memused 持续接近 100%,且 kbmemfree 极低,说明物理内存不足,可能导致频繁使用交换空间(kbswpused)。

缓存有效性:高 kbcached 表示系统有效利用缓存加速磁盘访问;若缓存过低(如接近 0),可能需检查应用程序或调整缓存策略。

交换空间使用:若 kbswpused 持续增长,说明物理内存不足,系统开始使用交换空间(磁盘模拟内存),此时性能会显著下降。


(3)监控磁盘 I/O 活动

sar -d -p -f /var/log/sysstat/sa24 -s 10:00:00 -e 11:00:00 #查看24号10点到11点磁盘活动记录

输出字段:

DEV:设备名称(如 sda 表示第一块物理磁盘,dm-0 表示 LVM 逻辑卷)。

tps:每秒传输次数,即设备每秒处理的 I/O 请求数(包括读+写)。

rkB/s:每秒从设备 读取的数据量(单位:KB/s)。

wkB/s:每秒向设备 写入的数据量(单位:KB/s)。

dkB/s:每秒丢弃的数据量(Discard KB/s,通常与 SSD 的 TRIM 操作相关,机械硬盘为 0)。


areq-sz:平均每个 I/O 请求的 数据大小(单位:KB),计算公式:(rkB/s + wkB/s) / tps。

aqu-sz:平均请求队列长度,即当前等待处理的 I/O 请求数量。高值表示设备存在积压。

await:平均 I/O 请求处理时间(单位:毫秒),包括等待时间和实际处理时间。高值(如 >50ms)可能表示设备性能不足或过载。

%util:设备利用率百分比,即设备处理 I/O 的时间占比。接近 100% 表示设备已达到性能极限(瓶颈)。低值(如 <60%)表示设备空闲较多。

应用场景:

磁盘性能瓶颈:

%util > 90%:设备接近满负荷运行,需检查是否因高 tps 或大 areq-sz 导致。

await > 50ms:请求处理延迟高,可能因磁盘速度慢或队列过长(aqu-sz 高)。

读写负载分析:

rkB/s 远高于 wkB/s:应用以读取操作为主(如数据库查询)。

wkB/s 突增:可能触发了大量数据写入(如日志刷盘、备份操作)。

SSD 健康监控:关注 dkB/s和 %util,异常值可能预示 SSD 寿命或性能下降。

负载分布:分析不同磁盘(如 /dev/sda 和 /dev/sdb)的读写压力是否均衡。

注意问题:

为什么 %util 超过 100%?

在多队列磁盘(如 NVMe SSD)中,%util 可能超过 100%,表示设备并行处理多个请求。

aqu-sz 和 await 的关系是什么?

aqu-sz = tps × await,若 aqu-sz 高且 await 长,说明磁盘响应缓慢。

相关推荐

linux服务器--PVE(一)简介及安装(pve安装ifupdown2)

1.PVE(ProxmoxVirtualEnvironment)简介ProxmoxVirtualEnvironment基于debian,是一个完整的、开源的企业虚拟化服务器管理平台。它在一个平...

手把手教你!如何在 Linux 服务器中搭建 Sentinel 环境?

你在Linux服务器上搭建Sentinel环境时,是不是也遇到过各种报错,要么是启动失败,要么是配置后无法正常访问控制台?看着同事顺利搭建好,自己却一头雾水,别提多着急了!其实,很多互联网大厂...

Linux高性能服务器技术总结(linux高性能服务器编程怎么样)

1服务器简介服务器是提供计算服务的设备,由于服务器需要响应用户请求,因此在处理能力、稳定性、安全性、可扩展性、可管理性等方面提出了较高要求。随着虚拟化技术的进步,云服务器(ECS)已经快速的在...

从 0 到 1:使用 Ansible 自动化运维 Linux 服务器全流程

Ansible是一款强大的IT自动化工具,广泛用于服务器配置管理、软件部署和任务自动化。本文将带你从零开始,学习如何使用Ansible对Linux服务器进行自动化运维,涵盖Ansibl...

诡异!Win11 “此电脑” 莫名现 Linux 图标,啥情况?

我这电脑出了个怪事儿,“此电脑”下面莫名其妙多了个Linux的图标,可我压根儿就没装过Linux系统啊!琢磨了一下,估计是系统可选功能里那个“适用于Linux的Windows子系统”插件搞的鬼。实例系...

Linux基础运维篇:Linux 终端与 Shell 基础(第006课)

一、啥是终端?先搞懂「人和电脑对话的窗口」你可以把终端(Terminal)理解成一个「文字版的电脑操作台」。在Windows里,类似「命令提示符」或PowerShell;在Linux里,...

2025罗技大师系列智「简」大赛-罗技大师系列-MX KEYS S键盘评测

在2025罗技大师系列智「简」大赛中,MXKEYSS键盘凭借其卓越的设计与智能化体验,成为众多创作者的理想之选。本篇文章将深入评测这款键盘的核心功能、使用体验及创新亮点,帮助你了解它如何提升...

Linux编辑命令vim(linux使用vim编辑文件)

1、vi编辑器简介vim是一个全屏幕纯文本编辑器,是vi编辑器的增强版,我们主要讲解的是vim编辑器。可以利用别名让输入vi命令的时候,实际上执行vim编辑器,例如:#定义别名...

全选是ctrl加什么?全选的快捷键是什么介绍

如何高效使用「全选」快捷键(Ctrl+A/A)提升工作效率在日常电脑操作中,"全选"是最基础却至关重要的功能之一。无论您是文字工作者、程序员还是普通用户,掌握全选快捷键都能极大提升操作...

Linux命令大全(linux命令大全书)

个人博客:https://chunyu.work/文章较长,可以收藏备用常用快捷键(1)ctrl+c:停止进程(2)ctrl+l:清屏(3)善于用tab键(4)上下键:查找执行过的命令文件目录类(...

Xshell是做什么用的?Xshell使用教程分享

Xshell是一款功能强大的终端模拟器,支持SSH1,SSH2,SFTP,TELNET,RLOGIN和SERIAL。通过提供业界先进的性能,Xshell包含了其他SSH客户端无法发现的功能和优势,作为...

Java 开发者线上问题排查常用的 15 个 Linux 命令

作为Java开发者,线上环境的问题排查是日常工作的重要组成部分。熟练掌握Linux命令能大幅提升排查效率,快速定位进程异常、日志错误、性能瓶颈等核心问题。本文结合Java应用特点,整理1...

Linux的常用命令就是记不住,怎么办?

1.帮助命令1.1help命令#语法格式:命令--help#作用:查看某个命令的帮助信息#示例:#ls--help查看ls命令的帮助信息#netst...

别再乱学 Linux 了!这 5 个核心技巧,让你效率飙升 10 倍!

在Linux学习的漫漫长路上,不少人犹如在黑暗中摸索的行者,四处碰壁,学习效果却不尽如人意。你是不是也曾在海量的Linux知识面前迷失方向,感觉自己投入了大量时间,却收效甚微?其实,掌握Li...

Linux终端神器Terminator时隔1年回归,2.1.5新版发布

IT之家5月23日消息,科技媒体linuxiac今天(5月23日)发布博文,报道称Terminator在沉寂一年后,最新发布了2.1.5版本,在分割终端窗格时支持克隆SSH...