Linux内存使用情况

前端之家收集整理的这篇文章主要介绍了Linux内存使用情况前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们在某些服务器上遇到了一些 Linux内存使用问题. free,top,ps和vmstat都显示261M免费1G(~25%).但是,在顶部显示每个进程显示的内存量表明我们应该使用非常少的内存.缓存在缓冲区中只有大约48M和0K,因此总内存可用309M,仍然比我们应该的少得多.我在 http://www.workxpress.com/sites/default/files/top.png中包含了我们最高输出的屏幕截图(按内存排序).这是我在serverfault上的第一篇文章,所以我无法在我的帖子中包含图片:-P

在尝试了几次谷歌搜索之后,我就不会比我更进一步.大多数结果告诉我同样的事情,内存被用于缓存和缓冲区(我已经知道).但顶级和免费显然没有表现出来.任何帮助是极大的赞赏.

谢谢,
JamesArmes

更新:
我从最近出现的这个问题中包含了我们的/ proc / meminfo:

MemTotal:      1028636 kB
MemFree:         30056 kB
Buffers:             0 kB
Cached:          28732 kB
SwapCached:     154684 kB
Active:         265328 kB
Inactive:        19416 kB
SwapTotal:     2097144 kB
SwapFree:      1758196 kB
Dirty:              36 kB
Writeback:           0 kB
AnonPages:      240260 kB
Mapped:          11996 kB
Slab:            23008 kB
SReclaimable:    11976 kB
SUnreclaim:      11032 kB
PageTables:       5636 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   2611460 kB
Committed_AS:  1099080 kB
VmallocTotal: 34359738367 kB
VmallocUsed:      7204 kB
VmallocChunk: 34359731091 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
HugePages_Surp:      0
Hugepagesize:     2048 kB

下面是我们的/etc/sysctl.conf(删除了所有注释行):

kernel.printk = 4 4 1 7                            
kernel.maps_protect = 1                                            
fs.inotify.max_user_watches = 524288
vm.mmap_min_addr = 65536
net.ipv4.conf.default.rp_filter=1
net.ipv4.conf.all.rp_filter=1

我希望这有帮助.

解决方法

由于我看到vmware-guestd正在运行,我将假设这是一个VM.假设是ESX,请进入VIC并右键单击该计算机.单击编辑设置…,然后选择资源选项卡.单击“内存”并确保在“限制”下选中“无限制”.

可能发生的情况是您对内存有限制,当机器使用大量内存(接近或超过限制)时,vmware来宾工具会将内存“使用”而不是将其释放回ESX,以防万一再次需要它.

更新:

“服务器允许您仅在cpu和内存预留时启动虚拟机
可用…当未使用资源时,ESX Server主机使其可供其他虚拟机使用.“

http://www.vmware.com/pdf/vi3_esx_resource_mgmt.pdf

它通过“气球”驱动程序(vmmemctl)执行此操作,该驱动程序是访客工具的一部分.假设您的机器正在使用100MB的RAM,那么您运行一些程序并且它会跳转到500MB.现在你停止该程序并期望RAM恢复到100MB.但事实并非如此.这是因为,为了让ESXi从客户操作系统回收内存(即使有预订也会这样做),它必须使用气球驱动程序.为了使操作系统“行动”,就好像它具有更少的内存,气球驱动程序“使用”ESXi想要的内存,以便操作系统无法使用它.

IOW,即使预订,客人只使用尽可能多的主机RAM.当它使用更多时,ESX会分配更多主机RAM,客户现在认为它总是可用.为了“说服”客人新的公羊再次消失,气球司机将其用完.保留仅仅意味着“除非物理机器有1GB可自由加载客户端,否则不要启动虚拟机”而不是“给客户1GB是否使用它”.

原文链接:https://www.f2er.com/linux/396809.html

猜你在找的Linux相关文章