OOM-Killer in kernel 2.6.32-4-pve

janzun

New Member
Mar 19, 2011
28
0
1
Spain
Hi,

I have several vz containers and i've detected, from time to time, a oom-killer. For example:

Nov 30 18:12:19 pm01 kernel: Fatal resource shortage: privvmpages, UB 133.
Nov 30 18:58:51 pm01 kernel: apache2 invoked PF oom-killer: oomkilladj=0
Nov 30 18:58:51 pm01 kernel: Pid: 11130, comm: apache2 Not tainted 2.6.32-4-pve #1
Nov 30 18:58:51 pm01 kernel: Call Trace:
Nov 30 18:58:51 pm01 kernel: [<ffffffff810b977f>] ? pagefault_out_of_memory+0x9b/0xe8
Nov 30 18:58:51 pm01 kernel: [<ffffffff8103269e>] ? mm_fault_error+0x5c/0x142
Nov 30 18:58:51 pm01 kernel: [<ffffffff810d56e9>] ? __do_brk+0x253/0x35a

Of course the proxmox server must be rebooted because oom-killer destroy the system.

I know, VM 133 needs more memory but... oom-killer for that?

* Host memory is Ok in normal operation:

pm01:/var/log# free -m
total used free shared buffers cached
Mem: 16024 5489 10534 0 682 1175
-/+ buffers/cache: 3632 12392
Swap: 15359 15 15344

pm01:/var/log# vzctl enter 133
entered into CT 133
root@janzun:/# free -m
total used free shared buffers cached
Mem: 3072 1088 1983 0 0 0
-/+ buffers/cache: 1088 1983
Swap: 0 0 0


* System info:

pm01:/var/log# pveversion -v
pve-manager: 1.9-26 (pve-manager/1.9/6567)
running kernel: 2.6.32-4-pve
proxmox-ve-2.6.32: 1.8-33
pve-kernel-2.6.32-4-pve: 2.6.32-33
qemu-server: 1.1-32
pve-firmware: 1.0-14
libpve-storage-perl: 1.0-19
vncterm: 0.9-2
vzctl: 3.0.29-3pve1
vzdump: 1.2-16
vzprocps: 2.0.11-2
vzquota: 3.0.11-1
pve-qemu-kvm: 0.14.1-1
ksm-control-daemon: 1.0-6

Im using 2.6.32-4 kernel because i had problem with oom-kiler and Java in the past.

Any idea?

Thanks.
 
increase memory, see the failcounts for CT 133. (Fatal resource shortage: privvmpages, UB 133)

you should move to a vswap setup, using the latest kernel. If you have a test box, try it with the 2.0 beta, this one uses vswap by default.
 
Hi tom,

I know i need to increase memory (failcounts are high), but... I dont understand this behavior, I mean, imagine an unexpected increase of memory in Apache, for example a DOS attack, or an adversisement response: Shouldnt openvz resource manager system anticipate the oom? Otherwise oom-killer become crazy and it starts to kill everything (cron, ssh, other containers, etc).

Which proxmox kernel can i use with vswap or what can i do? Its a production server and i cant use 2.0 version :(