AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[vmstat](server)

Martin Hope
Emerson Prado
Asked: 2020-07-26 08:57:22 +0800 CST

sar 和 top 显示高 cpu 使用率,但 vmstat 和 ps 显示低 cpu 使用率。为什么?

  • 0

我正在诊断一个高 CPU 使用率事件,我发现来自 的数字之间存在一个奇怪的差异ps/vmstat,显示几乎为 0%,sar/top而 显示几乎为 100%(用户 + 系统):

sar 1 5
Linux 2.6.9-67.ELsmp (uxdfl712)         07/25/2020

01:48:31 PM       CPU     %user     %nice   %system   %iowait     %idle
01:48:32 PM       all     43.83      0.00     56.17      0.00      0.00
01:48:33 PM       all     42.68      0.00     57.32      0.00      0.00
01:48:34 PM       all     42.57      0.00     57.43      0.00      0.00
01:48:35 PM       all     43.18      0.00     56.82      0.00      0.00
Average:          all     43.14      0.00     56.86      0.00      0.00

vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
32  0      0 10493612 233320 4485160    0    0     0    14    0     1  0  0 100  0

ps -e hao %cpu | awk '{ sum += $1 } END { print sum }'
0.2

top -bn 1 |
sed '1,/PID USER      PR  NI %CPU/d' |
awk '{ sum += $5 } END { print sum }'
398

我在 StackExchange 和其他地方进行了很多搜索,但我只能找到有关虚拟化内容(这是一台物理机器)和 CPU 负载的参考资料,这不是我的问题。我也检查了/proc/<PID>/stat,但没有发现任何提示。

为什么这些命令显示不同的数字?他们实际上是在查询不同的东西吗?或者可执行文件可能太旧和错误(请参阅下面的服务器数据 - 我确实对它的过时程度感到恐惧)。

谢谢!

uname -r
2.6.9-67.ELsmp

cat /etc/redhat-release
Red Hat Enterprise Linux ES release 4 (Nahant Update 6)

yum provides `which sar` | grep installed
sysstat.i386                             5.0.5-16.rhel4         installed       

yum provides `which vmstat` | grep installed
procps.i386                              3.2.3-8.9              installed       

yum provides `which ps`
<Too many providers>
ps -V
procps version 3.2.3

yum provides `which top` | grep installed
procps.i386                              3.2.3-8.9              installed       

grep -c processor /proc/cpuinfo 
4
linux vmstat sar cpu-usage ps
  • 1 个回答
  • 934 Views
Martin Hope
Ola Mattsson
Asked: 2015-06-05 05:59:54 +0800 CST

vmstat 中的运行队列列是值的总和还是一个测量值?

  • 0

当我以时间间隔在 RHEL 6.6 机器上运行 vmstat 时,有时我会看到运行队列列跳转到“高”值。
我知道 vmstat 报告的第一行是自机器启动以来的平均值,但是以下几行呢?
run-queue 列是生成输出行时的当前值还是生成前一个输出后运行队列上的进程总和?

vmstat
  • 1 个回答
  • 202 Views
Martin Hope
ramazan polat
Asked: 2012-08-18 04:14:51 +0800 CST

vmstat中bo值过高怎么办?

  • 0

我不知道如何处理高 bo 值是 vmtstat。bi 是 0,但 bo 大约是 6000。所以我不知道那是什么意思,也不知道该怎么做。服务器上运行的应用程序挂起。不知道是不是因为那个bo值。但如果是,我该怎么办?

服务器是 32 核 AMD Opteron 2.4 GHz 和 256 GB RAM。

top 命令的输出是这样的:

Cpu(s):  0.5%us,  0.1%sy,  0.0%ni, 96.5%id,  2.9%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  264284404k total, 261750208k used,  2534196k free,  2923280k buffers
Swap: 266338296k total,    11624k used, 266326672k free, 247120176k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
30009 db2inst1  25   0 6636m 754m 638m S 16.1  0.3   7938:49 db2sysc
11217 root      18   0 1324m 1.1g  49m S  1.0  0.4   5441:39 java
22270 db2fenc1  15   0 93976  14m 6828 S  1.0  0.0   5:29.50 db2fmp32
24419 root      15   0 13004 1376  820 R  1.0  0.0   0:00.49 top
22269 db2fenc1  15   0 93976  14m 6832 S  0.3  0.0   5:09.12 db2fmp32
    1 root      15   0 10348  700  584 S  0.0  0.0   0:12.16 init
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:12.48 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.93 ksoftirqd/0
vmstat
  • 1 个回答
  • 5406 Views
Martin Hope
Mingfei.hua
Asked: 2012-06-20 21:43:49 +0800 CST

top 的平均负载和 vmstat 的 procs

  • 0

据我所知,top中的平均负载是运行或不间断睡眠状态下的进程(线程)数,因此它应该等于vmstat中的(procs-r +1)+ procs-b,但实际上,这两个数字总是有很大的差距。我的理解有任何错误,如果有人能给我一些指导,我将不胜感激。

top - 05:34:50 up 1 day, 20:56,  5 users,  load average: 2.83, 2.67, 1.62
Tasks:  79 total,   1 running,  78 sleeping,   0 stopped,   0 zombie
Cpu(s):  6.8%us,  1.8%sy,  0.0%ni, 91.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.4%st
Mem:   1758000k total,   582636k used,  1175364k free,   103932k buffers
Swap:   917500k total,        0k used,   917500k free,   180868k cached

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 1182524 103784 180860    0    0     1     9    6   53  7  2 91  0  0
 0  0      0 1182524 103784 180860    0    0     0    36   70  117  0  0 100  0  0
 0  0      0 1182516 103784 180860    0    0     0     0   73  132  0  1 100  0  0
 0  0      0 1182516 103784 180860    0    0     0     0   60  127  0  0 100  0  0
 1  0      0 1182516 103784 180860    0    0     0     0   62  102  0  0 100  0  0
 0  0      0 1182628 103784 180860    0    0     0     0  289  238  1  2 97  0  0
 2  0      0 1152160 103784 180892    0    0     0     8 1481 2371 54 12 34  0  0
 1  0      0 1182192 103784 180860    0    0     0     0  681  834 19  4 78  0  0
 0  0      0 1182200 103784 180860    0    0     0     0   80  147  0  1 100  0  0
 0  0      0 1182200 103784 180860    0    0     0     0   53  107  0  0 100  0  0
 0  0      0 1182208 103788 180856    0    0     0    72   64  123  0  0 100  1  0
vmstat top
  • 2 个回答
  • 2571 Views
Martin Hope
Olgun Kaya
Asked: 2012-05-21 22:18:49 +0800 CST

vmstat 输出不兼容

  • -1

正如您在运行如下所示的 vmstat 时所看到的。

bash-3.00# vmstat 1 5
kthr      memory            page                     disk              faults        cpu
r  b  w   swap   free    re   mf   pi   po   fr   de sr m1 m1 m1 m2   in   sy   cs    us sy id
2  0  0 12812792 7094520 668  1023 213  939  939  0  0  1  1  1  0  30519 66084 35693 12 7  81
10 19 0 5469784  797392  265  325  583  1119 1119 0  0  1  1  0  0  35404 75227 44916 14 8  78
34 10 0 5577672  846056  570  554  3802 1233 1233 0  0  1  0  0  0  35013 72253 46505 10 10 79
19 0  0 5576352  843112  462  2825 1200 963  963  0  0  0  0  0  0  35070 73182 44379 13 8  78
2  0  0 5582624  854664  1698 1885 134  1198 1198 0  0  2  1  1  0  35688 71013 43705 11 7  82

这有什么问题?因为内存使用率约为 %95。

***---****---****----*****

由于系统是 HA 系统,这里是备用机器的输出。

bash-3.00# vmstat 1 5
kthr      memory            page          disk                faults            cpu
r b w   swap   free    re   mf   pi   po fr de sr m1 m1 m1 m2 in    sy    cs    us sy id
1 0 0 13949104 8516736 553  1047 121  21 20 0  0  1  1  1  9  30691 69172 34352 12 7  81
0 0 0 12456136 7171232 1122 2554 4117 0  0  0  0  3  1  2  0  31505 85240 35958 11 8  81
0 0 0 12353888 7147488 1401 664  0    0  0  0  0  0  0  0  0  31647 73507 35881 13 6  81
0 0 0 12345536 7129280 13   40   0    0  0  0  0  0  0  0  0  30787 69357 34695 14 6  80
0 0 0 12345440 7125040 217  1646 0    24 24 0  0  0  0  0  0  31390 73710 38393 12 10 78
vmstat
  • 2 个回答
  • 191 Views
Martin Hope
svrist
Asked: 2010-04-07 00:40:59 +0800 CST

围绕命令运行 vmstat

  • 0

我试图自动化一长串数据库实验。我想在实验的特定部分运行时保存 vmstat 输出。

是否存在一些与时间(1)或脚本(1)相关的东西,我可以vmstat 2在我的 bash 脚本中说:“当这个命令正在运行时,将(或类似的)输出保存到文件中”

我知道 vmstat 为包括其他进程在内的整个系统提供了我的 vmstat,但这对我的使用来说是可以的。

(运行 Ubuntu 9.10,如果有影响的话)

linux monitoring vmstat
  • 1 个回答
  • 328 Views
Martin Hope
Mech
Asked: 2010-03-09 17:35:04 +0800 CST

服务器负载高,CPU 空闲。NFS 的原因?

  • 8

我遇到了一个场景,我看到服务器负载很高(有时超过 20 或 30)和 CPU 使用率非常低(98% 空闲)。我想知道这些等待状态是否作为 NFS 文件系统连接的一部分出现。这是我在 VMStat 中看到的

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  1      0 1298784      0      0    0    0    16     5    0    9  1  1 97  2  0
 0  1      0 1308016      0      0    0    0     0     0    0 3882  4  3 80 13  0
 0  1      0 1307960      0      0    0    0   120     0    0 2960  0  0 88 12  0
 0  1      0 1295868      0      0    0    0     4     0    0 4235  1  2 84 13  0
 6  0      0 1292740      0      0    0    0     0     0    0 5003  1  1 98  0  0
 4  0      0 1300860      0      0    0    0     0   120    0 11194  4  3 93  0  0
 4  1      0 1304576      0      0    0    0   240     0    0 11259  4  3 88  6  0
 3  1      0 1298952      0      0    0    0     0     0    0 9268  7  5 70 19  0
 3  1      0 1303740      0      0    0    0    88     8    0 8088  4  3 81 13  0
 5  0      0 1304052      0      0    0    0     0     0    0 6348  4  4 93  0  0
 0  0      0 1307952      0      0    0    0     0     0    0 7366  5  4 91  0  0
 0  0      0 1307744      0      0    0    0     0     0    0 3201  0  0 100  0  0
 4  0      0 1294644      0      0    0    0     0     0    0 5514  1  2 97  0  0
 3  0      0 1301272      0      0    0    0     0     0    0 11508  4  3 93  0  0
 3  0      0 1307788      0      0    0    0     0     0    0 11822  5  3 92  0  0

据我所知,当 IO 上升时,等待上升。NFS 可能是这里的原因还是我应该担心其他事情?这是光纤通道 SAN 上的 VPS 盒。我认为瓶颈不会是 SAN。注释?

linux centos nfs vmstat vps
  • 2 个回答
  • 23801 Views
Martin Hope
Michael Galos
Asked: 2010-01-08 21:00:48 +0800 CST

vmstat 真正使用了多少资源?

  • 1

我们有一台运行 Tru64 Unix 的服务器,这是我们组织使用的单个应用程序的主要生产服务器。软件供应商完全控制硬件和软件(我们仍然管理软件,但没有 root 访问权限)。

但是供应商允许我们运行 vmstat,它会在 10 个间隔内每 15 秒产生一次输出,然后退出。

我打算设置一个运行 vmstat 的自动化进程,记录输出。我认为这将是非常有用的信息,尤其是考虑到我们最近遇到了性能问题。

Mangement 告诉我,我不能这样做,因为 vmstat 会占用大量资源,并且如果系统不断运行,它会减慢系统速度。

谁能告诉我这是否真的是真的?

performance vmstat performance-monitoring
  • 3 个回答
  • 580 Views
Martin Hope
IVR Avenger
Asked: 2009-08-28 08:43:45 +0800 CST

从 vmstat 命令中删除标头?

  • 2

有没有办法运行 VMSTAT 命令(或类似命令)并在行中包含时间戳?我知道我可以通过管道输出命令并操纵结果,但如果我这样做,我会得到垃圾信息;我被告知 VMSTAT 的第一行包含虚假数据,我基本上会得到第一行的重复列表。

有没有办法获得这种数据,无论是使用 VMSTAT 还是类似的东西:

20090826.134908 0  0      0 241832 120064 3023856    0    0     0     1    0     0  0  0 100  0

谢谢!
IVR 复仇者

linux bash vmstat
  • 6 个回答
  • 4548 Views
Martin Hope
Michael Galos
Asked: 2009-07-14 17:35:34 +0800 CST

vmstat 似乎给出了非标准值?

  • 0

我们有一个专有系统,在 Tru64 Unix 上运行。它是一个基于终端的系统。我们可以使用登录 'vmstat' 进入系统,这会带来类似 vmstat 的视图。但是,显示的信息与标准 vmstat 略有不同。

10:27  up 36 days, 20:18,  797 users,  load average: 15.75, 15.52, 14.94
Virtual Memory Statistics: (pagesize = 8192)
  procs      memory        pages                            intr        cpu
  r   w   u  act free wire fault  cow zero react  pin pout  in   sy  cs us sy id
 27  2K 335   9M 129K 874K  105G 581M   9G  135M   1G  13M  2K 125K 13K 23 11 66
 33  2K 336   9M 131K 874K  114K 4331  59K  3362 9729  334  2K 156K 15K 33 11 56
 26  2K 333   9M 130K 873K 89798 2147  50K   157 5481   60  2K 128K 14K 30  8 62
 34  2K 332   9M 121K 873K 86165 2474  40K  4107 5709   71  2K 220K 14K 35 12 53
 28  2K 328   9M 139K 873K 99686 3071  43K  7362 7029  140  2K 177K 14K 38 11 51

进程的“r”是标准 vmstat 布局的一部分,但不是“w”或“u”。我在谷歌上找不到任何对这种 vmstat 布局的引用。根据linuxcommand.org我应该得到布局:

r  b   swpd   free   buff  cache   si  so    bi    bo   in    cs us sy id wa

代替:

r   w   u  act free wire fault  cow zero react  pin pout  in   sy  cs us sy id

有没有人能够阐明为什么我的与众不同?或者至少每个字段的含义是什么?

unix vmstat performance-monitoring diagnostic tru64
  • 2 个回答
  • 206 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve