centos 配置 oom 自动kill进程
要配置CentOS的OOM(Out of Memory)自动杀死进程,可以按照以下步骤进行操作:
-
编辑
/etc/sysctl.conf文件,添加以下配置:vm.panic_on_oom=1 kernel.panic=10 kernel.panic_on_oops=1这些配置将设置系统在OOM发生时自动触发内核崩溃,并在10秒后重新启动系统。
-
重新加载sysctl.conf配置:
$ sysctl -p -
创建一个
oom_kill.sh脚本,该脚本将在OOM事件发生时被调用。在该脚本中,您可以定义要执行的操作,例如记录日志、发送警报或执行其他操作。$ sudo vi /usr/local/bin/oom_kill.sh脚本内容示例:
#!/bin/sh echo "Out of memory event occurred at $(date)" >> /var/log/oom_kill.log # 在此处添加自定义的操作,例如发送警报或重启服务 -
为脚本添加执行权限:
$ sudo chmod +x /usr/local/bin/oom_kill.sh -
编辑
/etc/systemd/system/oom-killer.service文件,添加以下内容:[Unit] Description=OOM Killer [Service] ExecStart=/usr/local/bin/oom_kill.sh [Install] WantedBy=default.target -
重新加载systemd配置:
$ sudo systemctl daemon-reload -
启用并启动oom-killer服务:
$ sudo systemctl enable oom-killer.service $ sudo systemctl start oom-killer.service
现在,当系统发生OOM事件时,将自动执行oom_kill.sh脚本中定义的操作。您可以根据需要自定义脚本中的操作
原文地址: https://www.cveoy.top/t/topic/hH1k 著作权归作者所有。请勿转载和采集!