web-dev-qa-db-ja.com

Linuxウォッチドッグおよびsystemdウォッチドッグ

実行時にsystemdウォッチドッグにアプリケーションを登録する方法はありますか?たとえば、systemd APIを介してsystemdユニットファイルを使用しない

Linuxウォッチドッグはシステムのリセットにのみ使用されますか?アプリケーションのリセットに使用できますか?

7
LongLT

Systemdのウォッチドッグは主に3つの異なるアクションに使用できます。

  • ハードウェアリセット(/ dev/watchdogで公開されたCPUハードウェアウォッチドッグを活用)。これは、RuntimeWatchdogSec=/etc/systemd/system.confオプションによって有効になります
  • systemdユニットの定義で予測される限り、アプリケーションのリセット
  • 失敗した複数のアプリケーションリセットへの応答としてのフォールバック手段としてのシステムリセット。 systemdユニットでも定義

ユニットファイルの例:

[Unit]
Description=My Little Daemon
Documentation=man:mylittled(8)

[Service]
ExecStart=/usr/bin/mylittled
WatchdogSec=30s
Restart=on-failure
StartLimitInterval=5min
StartLimitBurst=4
StartLimitAction=reboot-force

例は、 http://0pointer.de/blog/projects/watchdog.html から取得され、何がどのように行われるかについてかなり完全な概要を示します。ウォッチドッグサービスを使用できます。

8
RafDouglas

Linuxウォッチドッグデーモンはシステムリセットジョブに使用する必要がありますが、プロセスの修正または再起動に使用できる永続的なエラーに対して「修復バイナリ」を実行することもできます。一般的に言って、デーモンプロセスを監視して再起動するには、すでに回答されているようにinit/upstart/systemdでサポートされているメソッドを使用し、最も深刻な「再起動だけで問題が解決する可能性が高い」状況ではウォッチドッグ操作を維持する必要があります。

3
Paul Crawford