Linux使用率过高,原因不明

Linux使用率过高,原因不明,第1张

概述在寻找这个并且只找到那些没有正确解释“缓存”数字的人的帖子后,我决定问这个问题. 我手头有一些服务器,这很奇怪.也就是说,他们的RAM使用率非常高,没有明显的原因.好像一个看不见的进程有很多“使用过的”RAM(我的意思是“使用”). 这是一些信息: >所有服务器都运行SLES 11 >内核是3.0.76 >所有服务器在VMWare ESX基础架构下作为guest虚拟机运行 >我没有设置服务器,在 *** 在寻找这个并且只找到那些没有正确解释“缓存”数字的人的帖子后,我决定问这个问题.

我手头有一些服务器,这很奇怪.也就是说,他们的RAM使用率非常高,没有明显的原因.好像一个看不见的进程有很多“使用过的”RAM(我的意思是“使用”).

这是一些信息:

>所有服务器都运行SLES 11
>内核是3.0.76
>所有服务器在VMWare ESX基础架构下作为guest虚拟机运行
>我没有设置服务器,在 *** 作系统选择方面没有发言权,也没有访问虚拟化基础架构
>所有服务器都设置相似,它们运行相同的软件集(它是一个集群,是的,我知道,虚拟集群,yada yada,如上所述:我曾经并且没有发言权)

还有一些shell输出:

root@good-server:# free -m             total       used       free     shared    buffers     cachedMem:         15953      14780       1173          0        737       8982-/+ buffers/cache:       5059      10894Swap:        31731          0      31731root@good-server:# python ps_mem.py[... all processes neatly Listed ...]---------------------------------                          4.7 GiB=================================root@bad-server:# free -m             total       used       free     shared    buffers     cachedMem:         15953      15830        123          0        124       1335-/+ buffers/cache:      14370       1583Swap:        31731         15      31716root@bad-server:# python ps_mem.py[... all processes neatly Listed ...]---------------------------------                          4.0 GiB=================================

好服务器的/ proc / meminfo的内容

MemTotal:       16336860 kBMemFree:          112356 kBBuffers:          138384 kBCached:          1145208 kBSwapCached:         1244 kBActive:          4344336 kBInactive:        1028744 kBActive(anon):    3706796 kBInactive(anon):   382724 kBActive(file):     637540 kBInactive(file):   646020 kBUnevictable:           0 kBmlocked:               0 kBSwapTotal:      32493560 kBSwapFree:       32477728 kBDirty:              1248 kBWriteback:             0 kBAnonPages:       4087776 kBMapped:            60132 kBShmem:               156 kBSlab:             274968 kBSReclaimable:     225864 kBSUnreclaim:        49104 kBKernelStack:        4352 kBPagetables:        16400 kBNFS_Unstable:          0 kBBounce:                0 kBWritebackTmp:          0 kBCommitlimit:    40661988 kBCommitted_AS:    6576912 kBVmallocTotal:   34359738367 kBVmallocUsed:      311400 kBVmallocChunk:   34359418748 kBHarDWareCorrupted:     0 kBAnonHugePages:         0 kBHugePages_Total:       0HugePages_Free:        0HugePages_Rsvd:        0HugePages_Surp:        0Hugepagesize:       2048 kBDirectMap4k:       73728 kBDirectMap2M:    16703488 kB

坏服务器的/ proc / meminfo的内容

MemTotal:       16336860 kBMemFree:         1182320 kBBuffers:          756244 kBCached:          8695688 kBSwapCached:            0 kBActive:         13499680 kBInactive:         843208 kBActive(anon):    4853460 kBInactive(anon):    37372 kBActive(file):    8646220 kBInactive(file):   805836 kBUnevictable:           0 kBmlocked:               0 kBSwapTotal:      32493560 kBSwapFree:       32493560 kBDirty:              1268 kBWriteback:             0 kBAnonPages:       4890180 kBMapped:            84672 kBShmem:               252 kBSlab:             586084 kBSReclaimable:     503716 kBSUnreclaim:        82368 kBKernelStack:        5176 kBPagetables:        19684 kBNFS_Unstable:          0 kBBounce:                0 kBWritebackTmp:          0 kBCommitlimit:    40661988 kBCommitted_AS:    6794180 kBVmallocTotal:   34359738367 kBVmallocUsed:      311400 kBVmallocChunk:   34359419468 kBHarDWareCorrupted:     0 kBAnonHugePages:         0 kBHugePages_Total:       0HugePages_Free:        0HugePages_Rsvd:        0HugePages_Surp:        0Hugepagesize:       2048 kBDirectMap4k:      112640 kBDirectMap2M:    16664576 kB

TL; DR – 如果你将它们并排比较,这里是主要区别(BADserver – GOODserver):

MemFree       -1070 MBCached        -7550 MBActive        -9155 MBActive(anon)  -1147 MBActive(file)  -8009 MBAnonPages     - 802 MB

其他差异相当小,并且在人们可能期望的范围内(但你可以亲眼看到)

正如您所看到的,在良好的服务器上,所有进程的所有RES和SHR内存的总和几乎与free -m的“used – / buffers / cache”值的输出一致 – 这正是您所期望的,对吧?

现在看一下坏的服务器:free -m的“used – / buffers / cache”值的输出大约是你预期的3倍,总结ps可以告诉你的一切.

这也符合/ proc / meminfo告诉我的内容.

到目前为止,我不知道这是怎么回事.这可能会发生什么?

解决方法 我认为你可能有一个 VMware memory ballooning issue. vSphere基础设施中的内存过量使用可能性太高.如果不访问vSphere vCenter,您将无法修复此问题,但您应该能够在虚拟机中检测到此情况,假设已安装vmtools:

你能否发布vmware-toolBox-cmd统计气球的输出?

此外,您已经分配了16GB的RAM.如果对相关VM有任何手动RAM限制,请询问谁控制基础设施.

总结

以上是内存溢出为你收集整理的Linux使用率过高,原因不明全部内容,希望文章能够帮你解决Linux使用率过高,原因不明所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1044383.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存