JP1/Base 運用ガイド
JP1/Baseでは,JP1/Base自体の障害がJP1/IMやJP1/AJSを利用したシステム運用に及ぼす影響をできるだけ防ぐために,次の機能を提供しています。
- ヘルスチェック
プロセス管理機能,イベントサービス,イベント変換などのプロセスのハングアップ(無限ループやデッドロック),および異常終了(強制終了した場合を除く)を検知します。
- プロセス管理機能による異常検知
プロセス管理機能が管理するプロセスの異常終了と,認証サーバの切り替えを検知します。
- プロセス異常終了時の再起動
プロセス管理機能が管理するプロセスが異常終了した場合に,自動で再起動します。
- イベントサービスのプロセス異常終了時の再起動(UNIX限定)
物理ホストのイベントサービスのプロセスが異常終了した場合に,自動で再起動します。
- 障害発生時の資料採取
JP1/Baseでトラブルが発生したときに,トラブルシュートのための保守資料を採取できます。
プロセスの異常終了には,プロセス自体が異常と判断して終了する場合と,OSのkillコマンドなどで強制的に終了する場合の2種類あります。ヘルスチェックでは,強制的にプロセスが終了した場合を異常終了として検知できず,プロセスの処理が停滞しているものとして検知します。そのため,プロセスの異常終了を確実に検知したい場合は,ヘルスチェックとプロセス管理機能による異常検知を併用してください。
ヘルスチェックが検知できるプロセスの障害の範囲と,プロセス管理機能が検知できるプロセスの障害の範囲を次の図で示します。
図2-3 ヘルスチェックとプロセス管理機能が検知できるプロセスの障害の範囲
各機能の設定方法を説明します。
- <この項の構成>
- (1) ヘルスチェック機能でプロセスの異常を検知する
- (2) プロセスの異常終了および認証サーバの切り替え発生を検知する
- (3) 異常終了したプロセス管理機能が管理するプロセスを再起動させる
- (4) 異常終了したイベントサービスのプロセスを再起動させる(UNIX限定)
- (5) 統合トレース機能(HNTRLib2)の設定
- (6) 障害発生時の資料採取の準備(Windows限定)
(1) ヘルスチェック機能でプロセスの異常を検知する
ヘルスチェック機能を利用すると,プロセスの異常を早期に検知できます。また,メッセージによる異常通知によって異常が発生したプロセスを特定できるため,プロセス異常時の影響を最小限に抑えた対処ができます。なお,ヘルスチェック機能を使用するには,監視するホスト,および監視対象ホストにJP1/Base 07-11以降がインストールされている必要があります。
(a) ヘルスチェック機能を有効にする
ヘルスチェック機能は,デフォルトでは無効になっています。有効にする手順を次に示します。クラスタシステムで運用する場合は,論理ホストのセットアップの完了後に,物理ホスト,論理ホストの両方でヘルスチェック機能を有効にしてください。
- 共通定義情報にヘルスチェック機能を有効にする情報を登録する。
- 1-1 共通定義設定用ファイル(ヘルスチェック機能)のモデルファイル
- (jbshc_setup.conf.model)を任意のファイル名でコピーする。
- 1-2 コピーしたファイルを編集する。
共通定義設定用ファイル(ヘルスチェック機能)の詳細については,「14. 定義ファイル」の「共通定義設定用ファイル(ヘルスチェック機能)」を参照してください。
- 1-3 次のコマンドを実行する。
- jbssetcnf 1-2で編集したファイル名
- ヘルスチェック機能の情報が共通定義情報に登録されます。
- jbssetcnfコマンドの詳細については,「13. コマンド」の「jbssetcnf」を参照してください。
- ヘルスチェック定義ファイル(jbshc.conf)を編集する。
監視対象ホストや監視間隔を定義します。ヘルスチェック定義ファイルの詳細については,「14. 定義ファイル」の「ヘルスチェック定義ファイル」を参照してください。
- JP1イベントの転送設定を変更する。
ヘルスチェック機能が発行するJP1イベントを上位の管理サーバに転送するために,転送設定ファイル(forward)に次の条件を追加してください。
転送設定ファイル(forward)の詳細については,「14. 定義ファイル」の「転送設定ファイル」を参照してください。
E.OBJECT_TYPE IN JBSHC
- JP1/BaseのすべてのサービスおよびNNM(SNMPトラップ変換機能を使用している場合)を再起動する。
ヘルスチェック機能が起動し,プロセスの監視を開始します。
ヘルスチェック動作定義ファイルに誤りがあった場合は,その設定行を無効とし,デフォルト値がある場合はデフォルト値で動作します。
(b) ヘルスチェックの設定状況を確認する
ヘルスチェックの設定,および異常検知時のフェールオーバーの有無を確認したい場合は,次のコマンドを実行して共通定義情報を参照してください。
jbsgetcnf出力された共通定義情報から,ヘルスチェック機能のセクションを検索し,設定を確認してください。
jbsgetcnfコマンドの詳細については,「13. コマンド」の「jbsgetcnf」を参照してください。共通定義情報の詳細については,「14. 定義ファイル」の「共通定義設定用ファイル(ヘルスチェック機能)」を参照してください。
(c) ヘルスチェックの設定を変更する
監視対象ホストの追加や監視間隔を変更する場合の手順を次に示します。
- ヘルスチェック定義ファイル(jbshc.conf)を編集する。
ヘルスチェック定義ファイルの詳細については,「14. 定義ファイル」の「ヘルスチェック定義ファイル」を参照してください。
- ヘルスチェック定義ファイル(jbshc.conf)の設定内容を有効にする。
Windowsの場合は,JP1/Base(プロセス管理機能)サービスを再起動します。
UNIXの場合は,jbs_spmd_reloadコマンドを実行します。jbs_spmd_reloadコマンドの詳細については,「13. コマンド」の「jbs_spmd_reload」を参照してください。
設定内容は,リロード後,次の監視タイミングが来た時に有効になります。
リロード時に,ヘルスチェック定義ファイル(jbshc.conf)に誤りがありエラーとなった場合は,その設定行は無効とし,リロード前の設定で動作します。
- リロード時の注意事項
- 他ホストの監視中にエラーを検知している状態でリロードした場合,監視対象ホストの監視状態はリセットされます。このため,次回監視時に監視対象ホストが回復していないときには,再度エラーメッセージやJP1イベントが発行されます。また,すでに回復しているときには,回復メッセージやJP1イベントは発行されません。
(d) ヘルスチェックの設定を無効にする
ヘルスチェックを無効にする手順を次に示します。
- 共通定義設定用ファイル(ヘルスチェック機能)を編集する。
- 1-1 共通定義設定用ファイル(ヘルスチェック機能)のモデルファイルを任意のファイル名でコピーする。
共通定義設定用ファイル(ヘルスチェック機能)の詳細については,「14. 定義ファイル」の「共通定義設定用ファイル(ヘルスチェック機能)」を参照してください。
- 1-2 コピーしたファイルを編集する。
- 次のコマンドを実行する。
jbssetcnf 1-2で編集したファイル名
ヘルスチェックが無効になります。
jbssetcnfコマンドの詳細については,「13. コマンド」の「jbssetcnf」を参照してください。
- JP1/BaseのすべてのサービスおよびNNM(SNMPトラップ変換機能を使用している場合)を再起動する。
(e) 07-10以前のJP1/Baseをクラスタ運用している環境からバージョンアップした場合
07-10以前のJP1/Baseでクラスタシステムを使用している場合,07-11以降のJP1/Baseを上書きインストールしたあとに,論理ホスト環境の設定をアップグレードする必要があります。論理ホスト環境の設定をアップグレードする方法については,「2.2.3(5) 上書きインストールについて」(Windowsの場合),および「2.3.4(5) 上書きインストールについて」(UNIXの場合)を参照してください。
論理ホスト環境の設定のアップグレードを行ったあと,「(a) ヘルスチェック機能を有効にする」で説明している設定を行ってください。
(f) 注意事項
ヘルスチェック機能を使用する場合の注意事項を次に示します。
- プロセスをkillコマンドなどで強制終了した場合,異常終了として検知されません。この場合は,プロセスの応答がない状態として異常を検知(KAVA7014-E)します。ただし,経過時間はkillコマンド実行からの時間ではありません。内部で使用している共有メモリーの更新時刻で判断しているため,プロセスの強制終了後,すぐに異常が検知される場合があります。
- プロセスをkillコマンドなどで強制終了し正常に終了処理ができていない状態で,該当機能のプロセスを再起動した場合,先に強制終了したプロセスの異常検知メッセージが発行されることがあります。
- 拡張起動プロセス定義ファイル(jp1bs_service_0700.conf)で再起動を設定しているプロセスが異常終了した場合,プロセスの再起動を通知するメッセージ(KAVB3605-I,KAVB3616-I)の発行のあとに異常終了を通知するメッセージ(KAVA7017-E)が発行されることがあります。プロセスの状態は,jbs_spmd_statusコマンドで確認してください。
(2) プロセスの異常終了および認証サーバの切り替え発生を検知する
JP1/Baseでは,プロセスが異常終了したり,認証サーバを2台設置した運用で認証サーバが自動で切り替わったりした場合に,エラーメッセージを統合トレースログに出力します。これらのメッセージをJP1イベントとして発行できます。発行されるJP1イベントの詳細については,「15. JP1イベント」を参照してください。
(a) 監視対象プロセス
プロセス管理(jbs_spmd)が管理する次のプロセスの異常終了を検知します。
- jbssessionmgr(認証サーバ)
- jbsroute(構成管理)
- jcocmd(コマンド実行)
- jbsplugind(プラグインサービス)
- jbshcd(ヘルスチェック:自ホスト監視用)
- jbshchostd(ヘルスチェック:他ホスト監視用)
- jbssrvmgr(サービス管理制御)
- jbslcact(ローカルアクション)
- jbscomd(プロセス間通信)
(b) JP1イベントの発行契機
設定を有効にした場合,次に示す契機でJP1イベントが発行されます。
- プロセス管理機能が管理するプロセスの状態
- プロセスの起動時にタイムアウトした場合
- プロセスが異常終了した場合
- 起動時に起動通知がなく,タイムアウトした場合
- 異常終了した管理対象プロセスの再起動が完了した場合※
注※ プロセスの再起動を設定した場合に発行されます。
- 認証サーバの状態(セカンダリー認証サーバを設置した場合)
- 認証サーバへの接続に失敗し,自動で閉塞状態になった場合
- 閉塞状態が自動で解除された場合
- プライマリー認証サーバおよびセカンダリー認証サーバへの接続がともに閉塞状態になった場合
(c) 設定手順
設定手順を次に示します。
- JP1/Baseパラメーター定義ファイル(jp1bs_param_V7.conf)を編集する。
JP1イベントを発行したいパラメーターについて,1(JP1イベントを発行する)を設定します。JP1/Baseパラメーター定義ファイルの詳細については,「14. 定義ファイル」の「JP1/Baseパラメーター定義ファイル」を参照してください。
- jbssetcnfコマンドを実行する。
JP1/Baseパラメーター定義ファイル(jp1bs_param_V7.conf)の設定内容が共通定義情報に反映されます。
jbssetcnfコマンドの詳細については,「13. コマンド」の「jbssetcnf」を参照してください。
- JP1/BaseおよびJP1/Baseを前提とする製品を再起動する。
設定が有効になります。
(3) 異常終了したプロセス管理機能が管理するプロセスを再起動させる
JP1/Baseを起動すると,複数のプロセスが生成されます。07-00以降のJP1/Baseでは,何らかの理由でプロセスが異常終了した場合に,自動でプロセスを再起動できます。
なお,ここで説明する再起動の設定は,クラスタ運用ではないJP1/Baseの再起動を目的としています。クラスタ運用の場合に再起動を行いたい場合は,クラスタソフトの制御によって再起動するようにしてください。
(a) 再起動の対象のプロセス
再起動の対象は,プロセス管理機能(jbs_spmd)が管理する次のプロセスです。
- jbssessionmgr(認証サーバ)
- jbsroute(構成管理)
- jcocmd(コマンド実行)
- jbsplugind(プラグインサービス)
- jbshcd(ヘルスチェック:自ホスト監視用)
- jbshchostd(ヘルスチェック:他ホスト監視用)
- jbssrvmgr(サービス管理制御)
- jbslcact(ローカルアクション)
- jbscomd(プロセス間通信)
(b) 設定手順
設定手順を次に示します。
- 拡張起動プロセス定義ファイル(jp1bs_service_0700.conf)を編集する。
拡張起動プロセス定義ファイルの詳細については,「14. 定義ファイル」の「拡張起動プロセス定義ファイル」を参照してください。
- 設定を有効にする。
JP1/Baseを再起動するか,リロードコマンド(jbs_spmd_reload)を実行すると設定が有効になります。
- ワトソン博士によるエラー通知を抑止する(Windows限定)
エラー発生時に,ワトソン博士のメッセージボックスが表示されると,プロセスの再起動ができないため,表示を抑止する必要があります。
スタートメニューの[ファイル名を指定して実行]で「drwtsn32」を実行します。ワトソン博士のダイアログボックスが表示されるので,[メッセージボックスによる通知]のチェックを外します。
なお,ワトソン博士の設定はシステム全体で共通のため,ここでの設定がシステム全体のプログラムの設定になります。
また,ワトソン博士の設定を有効にするため,コマンドプロンプトで以下のコマンドを実行してください。
ワトソン博士が既定のアプリケーションデバッガとしてインストールされます。
drwtsn32 -i
- Microsoftへのエラー報告を抑止する(Windows限定)
エラー発生時にMicrosoftへのエラー報告ダイアログボックスが表示されると,再起動が有効にならないため,エラー報告を抑止する必要があります。
1. [コントロールパネル]から[システム]をダブルクリックする。
2. [詳細設定]タブの[エラー報告]をクリックする。
3. [エラー報告を無効にする]を選択し,[重大なエラーが発生した場合は通知する]のチェックが外れていることを確認する。
(4) 異常終了したイベントサービスのプロセスを再起動させる(UNIX限定)
08-10以降のUNIX版のJP1/Baseでは,物理ホストのイベントサービスのプロセスが異常終了した場合,自動で再起動できます。この設定は,デフォルトでは無効です。
Windows版のJP1/Baseの場合は,WindowsのService Control Managerでサービスを再起動する設定をしてください。
なお,ここで説明する再起動の設定は,クラスタ運用ではないJP1/Baseの再起動を目的としています。クラスタ運用の場合に再起動を行いたい場合は,クラスタソフトの制御によって再起動するようにしてください。
(a) 再起動の対象のプロセス
再起動の対象のプロセスは,jevservice(イベントサービス)が管理する子プロセスjevservice(イベントサービス)です。
jevservice(イベントサービス)が管理する子プロセスjevservice(イベントサービス)とは,jevstatコマンドで確認できるプロセスIDを親プロセスとして持つjevservice(イベントサービス)プロセスです。
(b) 設定手順
設定手順を次に示します。
- イベントサーバ設定ファイル(conf)にrestartパラメーターを定義する。
- イベントサービスを起動する。
イベントサーバ設定ファイル(conf)の詳細については,「14. 定義ファイル」の「イベントサーバ設定ファイル」を参照してください。
(5) 統合トレース機能(HNTRLib2)の設定
JP1/Baseでは,統合トレース機能(HNTRLib2)を使って,JP1/Baseを前提とする製品を含めた動作処理の流れをトレースしたログファイルを出力しています。このログファイルは,障害が発生したときなどの原因究明に役立ちます。
デフォルトでは,次のように設定されています。
- ログファイルのサイズ:256キロバイト
- ログファイルの数:4
- ログファイルの出力先:
- Windowsの場合
- システムドライブ\Program Files\Hitachi\HNTRLib2\spool\hntr2*.log
- UNIXの場合
- /var/opt/hitachi/HNTRLib2/spool/hntr2*.log
通常はデフォルト値を変更する必要はありませんが,hntr2utilコマンド,hntr2confコマンド,またはhntr2getconfコマンドを実行するとデフォルト値を参照し,変更できます。コマンドの詳細については,「13. コマンド」の「hntr2util(Windows限定)」,「hntr2util(UNIX限定)」,「hntr2conf」,「hntr2getconf」を参照してください。
- 注意
- バージョン7から,統合トレース機能に自動アンインストール機能が付き,名称がHNTRLibからHNTRLib2に変更になりました。統合トレース関連のコマンドの名称や,ログファイルの出力先もバージョン6と異なるため,バージョン6以前をご使用されていた方はご注意ください。
(6) 障害発生時の資料採取の準備(Windows限定)
トラブル発生時に資料を採取するためのツールを準備します。このツールは,トラブルの解決に必要な情報を一括して採取します。
なお,資料採取ツールで採取できる資料には,メモリーダンプ,クラッシュダンプがあります。これらのダンプは,出力されるようにあらかじめ次の設定をしてください。出力設定すると,資料採取ツールでこれらのダンプも採取できます。
メモリーダンプの出力設定の手順を次に示します。
- [コントロールパネル]から[システム]をダブルクリックする。
- [詳細設定]タブの[起動と回復]の[設定]をクリックする。
- [デバッグ情報の書き込み]で,[完全メモリダンプ]を選択し,出力先のファイルを指定する。
- 注意事項
- メモリーダンプのサイズは,実メモリーのサイズによって異なります。搭載している物理メモリーが大きいと,メモリーダンプのサイズも大きくなります。メモリーダンプを採取できるだけのディスク領域を確保してください。詳細については,Windowsのヘルプの「STOPエラー」の項目を参照してください。
クラッシュダンプの出力設定手順を次に示します。
- スタートメニューから[ファイル名を指定して実行]を選択する。
- テキストボックスに「drwtsn32」と入力し,[OK]ボタンをクリックする。
- ワトソン博士のダイアログボックスが開きます。
- [クラッシュ ダンプ ファイルの作成]にチェックを入れ,クラッシュ ダンプテキストボックスに出力先のファイルを指定する。
- [OK]ボタンをクリックする。
- 注意事項
- クラッシュダンプに出力される情報はJP1だけでなく,ほかのアプリケーションプログラムのトラブル情報も出力されます。また,クラッシュダンプが出力されると,その分ディスク容量が圧迫されます。クラッシュダンプが出力されるように設定する場合は,十分なディスク領域を確保しておいてください。
All Rights Reserved. Copyright (C) 2009, 2011, Hitachi, Ltd.