Linux系统性能监控工具 sysstat

sysstat软件包提供Linux系统性能监控的实用程序。sysstat软件包实用程序从内核计数器中获取原始数据,加以处理以便显示,并将进程执行记录中的数据存储在数据库中。其中⼀些下面是列出了几个常用的系统性能监控工具及其功能。
工具描述
mpstat报告单个或组合的 CPU 相关统计数据。
iostat报告设备、分区和网络文件系统的 CPU 统计数据和 I/O 统计信息。
pidstat报告 Linux 进程的统计信息,包括磁盘 I/O、CPU 和内存使用情况。
tapestat报告连接到系统的磁带驱动器的统计信息。
cifsiostat报告网络上共享文件系统、打印机或串行端口的统计信息。
sar收集、报告和保存系统活动信息,如 CPU、内存、磁盘和网络接口使用情况统计信息。

监控CPU的使用情况 mpstat

mpstat命令提供有关各个处理器活动的统计数据。mpstat命令呈现的所有数据均来自/proc。例如,处理器利用率和中断摘要数据从/proc/stat文件中检索,每秒中断数从/proc/interrupts文件中检索。

默认情况下,mpstat命令仅打印系统整体摘要。以下示例打印各个处理器的报告,报告间隔均为⼀秒钟。

使用 mpstat 查看 CPU 使用率

在终端中输入 mpstat 命令,得到类似以下的输出Linux 4.18.0-80.el8.x86_64 (servera.lab.example.com)   02/29/2024     _x8664       (2 CPU)

09:50:49 PM CPU   %usr   %nice   %sys %iowait   %irq   %soft %steal %guest %gnice   %idle
09:50:49 PM all   1.09   0.31   4.62   4.53   1.29   0.44   6.06   0.00   0.00   81.65

在上面示例中,可以看到针对每个 CPU 核心的不同统计信息,包括用户空间使用率(%usr)、系统空间使用率(%sys)、I/O 等待时间(%iowait)等。

使用 mpstat 收集连续数据

mpstat 还可以在一段时间内连续收集数据。通过在命令中添加间隔时间和收集次数,您可以获取更多的 CPU 使用统计信息。例如mpstat 5 3

这将每隔 5 秒收集一次数据,共收集 3 次。

常用 mpstat 参数

参数含义
-P指定要显示的 CPU 核心,例如 -P 0 表示只显示第一个 CPU 核心的统计信息
-u仅显示 CPU 使用率,忽略其他统计信息
-I指定要显示的中断信息类型,例如 -I SUM 表示显示所有中断的汇总信息
-A显示所有可用的统计信息
-N指定要显示的 NUMA 节点列表
-h显示帮助信息

mpstat 输出数据的解释

image.png

下面是 mpstat 命令输出数据的解释

参数含义
时间统计时间点
CPUCPU标识符
%usr用户空间CPU使用率
%nice低优先级用户空间CPU使用率
%sys系统空间CPU使用率
%iowaitCPU等待I/O完成的时间所占比例
%irq硬中断CPU使用率
%soft软中断CPU使用率
%steal虚拟化环境中,由于其他虚拟机运行而无法使用的CPU时间所占比例
%guest虚拟化环境中,虚拟CPU的时间所占比例
%gnice低优先级的虚拟CPU时间所占比例
%idleCPU空闲时间所占比例

监控系统性能 使用 iostat 命令查看磁盘 I/O 统计信息

在 Linux 系统中,了解磁盘 I/O 情况对于系统管理员和性能优化者来说至关重要。iostat 命令是一个用于监视系统磁盘 I/O 情况的实用工具。

在终端中输入 iostat 命令,将得到类似以下的输出:Linux 4.18.0-80.el8.x86_64 (servera.lab.example.com)   02/29/2024     _x8664       (2 CPU)

avg-cpu: %user   %nice %system %iowait %steal   %idle
          0.26   0.10   1.64   1.06   1.58   95.36

Device             tps   kB_read/s   kB_wrtn/s   kB_read   kB_wrtn
vda             11.64       254.73       52.38     290986     59830
vdb               0.09         1.95         0.00       2224         0
vdc               0.09         1.95         0.00       2224         0
vdd               0.09         1.95         0.00       2224         0

常用 iostat 参数

参数含义
显示默认的 CPU 和设备的统计信息
-c仅显示 CPU 相关的统计信息
-d仅显示设备(磁盘)相关的统计信息
-h显示帮助信息
-xx选项会显示⼀些指标,包括:平均读写请求大小、平均I/O响应时间以及磁盘处理I/O请求的时间占比。

iostat输出数据的解释

参数含义
Device设备名称
tps每秒完成的 I/O 操作次数
kB_read/s每秒从设备读取的数据量(KB)
kB_wrtn/s每秒向设备写入的数据量(KB)
kB_read设备总共读取的数据量(KB)
kB_wrtn设备总共写入的数据量(KB)

使用 pidstat 命令监视进程性能

在 Linux 系统中,pidstat 是一个用于监视进程 CPU 使用情况、磁盘统计信息、页面错误和内存使用情况的实用工具。

在终端中输入 pidstat 命令,您将得到类似以下的输出:Linux 4.18.0-80.el8.x86_64 (servera.lab.example.com)   02/29/2024     _x8664       (2 CPU)

10:18:28 PM   UID       PID   %usr %system %guest   %wait   %CPU   CPU Command

常用 pidstat 参数

-t显示进程的各个线程统计信息。
-d显示进程的磁盘统计信息。只有 root 才能访问由另一个用户拥有的进程的统计信息。
-r显示进程的页面错误和内存使用情况。
-u显示进程的 CPU 使用情况。这是默认选项。

pidstat输出数据的解释

参数含义
UID用户标识符
PID进程标识符
%usr用户空间 CPU 使用率
%system系统空间 CPU 使用率
%guest客座 CPU 使用率(虚拟化环境中的 CPU 使用率)
%wait进程等待 CPU 时间所占比例
%CPUCPU 使用率
CPUCPU 编号
Command进程名称

使用 vmstat 命令监控系统性能

在 Linux 系统中,vmstat 命令是一个用于监控系统性能的实用工具,它可以提供关于内存、交换空间、I/O、系统和 CPU 使用情况的统计信息。

可以在终端中输入以下命令来使用 vmstatvmstat -S m 1 3

这将输出类似以下的结果:procs ———–memory———- —swap– —–io—- -system– ——cpu—–
r b   swpd   free   buff cache   si   so   bi   bo   in   cs us sy id wa st
0 0     0   1353     2   364   0   0   59   12   46   66 0 1 98 0 1
0 0     0   1353     2   364   0   0     0     0   48   66 0 0 100 0 0
0 0     0   1353     2   364   0   0     0     0   41   63 0 1 100 0 0

常用 vmstat 参数

参数含义
-S m设置报告的单位为 MB
1设置报告的间隔为 1 秒
3设置报告的次数为 3 次

vmstat输出数据的解释

参数含义
procs进程相关信息
r运行队列长度(等待运行时间的进程数)
b不可中断的睡眠状态的进程数
memory内存相关信息
swpd已使用的交换空间大小
free空闲内存大小
buff缓冲区大小
cache缓存大小
swap交换空间相关信息
si从磁盘交换到内存的数据量(Swap In)
so从内存交换到磁盘的数据量(Swap Out)
ioI/O 操作相关信息
bi块设备接收的块数量(Blocks In)
bo块设备发送的块数量(Blocks Out)
system系统相关信息
in每秒的中断次数
cs每秒的上下文切换次数
cpuCPU 使用情况
us用户空间 CPU 占用百分比
sy内核空间 CPU 占用百分比
id空闲 CPU 占用百分比
waCPU 等待 I/O 的百分比
st用于虚拟机的 CPU 百分比

原创文章,作者:geeklinux.cn,如若转载,请注明出处:https://www.geeklinux.cn/jsjc/linux/1127.html

(0)
geeklinux.cn的头像geeklinux.cn
上一篇 2024 年 2 月 29 日 下午6:00
下一篇 2024 年 3 月 2 日

相关推荐

发表回复

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