服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

linux的OOM杀了为什么?

。 问候,同行pipe理员。 我希望能够发现困扰我公司一台机器的OOM杀戮事件。 我不能决定他们是不是合法的OOMs。 这是一个内核2.6.32-279.1.1.el6.x86_64的Centos 6.x。 公羊8GB,CPU Athlon2-X4。 最大的进程是mysql和vmware player 4,最多分别有2GB和4GB的ram不断分配,还有一些开销。 (Vmware是因为它更大的尺寸而被杀死的。) 除了这两个守护进程之外,还有守护进程,但是它们非常小,而且负载很轻,所以我不知道剩下的1.5 / 1的RAM会消失在哪里,不包括巨大的交换。 另外, 只有当它在晚上运行备份cronjobs时才会发生这种情况。 (这些是带有标准工具的简单shell脚本,它们转储一些数据库并压缩一些web和邮箱目录。) 在这里,例如,它正在做一个mysqldump – 这是第一次发生这个特定的任务。 它曾经发生几乎每一次,还加上“页面分配失败”,当我运行一个大的目录树(〜100万个小文件)的rsyncs或拉链。 但是我把所有的东西都搬到了另外一台装有zfs的机器上:在这个操作之后,凶手让我一个人呆了一会儿。 我讨厌这个问题玩了好几个月,阅读和重新阅读互联网上的每一个线索,我仍然不能把这个信息与我的情况联系起来。 有交换,为什么不交换而不是杀戮? 还有谁拿走了所有的公羊? (在开始时,有一些合法的记忆stream氓,我得到了它们)。不能成为碎片,因为失败的请求是零。 我在实际杀手日志之前粘贴一些数据: vm.swappiness = 100 vm.vfs_cache_pressure = 5000 vm.min_free_kbytes = 262144 (这些我试图修复它,他们可能有点极端,但它运行顺利无论如何) 我徒劳地尝试了overcommit_memory = 2。 是不是应该禁用杀手? 这是系统正常的内存状态。 请注意,由于mmap-ed vmem,vmware的ram被视为caching。 顺便说一句,vmware设置为允许回收/交换虚拟内存。 它永远不会这样做。 caching总共使用的空闲共享缓冲区 Mem:7800792 7400032 400760 0 61100 4449196 – […]