Watchdog は、サーバーが正常に動作しない場合に、問題の発生を予防する修正処置 (リブート) を確実に実行できるようにサーバーを監視する方法です。 Watchdog は、特別な Watchdog ハードウェアを使用して実装する場合と、ソフトウェアのみのオプションを使用して実装する場合があります。
コンポーネント
- Watchdog timer - ソフトウェアドライバまたは外部ハードウェアコンポーネント
- Watchdog daemon - 該当する Linux ディストリビューションを通じて rpm が入手可能
- LifeKeeper Core daemon - LifeKeeper のインストールに付随
- health cehck script - LifeKeeper SSP core の動作状況を確認するスクリプト
次のセクションを注意深く読んでください。デーモンは、エラーからリカバリするように設計されており、注意深く設定しないとデーモンはシステムをリセットします。インストールおよび設定を行う前に慎重に計画してください。このセクションの目的は、 Watchdog についての説明や設定をすることではありません。ここでは、 Watchdog 構成での LifeKeeper SSP との相互運用についての説明や設定のみ行います。
設定
以下の手順は、root ユーザ権限を持つ管理者が行う必要があります。管理者は、 Watchdog のリスクおよび問題についてすでに熟知しているものとします。
ヘルスチェックスクリプト (LifeKeeper 監視スクリプト /opt/LifeKeeper/samples/watchdog/LifeKeeper-watchdog) は、LifeKeeper の設定と Watchdog の設定を関連付けるコンポーネントです。このスクリプトは、LifeKeeper コアコンポーネントの基本部分を監視できます。
以前に Watchdog を設定していた場合は、次のコマンドを入力して Watchdog を停止します。そうでない場合は、手順 2 に進みます。
systemctl stop watchdog
Watchdog ソフトウェアのインストールで供給される Watchdog 設定ファイル (/etc/watchdog.conf) を編集します。
- test-binary を次のように修正します。
test-binary = /opt/LifeKeeper/samples/watchdog/LifeKeeper-watchdog
- test-timeout を次のように修正します。
test-timeout = 5
- interval を次のように修正します。
interval = 7
interval は、test-timeout 以上の値であることが必要です。また、あまりに長い間隔にすると障害検出が遅れてしまうので、5〜10程度を推奨します。
- test-binary を次のように修正します。
LifeKeeper SSP が起動していることを確認します。まだの場合は、LifeKeeper の起動 トピックを参照してください。
次のコマンドを入力して Watchdog を起動します。
systemctl start watchdog
今後の再起動の際に Watchdog を自動的に起動させるには、次のコマンドを入力します。
systemctl enable watchdog
アンインストール
LifeKeeper をアンインストールする場合は、慎重に行ってください。以下に列記の通り、上記の手順を逆の順で実行します。
次のコマンドを入力して Watchdog を停止します。
systemctl stop watchdog
Watchdog ソフトウェアのインストールで供給される Watchdog 設定ファイル (/etc/watchdog.conf) を編集します。
- test-binary および interval の両エントリをコメントアウトします (各行の先頭に # を追加します)。
#test-binary = #interval =
注記: interval が他の機能によって以前から使用されていた場合は、そのままにしておくこともできます。
- test-binary および interval の両エントリをコメントアウトします (各行の先頭に # を追加します)。
LifeKeeper をアンインストールします。LifeKeeper の削除 トピックを参照してください。
これで Watchdog を起動し直すことができます。LifeKeeper のみが Watchdog を使用していた場合は、次のコマンドを入力すると Watchdog を永続的に無効にできます。
systemctl disable watchdog
このトピックへフィードバック