Linux mpstat 命令实用示例

LinuxBeginner
立即练习

介绍

在本实验中,你将学习如何使用 Linux 的 mpstat 命令来监控和分析多个 CPU 的利用率指标。mpstat 命令是一个强大的工具,用于识别性能瓶颈、优化资源分配以及排查系统问题。你将首先了解 mpstat 命令的用途和用法,然后更详细地探索 CPU 利用率指标,包括在用户模式、内核模式和空闲状态下花费的 CPU 时间。最后,你将分析多个 CPU 的性能,以更深入地了解系统的资源利用情况。

Linux 命令速查表

了解 mpstat 命令的用途和用法

在这一步中,你将学习 Linux 中 mpstat 命令的用途和用法。mpstat 命令是一个强大的工具,用于监控和分析多个 CPU 的利用率指标。

mpstat 命令提供了关于 CPU 活动的详细信息,包括 CPU 利用率、中断、上下文切换等。它可以用于识别性能瓶颈、优化资源分配以及排查系统问题。

让我们从运行 mpstat 命令开始,查看其基本输出:

sudo mpstat

示例输出:

Linux 5.15.0-58-generic (labex-ubuntu)   05/11/2023      _x86_64_        (4 CPU)

07:00:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
07:00:01 PM  all    0.25    0.00    0.19    0.00    0.00    0.00    0.00    0.00    0.00   99.76

输出显示了系统中所有 CPU 的各种利用率指标。%usr 列表示在用户模式下花费的 CPU 时间百分比,%sys 表示在内核模式下花费的 CPU 时间百分比,而 %idle 表示 CPU 空闲时间的百分比。

你还可以使用 mpstat 命令监控特定 CPU 的利用率。为此,你可以将 CPU 编号作为参数传递:

sudo mpstat -P 0

这将显示第一个 CPU(CPU 0)的利用率指标。

在下一步中,你将学习如何使用 mpstat 命令更详细地探索 CPU 利用率指标。

使用 mpstat 探索 CPU 利用率指标

在这一步中,你将学习如何使用 mpstat 命令更详细地探索 CPU 利用率指标。

首先,让我们仔细查看 mpstat 命令的输出:

sudo mpstat -P ALL

示例输出:

Linux 5.15.0-58-generic (labex-ubuntu)   05/11/2023      _x86_64_        (4 CPU)

07:05:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
07:05:01 PM  all    0.25    0.00    0.19    0.00    0.00    0.00    0.00    0.00    0.00   99.76
07:05:01 PM    0    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50
07:05:01 PM    1    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50
07:05:01 PM    2    0.25    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.75
07:05:01 PM    3    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50

-P ALL 选项显示了每个单独 CPU 的利用率指标,以及整个系统的平均值。

你还可以使用 mpstat 命令监控一段时间内的 CPU 利用率。例如,每 2 秒监控一次 CPU 利用率,持续 10 秒:

sudo mpstat 2 5

这将每 2 秒输出一次 CPU 利用率指标,总共 5 次迭代(10 秒)。

此外,你可以使用 mpstat 命令根据特定条件过滤输出。例如,仅显示用户模式的 CPU 利用率:

sudo mpstat -u

这将输出 %usr 列,表示在用户模式下花费的 CPU 时间百分比。

在下一步中,你将学习如何使用 mpstat 命令分析多个 CPU 的性能。

分析多个 CPU 的性能

在这最后一步中,你将学习如何使用 mpstat 命令分析系统中多个 CPU 的性能。

mpstat 命令的一个关键优势是它能够提供关于单个 CPU 性能的详细信息。这在排查性能问题或优化资源分配时特别有用。

让我们从运行带有 -P ALL 选项的 mpstat 命令开始,查看每个单独 CPU 的利用率指标:

sudo mpstat -P ALL

示例输出:

Linux 5.15.0-58-generic (labex-ubuntu)   05/11/2023      _x86_64_        (4 CPU)

07:10:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
07:10:01 PM  all    0.25    0.00    0.19    0.00    0.00    0.00    0.00    0.00    0.00   99.76
07:10:01 PM    0    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50
07:10:01 PM    1    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50
07:10:01 PM    2    0.25    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.75
07:10:01 PM    3    0.25    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.50

此输出显示了每个单独 CPU 的利用率指标,以及整个系统的平均值。你可以利用这些信息识别 CPU 使用中的不平衡或热点。

你还可以使用 mpstat 命令监控一段时间内的 CPU 性能。例如,每 2 秒监控一次 CPU 利用率,持续 10 秒:

sudo mpstat -P ALL 2 5

这将每 2 秒输出一次每个 CPU 的利用率指标,总共 5 次迭代(10 秒)。

通过分析多个 CPU 的利用率指标,你可以识别性能瓶颈、优化资源分配,并确保系统高效运行。

总结

在本实验中,你学习了 Linux 中 mpstat 命令的用途和用法。mpstat 命令是一个强大的工具,用于监控和分析多个 CPU 的利用率指标。你探索了如何使用 mpstat 命令获取有关 CPU 活动的详细信息,包括 CPU 利用率、中断、上下文切换等。你还学习了如何监控特定 CPU 的利用率。此外,你探索了 mpstat 命令提供的各种 CPU 利用率指标,例如 %usr%sys%idle,这些指标可用于识别性能瓶颈、优化资源分配以及排查系统问题。

Linux 命令速查表