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 _x86_64_ (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 输出数据的解释
下面是 mpstat 命令输出数据的解释
参数 | 含义 |
---|---|
时间 | 统计时间点 |
CPU | CPU标识符 |
%usr | 用户空间CPU使用率 |
%nice | 低优先级用户空间CPU使用率 |
%sys | 系统空间CPU使用率 |
%iowait | CPU等待I/O完成的时间所占比例 |
%irq | 硬中断CPU使用率 |
%soft | 软中断CPU使用率 |
%steal | 虚拟化环境中,由于其他虚拟机运行而无法使用的CPU时间所占比例 |
%guest | 虚拟化环境中,虚拟CPU的时间所占比例 |
%gnice | 低优先级的虚拟CPU时间所占比例 |
%idle | CPU空闲时间所占比例 |
监控系统性能 使用 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 _x86_64_ (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 | 显示帮助信息 |
-x | x选项会显示⼀些指标,包括:平均读写请求大小、平均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 _x86_64_ (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 时间所占比例 |
%CPU | CPU 使用率 |
CPU | CPU 编号 |
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) |
io | I/O 操作相关信息 |
bi | 块设备接收的块数量(Blocks In) |
bo | 块设备发送的块数量(Blocks Out) |
system | 系统相关信息 |
in | 每秒的中断次数 |
cs | 每秒的上下文切换次数 |
cpu | CPU 使用情况 |
us | 用户空间 CPU 占用百分比 |
sy | 内核空间 CPU 占用百分比 |
id | 空闲 CPU 占用百分比 |
wa | CPU 等待 I/O 的百分比 |
st | 用于虚拟机的 CPU 百分比 |
本文 了解Linux系统性能监控工具 sysstat https://www.itwk.cc/post/1127.html 所涉及的软件均源自于网络。
不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。
访问和下载本站内容,说明您已同意上述条款。
本站为非盈利性站点,VIP功能仅仅作为用户喜欢本站捐赠打赏功能,本站不贩卖软件,所有内容不作为商业行为。