JP1/Integrated Management - Manager リファレンス
形式
[HEALTHCHECK] ENABLE={true | false} FAILOVER={true | false} EVENT={true | false} COMMAND=コマンド [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の動作する言語コードで記述してください。
この定義ファイルでヘルスチェック機能を有効に設定すると,JP1/IM - Managerの各プロセスおよび自ホスト上のJP1/Baseのイベントサービスが正常に動作しているかどうかをチェックできます。
ヘルスチェック機能で異常を検知できるプロセスを次に示します。
- イベントコンソールサービス(java※1)
- 自動アクションサービス(jcamain)
- イベントフロー制御サービス(evflow)
- インシデント登録サービス(java※1)
- 相関イベント発行サービス(java※1)
- イベントサービス(jevservice)
これらのプロセスがハングアップ※2や異常終了となった場合に,異常を検知し,JP1イベントを発行したり,設定した通知コマンドを実行したりして,オペレーターにプロセスの回復を促します。
- 注※1
- イベントコンソールサービス,インシデント登録サービス,および相関イベント発行サービスはjavaで動作しているため,プロセス名の表示はjavaになります。
- それぞれの機能名は次のとおりです。
- イベントコンソールサービス:evtcon
- インシデント登録サービス:jcdmain
- 相関イベント発行サービス:evgen
- 注※2
- プロセスのハングアップとは,デッドロックや無限ループなどが原因で,プロセスが処理要求を受け付けなくなる状態です。
定義の反映時期
次の場合に,ヘルスチェック定義ファイルの設定が有効になります。
- JP1/IM - Managerを起動した場合
- jco_spmd_reloadコマンドによりリロードをした場合
記述内容
- ENABLE={true | false}
- ヘルスチェック機能を有効にするかどうかを指定します。
- 「true」または「false」のどちらかを指定します。ヘルスチェック機能を有効にする場合は「true」を,無効にする場合は「false」を指定します。デフォルトは「false」です。
- FAILOVER={true | false}
- クラスタシステムを使用している場合に使用します。ヘルスチェック機能で異常を検知した場合のJP1/IM - Managerの動作を「true」または「false」のどちらかで指定します。デフォルトは「false」です。クラスタシステムを使用していない場合には,デフォルトのままにしてください。
- Windowsの場合
異常を検知したときにJP1/IM - Managerを停止する場合は「true」を,停止しない場合は「false」を指定します。ヘルスチェック機能で異常を検知したときに実行系サーバを停止することで,待機系サーバにフェールオーバーできます。
- UNIXの場合
異常検知したJP1/IM - Managerのプロセスを停止する場合は「true」を,停止しない場合は「false」を指定します。ヘルスチェック機能で異常を検知したときは,実行系サーバでJP1/IM - Managerを構成するプロセスをjco_killall.clusterコマンドで強制的に終了することで,待機系サーバにフェールオーバーできます。
- EVENT={true | false}
- ヘルスチェック機能で異常を検知した場合に,JP1イベント(イベントID:2012,2013)を発行するかどうかを指定します。
- 「true」または「false」のどちらかを指定します。イベントを発行する場合は「true」を,発行しない場合は「false」を指定します。
- デフォルトは「true」です。なお,「true」を指定すると,次の場合にもJP1イベント(イベントID:2014)が発行されるようになります。
- ヘルスチェック機能が異常回復を検知した場合
- JP1イベントの詳細は,「4.2.2 JP1イベントの詳細」を参照してください。
- COMMAND=コマンド
- ヘルスチェック機能で異常を検知した場合に,実行する通知コマンドを指定します。
- 実行可能なコマンドの種類は次のとおりです。
- コマンドを実行するホストがWindowsの場合
- 実行形式ファイル(.com,.exe)
- バッチファイル(.bat)
- JP1/Scriptのスクリプトファイル(.spt)
(ただし.sptファイルが実行可能なよう関連づけが設定されていること)
- コマンドを実行するホストがUNIXの場合
- 実行形式ファイル(実行権限が付いていること)
- シェルスクリプト(実行権限が付いていること)
- 通知コマンドを定義する場合の注意事項を次に示します。
- 「COMMAND=」から改行コードまでを一つのコマンドとして定義します。
- 一つのコマンド定義の最大長は,1,023バイトです。最大長のバイト数には,空白を含みます。改行コードは含みません。なお,変数を指定する場合は,変数を展開した文字列が1,023バイトを超えるときはコマンドを実行しません。その際,統合トレースログに「KAVB8072-E 通知コマンド(コマンド)が実行できませんでした : 保守情報」を出力します。
- 変数を指定する場合は,変数を「$」に続けて指定します。指定できる変数を次に示します。
表3-7 ヘルスチェック定義ファイルに指定できる変数
注※ jevserviceで異常が発生した場合は,-1に置き換わります。
変数名 内容 HCHOST 異常が発生したホスト名 HCFUNC 異常が発生した機能名
(evflow,jcamain,evtcon,jcdmain,evgenまたはjevservice)HCPNAME 異常が発生したプロセスのプロセス名
(evflow,jcamain,evtcon,jcdmain,evgenまたはjevservice)HCPID 異常が発生したプロセスのプロセスID
(evflow,jcamain,evtcon,jcdmain,evgenまたはjevservice※のプロセスID)HCDATE 異常が発生した日付(yyyy/mm/dd) HCTIME 異常が発生した時刻(hh:mm:ss)
- 通知コマンドは,必ず終了するコマンドを設定してください。バッチファイル(Windows)またはシェルスクリプト(UNIX)を設定する場合は,必ず exit 0 で終了するようにしてください。終了しないコマンドやGUIが起動するコマンドを指定した場合,実行した通知コマンドのプロセスが残ってしまいます。
- COMMANDに指定された通知コマンドは,JP1/IM - Managerの実行環境を引き継ぎます。
- 通知コマンドは,JP1/IM - Managerの実行権限(Windows:SYSTEMユーザー,UNIX:root)で実行されます。
- COMMANDに指定する通知コマンドは,フルパスで指定してください。
- また,設定した通知コマンドが正常に動作するかどうかは,jcohctestコマンドを使って十分にテストしてください。jcohctestコマンドについては,「jcohctest」(2. コマンド)を参照してください。
- デフォルトは指定なしの「COMMAND=」で,通知コマンドを実行しません。
- 「$」を指定したい場合は「$$」と指定してください。
注意事項
- ヘルスチェック定義ファイル(jcohc.conf)を削除した場合は,ヘルスチェック定義ファイルのモデルファイル(jcohc.conf.model)をjcohc.confの名称でコピーし,必要に応じて,定義を変更してください。
- セントラルスコープサービス(jcsmain)はヘルスチェック機能で監視できません。
定義例
ヘルスチェック機能で異常を検知した場合に,JP1イベントを発行し,通知コマンドjcohc01.exeを実行します。
[HEALTHCHECK] ENABLE=true FAILOVER=false EVENT=true COMMAND=C:\Command\jcohc01.exe [End]
All Rights Reserved. Copyright (C) 2006, 2008, Hitachi, Ltd.