Linux
如果達到 100% CPU,如何重新啟動 linux 服務?
我有帶有 saslauthd 的後綴電子郵件伺服器。saslauthd 守護程序一次又一次地佔用 100% 的 CPU。重新啟動這些服務會恢復正常的 CPU 使用率。
是否有任何適當的腳本來確定具有高 CPU 使用率的服務並自動重新啟動它。
提前致謝。
你可能想看看
monit
(官方網站)。它很容易配置以監視高 CPU 使用率並在需要時重新啟動程序。
一個簡單的例子(你應該根據你的系統路徑和需要來配置它):
check process saslauth with pidfile /var/run/saslauthd/saslauthd.pid group mail start program = "/etc/init.d/saslauthd start" stop program = "/etc/init.d/saslauthd stop" if cpu > 90% for 2 cycles then restart
哪裡(取自手冊):
CPU([user|system|wait]) is the percent of time the system spend in user or kernel space and I/O. The user/system/wait modifier is optional, if not used, the total system cpu usage is tested
一個週期等於
set daemon
配置選項中的秒數。