6.5.5 監査ログ収集対象サーバでリソースを作成する
共有ディスク上に出力される監査ログを収集する場合は,実行系サーバでリソースを作成します。共有ディスクを実行系に切り替えてから作業を実施してください。
次に,作成方法についてOSごとに説明します。
- 〈この項の構成〉
(1) Windowsの場合
実行系サーバのクラスタソフトで,フェールオーバーさせるリソースを作成します。作成するリソースを次に示します。
-
JP1/Base Event 監査ログ専用イベントサーバ名サービスのリソース
論理ホスト用の監査ログ専用イベントサービスに対応するリソースです。
-
JP1/NETM/Audit LogTrap 論理ホスト名サービスのリソース
共有ディスク上の監査ログを収集するためのログファイルトラップ起動/停止デーモンに対応するリソースです。
次に,各リソースの登録内容を説明します。リソースの作成方法の詳細については,各クラスタソフトのマニュアルを参照してください。
(a) JP1/Base Event 監査ログ専用イベントサーバ名サービスのリソース
JP1/Base Event 監査ログ専用イベントサーバ名サービスのリソースの登録内容を次の表に示します。
項番 |
登録リソース |
設定項目 |
設定内容 |
---|---|---|---|
1 |
JP1/Base Event 監査ログ専用イベントサーバ名 |
名前 |
任意の名称を指定します。 |
2 |
リソースの種類 |
「汎用サービス」を設定します。 |
|
3 |
グループ |
収集対象とする製品と同じグループへ登録します。 |
|
4 |
実行可能な所有者 |
実行系および待機系の2台のノードを設定します。 |
|
5 |
依存関係 |
次のリソースを依存関係として登録します。
|
|
6 |
汎用サービスパラメーター |
次の値を設定します。
|
|
7 |
レジストリの複製 |
指定しません。 |
(b) JP1/NETM/Audit LogTrap 論理ホスト名サービスのリソース
JP1/NETM/Audit LogTrap 論理ホスト名サービスのリソースの登録内容を次の表に示します。
項番 |
登録リソース |
設定項目 |
設定内容 |
---|---|---|---|
1 |
JP1/NETM/Audit LogTrap 論理ホスト名 |
名前 |
任意の名称を指定します。 |
2 |
リソースの種類 |
「汎用サービス」を設定します。 |
|
3 |
グループ |
収集対象とする製品と同じグループへ登録します。 |
|
4 |
実行可能な所有者 |
実行系および待機系の2台のノードを設定します。 |
|
5 |
依存関係※ |
次のリソースを依存関係として登録します。
|
|
6 |
汎用サービスパラメーター |
次の値を設定します。
|
|
7 |
レジストリの複製 |
指定しません。 |
(2) UNIXの場合
実行系サーバで,フェールオーバーさせるコマンドを,クラスタソフトに登録します。クラスタソフトに登録するコマンドと,その機能を次の表に示します。
項番 |
登録するコマンド |
機能 |
説明 |
---|---|---|---|
1 |
admhastart 論理ホスト名※ |
起動 |
次の二つを起動します。
|
2 |
admhastop 論理ホスト名※ |
停止 |
次の二つを停止します。
|
- 注意事項
-
クラスタソフトにコマンドを登録する際には,次のことに注意してください。
-
admhastartコマンドを登録する場合は,JP1/Baseの論理ホスト環境の起動,admhastartコマンドの実行,共有ディスク上に監査ログを出力する収集対象製品の起動,の順になるように設定してください。
-
admhastopコマンドを登録する場合は,共有ディスク上に監査ログを出力する収集対象製品の停止,admhastopコマンドの実行,JP1/Baseの論理ホスト環境の停止,の順になるように設定してください。
-
次に,コマンド登録方法の概要をクラスタソフトごとに説明します。登録方法の詳細については,各クラスタソフトのマニュアルを参照してください。
(a) HP Serviceguardの場合
HP ServiceguardではJP1/Audit Management - Managerの定義を,共有ディスク上に監査ログを出力する収集対象製品,およびJP1/Baseと同じパッケージに登録します。また,「プロセスを終了させないスクリプト」を作成して,パッケージ制御スクリプトのSERVICE_CMDに指定する監視コマンドに登録します。
次に,スクリプトの作成,パッケージ構成ファイルの編集,およびパッケージ制御スクリプトの編集について説明します。
■ スクリプトの作成
ここでは「プロセスを終了させないスクリプト」を作成します。スクリプトは,実行系および待機系のそれぞれで作成し,実行系と待機系で同じパスに配置してください。
スクリプトの作成例を次に示します。ここではファイル名を「nop.sh」と仮定します。
#!/bin/sh INTERVAL_TIME=2147483647 while true; do sleep ${INTERVAL_TIME} done
■ パッケージ構成ファイルの編集
パッケージ構成ファイルにサービス名などを設定します。パッケージ構成ファイルは実行系で編集してから,待機系にコピーしてください。編集の際に設定する項目を,次の表に示します。
項番 |
設定項目 |
設定内容 |
---|---|---|
1 |
SERVICE_NAME |
サービス名を指定します。クラスタ内で一意となる名称を指定してください。 |
2 |
SERVICE_FAIL_FAST_ENABLED |
NOを指定します。 |
3 |
SERVICE_HALT_TIMEOUT |
停止のタイムアウト時間(単位:秒)を指定します。 |
パッケージ構成ファイルの設定例を次に示します。
SERVICE_NAME jp1netmaudit_1 SERVICE_FAIL_FAST_ENABLED NO SERVICE_HALT_TIMEOUT 300
■ パッケージ制御スクリプトの編集
パッケージ制御スクリプトに,サービス名や作成したスクリプトなどを設定します。パッケージ制御スクリプトは実行系で編集してから,待機系にコピーしてください。編集の際に設定する項目を,次に示します。
-
SERVICE_NAMEの追加
パッケージ構成ファイルのSERVICE_NAMEの値を指定します。
-
SERVICE_CMDの追加
作成したスクリプト(nop.sh)をフルパスで指定します。
-
起動処理の追加
起動コマンドの設定個所で,JP1/Baseが起動したあとでadmhastartコマンドを実行するように設定します。
-
停止処理の追加
停止コマンドの設定個所で,JP1/Baseが停止するより前にadmhastopコマンドを実行するように設定します。
パッケージ制御スクリプトの設定例を次に示します。
・ ・ SERVICE_NAME[0]="jp1base_1" SERVICE_CMD[0]="/opt/jp1/hatool/bin/jp1_base.sh -m -h hpipfpkg1 -l" SERVICE_RESTART[0]="" SERVICE_NAME[1]="jp1netmaudit_1" SERVICE_CMD[1]="/opt/jp1netmaudit/manager/bin/nop.sh" SERVICE_RESTART[1]="" ・ ・ function customer_defined_run_cmds { /opt/jp1/hatool/bin/jp1_base.sh -s -h 論理ホスト名 -l /opt/jp1netmaudit/manager/bin/admhastart 論理ホスト名 test_return 51 } function customer_defined_halt_cmds { /opt/jp1netmaudit/manager/bin/admhastop 論理ホスト名 /opt/jp1/hatool/bin/jp1_base.sh -t -h 論理ホスト名 -l test_return 52 } ・ ・
- 注意事項
-
SERVICE_NAME,SERVICE_CMD,およびSERVICE_RESTARTに指定する配列の添え字には,0から始まる連続した数字を指定してください。重複した数字は指定しないでください。
(b) PowerHAの場合
PowerHAでは,JP1/Audit Management - Manager用のアプリケーション・サーバーを作成して,リソース・グループへ登録します。ただし,アプリケーション・サーバー作成時に指定する始動スクリプト,および停止スクリプトには引数の指定ができません。そこで,admhastartコマンドおよびadmhastopコマンドを実行するスクリプトを作成し,これをアプリケーション・サーバーの始動スクリプトおよび停止スクリプトとして登録します。
次に,スクリプトの作成,アプリケーション・サーバーの設定,リソース・グループへの登録,および設定の同期化について説明します。
■ スクリプトの作成
ここでは,admhastartコマンドおよびadmhastopコマンドを実行するスクリプトを作成します。スクリプトは,実行系および待機系のそれぞれで作成し,実行系と待機系で同じパスに配置してください。
スクリプトの作成例を次に示します。ここでは始動スクリプトを「auditstart.sh」,停止スクリプトを「auditstop.sh」と仮定します。
-
始動スクリプト(auditstart.sh)の作成例:
#!/bin/sh LOGICAL_HOST_NAME=論理ホスト名 if [ -x /opt/jp1netmaudit/manager/bin/admhastart ]; then /opt/jp1netmaudit/manager/bin/admhastart ${LOGICAL_HOST_NAME} RET=$? else RET=1 fi exit ${RET}
-
停止スクリプト(auditstop.sh)の作成例:
#!/bin/sh LOGICAL_HOST_NAME=論理ホスト名 if [ -x /opt/jp1netmaudit/manager/bin/admhastop ]; then /opt/jp1netmaudit/manager/bin/admhastop ${LOGICAL_HOST_NAME} RET=$? else RET=1 fi exit ${RET}
■ アプリケーション・サーバーの設定
JP1/Audit Management - Manager用のアプリケーション・サーバーを作成します。作成の際に設定する項目を,次の表に示します。
項番 |
設定項目 |
設定内容 |
---|---|---|
1 |
サーバー名 |
任意の名称を指定します。 |
2 |
始動スクリプト |
作成した始動スクリプト(auditstart.sh)をフルパスで指定します。 |
3 |
停止スクリプト |
作成した停止スクリプト(auditstop.sh)をフルパスで指定します。 |
4 |
アプリケーション・モニター名 |
何も指定しません。 |
■ リソース・グループへの登録
作成したアプリケーション・サーバーを,リソース・グループに登録します。なお,登録の際は,共有ディスク上に監査ログを出力する収集対象製品,およびJP1/Baseと同じグループを指定してください。
■ 設定の同期化
リソース・グループへの登録までが完了したら,クラスタ設定を同期化してください。
(c) VERITAS Cluster Serverの場合
VERITAS Cluster Serverでは,Applicationエージェントを使用してコマンドを登録します。Applicationエージェントでは,起動コマンドと停止コマンド以外に,強制停止コマンドと監視コマンドの設定が必要です。そこで,それぞれの処理を実行するスクリプトを作成して,リソース定義に登録します。
次に,スクリプトの作成,およびリソースの定義について説明します。
■ スクリプトの作成
ここでは,起動,停止,強制停止,および監視の各処理を実行するスクリプトを作成します。スクリプトは,実行系および待機系のそれぞれで作成し,実行系と待機系で同じパスに配置してください。
各スクリプトで処理する内容を,次に示します。
-
起動
admhastartコマンドを実行します。また,開始に成功した場合はオンラインを示す一時ファイルを作成します。
-
停止
admhastopコマンドを実行します。また,停止に成功した場合は起動時に作成した一時ファイルを削除します。
-
強制停止
起動時に作成した一時ファイルが存在するかどうかを確認し,存在する場合は削除します。
-
監視
起動時に作成した一時ファイルが存在するかどうかを監視します。存在する場合は戻り値として「110」を,存在しない場合は戻り値として「100」を返します。
スクリプトの作成例を次に示します。ここでは,上記四つの処理を実行するスクリプトを「admhactrl.sh」と仮定します。
#!/bin/sh # Syntax: admhactrl logical-host-name {-s|-t|-c|-m} # Flags : -s : start # -t : terminate # -c : clear # -m : monitor # StartProgram if [ "$2" = "-s" ]; then /opt/jp1netmaudit/manager/bin/admhastart $1 RET=$? case ${RET} in 0|7|8) touch /opt/jp1netmaudit/manager/bin/.$1 > /dev/null 2>&1 ;; *) ;; esac else # StopProgram if [ "$2" = "-t" ]; then /opt/jp1netmaudit/manager/bin/admhastop $1 RET=$? if [ $RET -eq 0 ]; then rm -f /opt/jp1netmaudit/manager/bin/.$1 > /dev/null 2>&1 fi else # CleanProgram if [ "$2" = "-c" ]; then if [ -f /opt/jp1netmaudit/manager/bin/.$1 ]; then rm -f /opt/jp1netmaudit/manager/bin/.$1 > /dev/null 2>&1 fi RET=0 else # MonitorProgram if [ "$2" = "-m" ]; then #ファイルが存在する場合は開始状態とする if [ -f /opt/jp1netmaudit/manager/bin/.$1 ]; then RET=110 else RET=100 fi else RET=1 fi fi fi fi exit $RET
■ リソースの定義
クラスタ構成の設定ファイル(/etc/VRTSvcs/conf/config/main.cf)を編集して,リソース定義を追加します。起動,停止,強制停止,および監視の各コマンドに,作成したスクリプトを指定します。なお,リソースは,共有ディスク上に監査ログを出力する収集対象製品,およびJP1/Baseと同じグループに登録してください。
クラスタ構成の設定ファイルの定義例を次に示します。
Application jp1netmaudit_1 ( StartProgram = "/opt/jp1netmaudit/manager/bin/admhactrl.sh 論理ホスト名 -s" StopProgram = "/opt/jp1netmaudit/manager/bin/admhactrl.sh 論理ホスト名 -t" CleanProgram = "/opt/jp1netmaudit/manager/bin/admhactrl.sh 論理ホスト名 -c" MonitorProgram = "/opt/jp1netmaudit/manager/bin/admhactrl.sh 論理ホスト名 -m" Critical = 0 )
また,JP1/Baseのリソースが起動したあとにJP1/Audit Management - Managerのリソースが起動するように,依存関係を設定してください。例えば,JP1/Baseのリソース名が「jp1base_1」の場合は,次のように設定します。
jp1netmaudit_1 requires jp1base_1
(d) HAモニタの場合
HAモニタではadmhastartコマンドおよびadmhastopコマンドを実行するスクリプトを作成して,そのスクリプトをservers(サーバ対応定義ファイル)に登録します。
次に,スクリプトの作成,およびservers(サーバ対応定義ファイル)の編集について説明します。
■ スクリプトの作成
ここでは,admhastartコマンドおよびadmhastopコマンドを実行するスクリプトを作成します。スクリプトは,実行系および待機系のそれぞれで作成し,実行系と待機系で同じパスに配置してください。
スクリプトの作成例を次に示します。ここでは始動スクリプトを「auditstart.sh」,停止スクリプトを「auditstop.sh」と仮定します。
-
始動スクリプト(auditstart.sh)の作成例:
#!/bin/sh LOGICAL_HOST_NAME=論理ホスト名 if [ -x /opt/jp1netmaudit/manager/bin/admhastart ]; then /opt/jp1netmaudit/manager/bin/admhastart ${LOGICAL_HOST_NAME} RET=$? case ${RET} in 0|7|8) RET=0 ;; *) ;; esac else RET=1 fi exit ${RET}
-
停止スクリプト(auditstop.sh)の作成例:
#!/bin/sh LOGICAL_HOST_NAME=論理ホスト名 if [ -x /opt/jp1netmaudit/manager/bin/admhastop ]; then /opt/jp1netmaudit/manager/bin/admhastop ${LOGICAL_HOST_NAME} RET=$? else RET=1 fi exit ${RET}
■ servers(サーバ対応定義ファイル)の編集
serversファイルにJP1/Audit Management - Managerのサーバ定義を追加します。実行系および待機系のそれぞれで編集してください。
- 実行系のservers
-
groupには,共有ディスク上に監査ログを出力する収集対象製品,およびJP1/Baseと同じグループを指定します。また,parentにはJP1/Baseのサーバ識別名を指定します。
server name /opt/jp1netmaudit/manager/bin/auditstart.sh , alias audit1 , acttype monitor , termcommand "/opt/jp1netmaudit/manager/bin/auditstop.sh", initial online , group group1 , parent server1 , servexec_retry 0 , waitserv_exec yes , retry_stable 300 ;
- 待機系のservers
-
実行系サーバと同じ内容を設定します。ただし,次に示す項目「initial」については,待機系サーバなので「standby」を設定してください。
・ ・ ・ ・ initial standby , ・ ・ ・ ・