ヘルスチェック定義ファイル(jcohc.conf)
形式
[HEALTHCHECK]
ENABLE={true | false}
FAILOVER={true | false}
EVENT={true | false}
COMMAND=コマンド
NO_RESPONSE_TIME=無応答時間
ERROR_THRESHOLD=異常とみなす無応答回数
BASE_NO_RESPONSE_TIME=無応答時間
BASE_ERROR_THRESHOLD=異常とみなす無応答回数
[End] |
ファイル
jcohc.conf(ヘルスチェック定義ファイル)
jcohc.conf.model(ヘルスチェック定義ファイルのモデルファイル)
格納先ディレクトリ
- Windowsの場合
- 物理ホストのとき
Consoleパス¥conf¥health¥
- 論理ホストのとき
共有フォルダ¥jp1cons¥conf¥health¥
- UNIXの場合
- 物理ホストのとき
/etc/opt/jp1cons/conf/health/
- 論理ホストのとき
共有ディレクトリ/jp1cons/conf/health/
説明
ヘルスチェック機能を有効にするかどうかを定義するファイルです。ヘルスチェック機能を有効に設定する場合,異常を検知したときに,JP1イベントの発行および通知コマンドの実行で,異常を通知するかどうかも定義できます。
この定義ファイルは,JP1/IM - Managerの動作する言語コードで記述してください。
ヘルスチェック定義ファイル(jcohc.conf)を削除した場合は,ヘルスチェック定義ファイルのモデルファイル(jcohc.conf.model)をjcohc.confの名称でコピーし,必要に応じて,定義を変更してください。
セントラルスコープサービス(jcsmain)はヘルスチェック機能で監視できません。
この定義ファイルでヘルスチェック機能を有効に設定すると,JP1/IM - Managerの各プロセスおよび自ホスト上のJP1/Baseのイベントサービスが正常に動作しているかどうかをチェックできます。
ヘルスチェック機能で異常を検知できるプロセスを次に示します。
- イベントコンソールサービス(evtcon)
- アクション実行サービス(jcamain)
- イベント基盤サービス(evflow)
- インシデント登録サービス(jcdmain)
- 相関イベント発行サービス(evgen)
- イベントサービス(jevservice)
これらのプロセスがハングアップ※や異常終了となった場合に,異常を検知し,JP1イベントを発行したり,設定した通知コマンドを実行したりして,オペレーターにプロセスの回復を促します。
- 注※
- プロセスのハングアップとは,デッドロックや無限ループなどが原因で,プロセスが処理要求を受け付けなくなる状態です。
定義の反映時期
次の場合に,ヘルスチェック定義ファイルの設定が有効になります。
- JP1/IM - Managerを起動した場合
- jco_spmd_reloadコマンドによりリロードをした場合
記述内容
- ENABLE={true | false}
- ヘルスチェック機能を有効にするかどうかを指定します。
- 「true」または「false」のどちらかを指定します。ヘルスチェック機能を有効にする場合は「true」を,無効にする場合は「false」を指定します。デフォルトは「false」です。
- ヘルスチェック機能を有効にすると,ヘルスチェック定義ファイル内のEVENTの設定が「true」か「false」かに関係なく,ヘルスチェック機能で異常を検知した場合に統合トレースおよびWindowsイベントログ(syslog)にメッセージ(KAVB8060-E,KAVB8062-E)が出力されます。
- FAILOVER={true | false}
- クラスタシステムを使用している場合に使用します。ヘルスチェック機能で異常を検知した場合のJP1/IM - Managerの動作を「true」または「false」のどちらかで指定します。デフォルトは「false」です。クラスタシステムを使用していない場合には,デフォルトのままにしてください。
- Windowsの場合
異常を検知したときにJP1/IM - Managerを停止する場合は「true」を,停止しない場合は「false」を指定します。ヘルスチェック機能で異常を検知したときにJP1/IM - Managerを停止することで,クラスタシステムにJP1/IM - Managerの異常を通知します。クラスタシステムでJP1/IM - Managerの障害時に,フェールオーバーするように設定しておくことで,ヘルスチェックが異常を検知した場合にフェールオーバーできます。
- UNIXの場合
異常検知したJP1/IM - Managerのプロセスを停止する場合は「true」を,停止しない場合は「false」を指定します。ヘルスチェック機能で異常を検知したときにJP1/IM - Managerを停止することで,クラスタシステムにJP1/IM - Managerの異常を通知します。クラスタシステムでJP1/IM - Managerの障害時に,jco_killall.clusterコマンドで強制的に終了し,フェールオーバーするように設定しておくことで,ヘルスチェックが異常を検知した場合にフェールオーバーできます。
- EVENT={true | false}
- ヘルスチェック機能で異常を検知した場合に,JP1イベント(イベントID:2012,2013)を発行するかどうかを指定します。
- 「true」または「false」のどちらかを指定します。イベントを発行する場合は「true」を,発行しない場合は「false」を指定します。
- デフォルトは「true」です。なお,「true」を指定すると,次の場合にもJP1イベント(イベントID:2014)が発行されるようになります。
- JP1イベントの詳細については,「3.2.2 JP1イベントの詳細」を参照してください。
- COMMAND=コマンド
- ヘルスチェック機能で異常を検知した場合に,実行する通知コマンドを指定します。
- 実行可能なコマンドの種類は次のとおりです。
- コマンドを実行するホストがWindowsの場合
- 実行形式ファイル(.com,.exe)
- バッチファイル(.bat)
- JP1/Scriptのスクリプトファイル(.spt)
(ただし.sptファイルが実行可能なよう関連づけが設定されていること)
- コマンドを実行するホストがUNIXの場合
- 実行形式ファイル(実行権限が付いていること)
- シェルスクリプト(実行権限が付いていること)
- 通知コマンドを定義する場合の注意事項を次に示します。
- また,設定した通知コマンドが正常に動作するかどうかは,jcohctestコマンドを使って十分にテストしてください。jcohctestコマンドについては,「jcohctest」(1. コマンド)を参照してください。
- デフォルトは指定なしの「COMMAND=」で,通知コマンドを実行しません。
- 「$」を指定したい場合は「$$」と指定してください。
- NO_RESPONSE_TIME=無応答時間
- JP1/IM - Managerのプロセスの無応答時間のチェック間隔を秒単位で指定します。指定できる範囲は,60~3,600秒です。デフォルト値は「60」秒です。
- 指定範囲外の値が設定された場合や定義がない場合は,デフォルト値「60」秒を仮定します。
- ERROR_THRESHOLD=異常とみなす無応答回数
- JP1/IM - Managerのプロセスについて異常とみなす無応答回数を指定します。指定できる範囲は,1~60回です。デフォルト値は「3」回です。
- 指定範囲外の値が設定された場合や定義がない場合は,デフォルト値「3」回を仮定します。
- BASE_NO_RESPONSE_TIME=無応答時間
- JP1/Baseのプロセスの無応答時間のチェック間隔を秒単位で指定します。指定できる範囲は,60~3,600秒です。デフォルト値は「300」秒です。
- 指定範囲外の値が設定された場合や定義がない場合は,デフォルト値「300」秒を仮定します。
- BASE_ERROR_THRESHOLD=異常とみなす無応答回数
- JP1/Baseのプロセスについて異常とみなす無応答回数を指定します。指定できる範囲は,1~60回です。デフォルト値は2です。
- 指定範囲外の値が設定された場合や定義がない場合は,デフォルト値「2」回を仮定します。
定義例
ヘルスチェック機能で異常を検知した場合に,JP1イベントを発行し,通知コマンドjcohc01.exeを実行します。
[HEALTHCHECK]
ENABLE=true
FAILOVER=false
EVENT=true
COMMAND=C:¥Command¥jcohc01.exe
NO_RESPONSE_TIME=60
ERROR_THRESHOLD=3
BASE_NO_RESPONSE_TIME=300
BASE_ERROR_THRESHOLD=2
[End]