oom-killerを止める方法

Linuxには、oom-killer(Out of Memory Killer)という、メモリ不足が発生した際にプロセスを強制終了させ、実メモリに空き容量を確保する機能が実装されている。


しかし、この空きメモリが確保できないことによりシステムが停止するという最悪の事態を避けるために用意されている機能が、肝心のDBなどの一番大事なサービスを殺すはめになる・・・


カーネルパラメータ vm.oom-kill を変更することで無効化できる。

# sysctl -w vm.oom-kill=0
vm.oom-kill = 0
#

デフォルトは1(有効)となっており、0を設定することで無効化される。

システム再起動後も設定を有効にする場合は、sysctl.confに記載すればOK。

# vi /etc/sysctl.conf
vm.oom-kill=0