IPMI watchdogの設定方法
Asianux Server4 SP1 for x86(32bit)
Asianux Server4 SP1 for x86-64(64bit)
Asianux Server 3 for x86(32bit)
Asianux Server 3 for x86-64(64bit)
[概要]
本ドキュメントではカーネルのIPMI watchdogの設定方法について説明します。
IPMI watchdogとはIPMI(Intelligent Platform Management Interface) のwatchdog timer機能により、なんらかの原因でシステムがフリーズした状態を検出する機能です。これによりシステムのデッドロック、または無限ループなどの不具合を検出することが可能です。
また検出後にダンプ採取、自動でハードウェアリセットなど任意の動作をさせることができます。
[前提条件]
・IPMIコントローラがサーバに搭載されている必要があります。
確認するにはサーバのスペックを確認していだくか、下記の方法で確認が可能です。
IPMIコントローラが備わっている場合は以下のコマンドが成功しモジュールをロードすることができます。
# modprobe ipmi_si
[設定手順]
1.IPMI watchdogの設定
/etc/sysconfig/ipmiを任意のエディタで開き以下の行を編集します。以下は設定例です。
・・・
IPMI_WATCHDOG=yes
・・・
IPMI_WATCHDOG_OPTIONS="timeout=60 action=reset pretimeout=30 preaction=pre_int preop=preop_panic"
・・・
各パラメータの意味は以下になります。
timeout | システムがフリーズ状態と判断する時間を指定します。watchdogが最後にリセットされてからaction=で指定した動作をさせるタイムアウト時間になります。単位は秒となります。 |
action |
reset, none, power_cycle, power_offのいずれかを指定します。 ・resetはH/Wリセットでリブートします。 ・noneはなにもしません。 ・power_cycleはいったん電源をオフにしたあと、オンにます。 ・power_offは電源をオフにします。 |
pretimeout | preaction=で指定した動作をさせるタイムアウト時間を指定します。単位は秒となります。 |
preaction |
pre_none,pre_smi, pre_nmi, pre_intのいずれかを指定します。preopを動作させる通知手段を設定します。 ・pre_noneはなにもしません。 ・pre_smiはIPMI物理インターフェースであるSMI(System Management ・pre_nmiはNMI割り込みにより通知します。 ・pre_intは割り込みにより通知します。 |
preop |
preop_none, preop_panic のいずれかを指定します。 ・preop_noneはなにもしません。 ・preop_panicはカーネルパニックを発生させます。 |
2.IPMI watchdogドライバのロード
(1) 以下のコマンドにて IPMI watchdogドライバをロードします。
# service ipmi start
Starting ipmi drivers: [ OK ]
Starting ipmi_watchdog driver: [ OK ]
(2) システムの起動時に自動でIPMI watchdogを有効にするには、以下のコマンドを実行します。
# chkconfig ipmi on
ドライバのロード後には以下のメッセージが出力されます。
# dmesg
・・・・
ipmi: Found new BMC (man_id: 0x0002a2, prod_id: 0x0000, dev_id: 0x20)
IPMI kcs interface initialized
ipmi device interface
IPMI Watchdog: driver initialized
以上でデバイスファイル/dev/watchdogが作成されます。
3.watchdogデーモンの起動
(1) /etc/watchdog.confを開いて以下の行をコメントアウトします。
#watchdog-device = /dev/watchdog
(2) watchdogデーモンを起動します。
# service watchdog start
(3) システムの起動時に自動でwatchdogデーモンを起動するには、以下のコマンドを実行します。
# chkconfig watchdog on
[注意事項]
本ドキュメントの内容は、予告なしに変更される場合があります。
本ドキュメントは、限られた評価環境における検証結果をもとに作成しており、全ての環境での動作を保証するものではありません。
本ドキュメントの内容に基づき、導入、設定、運用を行ったことにより損害が生じた場合でも、弊社はその損害についての責任を負いません。あくまでお客様のご判断にてご使用ください。
[更新履歴]
2012年 1月27日 watchdogの起動方法を追加
2010年 2月 9日 新規作成