過去2か月間、私はUbuntu VPSの予期しない「停止」に関連する問題を調査してきました。
どうしたのか私のVPSが動作を停止して制御できない状態になりました。この問題は手動でシステムを再起動しなければ解決できませんでした。
私は問題がメモリリークに関連していると考えて、sysctlに次の変数を追加して問題を解決することにしました。
# panic kernel on OOM
vm.panic_on_oom=1
# reboot after 10 sec on panic
kernel.panic=10
最初は問題が解決したと思いましたが(パニックモードと関連があると思って)見たらそうではありませんでした。
以下は私のVPS使用量のグラフです。 CPUが数秒以内に100%に達することがわかります。
2番目の試みは、VPSにMonitを追加し、特定の量のメモリ/ CPUを使用した後に特定のサービスを停止することによって、これらのことが発生しないようにいくつかの規則を使用することでした。しかし、私はそれを解決できませんでした。
何が問題なのかわかりません。 VPSが制御されていない状態でシステムを自動的に再起動するにはどうすればよいですか?
修正する:
私のMonit設定の例は次のとおりです。
if cpu usage > 50% for 2 cycles then alert
if cpu usage > 60% for 2 cycles then restart
if memory usage > 70% for 4 cycles then alert
if memory usage > 80% for 4 cycles then restart