Linux使用率过高,原因不明

前端之家收集整理的这篇文章主要介绍了Linux使用率过高,原因不明前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在寻找这个并且只找到那些没有正确解释“缓存”数字的人的帖子后,我决定问这个问题.

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

这是一些信息:

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

还有一些shell输出

  1. root@good-server:# free -m
  2. total used free shared buffers cached
  3. Mem: 15953 14780 1173 0 737 8982
  4. -/+ buffers/cache: 5059 10894
  5. Swap: 31731 0 31731
  6.  
  7. root@good-server:# python ps_mem.py
  8. [... all processes neatly listed ...]
  9. ---------------------------------
  10. 4.7 GiB
  11. =================================
  12.  
  13. root@bad-server:# free -m
  14. total used free shared buffers cached
  15. Mem: 15953 15830 123 0 124 1335
  16. -/+ buffers/cache: 14370 1583
  17. Swap: 31731 15 31716
  18.  
  19. root@bad-server:# python ps_mem.py
  20. [... all processes neatly listed ...]
  21. ---------------------------------
  22. 4.0 GiB
  23. =================================

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

  1. MemTotal: 16336860 kB
  2. MemFree: 112356 kB
  3. Buffers: 138384 kB
  4. Cached: 1145208 kB
  5. SwapCached: 1244 kB
  6. Active: 4344336 kB
  7. Inactive: 1028744 kB
  8. Active(anon): 3706796 kB
  9. Inactive(anon): 382724 kB
  10. Active(file): 637540 kB
  11. Inactive(file): 646020 kB
  12. Unevictable: 0 kB
  13. Mlocked: 0 kB
  14. SwapTotal: 32493560 kB
  15. SwapFree: 32477728 kB
  16. Dirty: 1248 kB
  17. Writeback: 0 kB
  18. AnonPages: 4087776 kB
  19. Mapped: 60132 kB
  20. Shmem: 156 kB
  21. Slab: 274968 kB
  22. SReclaimable: 225864 kB
  23. SUnreclaim: 49104 kB
  24. KernelStack: 4352 kB
  25. PageTables: 16400 kB
  26. NFS_Unstable: 0 kB
  27. Bounce: 0 kB
  28. WritebackTmp: 0 kB
  29. CommitLimit: 40661988 kB
  30. Committed_AS: 6576912 kB
  31. VmallocTotal: 34359738367 kB
  32. VmallocUsed: 311400 kB
  33. VmallocChunk: 34359418748 kB
  34. HardwareCorrupted: 0 kB
  35. AnonHugePages: 0 kB
  36. HugePages_Total: 0
  37. HugePages_Free: 0
  38. HugePages_Rsvd: 0
  39. HugePages_Surp: 0
  40. Hugepagesize: 2048 kB
  41. DirectMap4k: 73728 kB
  42. DirectMap2M: 16703488 kB

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

  1. MemTotal: 16336860 kB
  2. MemFree: 1182320 kB
  3. Buffers: 756244 kB
  4. Cached: 8695688 kB
  5. SwapCached: 0 kB
  6. Active: 13499680 kB
  7. Inactive: 843208 kB
  8. Active(anon): 4853460 kB
  9. Inactive(anon): 37372 kB
  10. Active(file): 8646220 kB
  11. Inactive(file): 805836 kB
  12. Unevictable: 0 kB
  13. Mlocked: 0 kB
  14. SwapTotal: 32493560 kB
  15. SwapFree: 32493560 kB
  16. Dirty: 1268 kB
  17. Writeback: 0 kB
  18. AnonPages: 4890180 kB
  19. Mapped: 84672 kB
  20. Shmem: 252 kB
  21. Slab: 586084 kB
  22. SReclaimable: 503716 kB
  23. SUnreclaim: 82368 kB
  24. KernelStack: 5176 kB
  25. PageTables: 19684 kB
  26. NFS_Unstable: 0 kB
  27. Bounce: 0 kB
  28. WritebackTmp: 0 kB
  29. CommitLimit: 40661988 kB
  30. Committed_AS: 6794180 kB
  31. VmallocTotal: 34359738367 kB
  32. VmallocUsed: 311400 kB
  33. VmallocChunk: 34359419468 kB
  34. HardwareCorrupted: 0 kB
  35. AnonHugePages: 0 kB
  36. HugePages_Total: 0
  37. HugePages_Free: 0
  38. HugePages_Rsvd: 0
  39. HugePages_Surp: 0
  40. Hugepagesize: 2048 kB
  41. DirectMap4k: 112640 kB
  42. DirectMap2M: 16664576 kB

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

  1. MemFree -1070 MB
  2. Cached -7550 MB
  3. Active -9155 MB
  4. Active(anon) -1147 MB
  5. Active(file) -8009 MB
  6. AnonPages - 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相关文章