[AIX Solaris HP-UX Linux Windows][z/OS]

ヘルス・ポリシーのカスタム・アクションの作成

ヘルス条件に違反したときに使用できるカスタム修正タスクを定義するには、 カスタム・アクションを使用します。カスタム・アクション を使用して wasadmin スクリプトを起動することもできます。

始める前に

ヘルス条件に違反したときに実行する Java™ または非 Java の 実行可能ファイルを作成します。以下の例のように、実行可能ファイル内の環境変数を使用すると、ヘルス・アクションの影響を受けるセル、ノード、およびサーバーを表示できます。
#!/bin/sh
echo "The sick server is "
echo $server
echo " which is on node "
echo $node
echo " which is a part of cell "
echo $cell
[z/OS]カスタム・アクション・フィーチャーを使用可能にするには、以下のようにします。
  1. PROCLIB 連結内のデータ・セットに WebSphere 非同期管理プロシージャーを追加します。この手順のジョブ制御言語 (JCL) の例を以下に示します。
    //*--------------------------------------------
    //SHELL2 EXEC PGM=BPXBATCH,REGION=0M,
    // PARM='SH &CMD. &OPT.' 
    //STDERR DD SYSOUT=* 
    //STDOUT DD SYSOUT=* 
    //*-------------------------------------------- 
  2. WebSphere 非同期管理プロシージャーのデフォルト名は BBO8ADM です。別の名前が必要な場合は、プロシージャー名を変更して、新しいプロシージャー名を指すように WebSphere 環境変数 WAS_SERVER_ONLY_shell_command_proc_name を更新します。

    この管理コンソールでこの変数を更新するには、「環境」 > WebSphere 変数 > <YOUR_NODE> をクリックします。WAS_SERVER_ONLY_shell_command_proc_name 変数を選択します。 値を新規プロシージャー名に変更し、「OK」 をクリックします。構成を保存して同期化します。カスタム・アクション・フィーチャーを使用するサーバーを再始動して、新規プロシージャー名の使用を開始します。

  3. ノード・エージェントの開始済みタスク ID のみがコマンドを発行できるように、WebSphere 非同期管理プロシージャーの start コマンドを構成します。以下の RACF コマンドを使用します。
    RDEFINE OPERCMDS MVS.START.STC.<ADMIN_PROC_NAME>.**UACC(NONE)
    PERMIT MVS.START.STC.<ADMIN_PROC_NAME>.** CLASS(OPERCMDS) ID(<NODE_AGENT_ID>)ACCESS(UPDATE)
    SETR RACLIST(OPERCMDS)REFRESH
  4. WebSphere 非同期管理プロシージャーと関連付けられているユーザー ID を定義し、RACF コマンドを使用してプロシージャーにユーザーを関連付けます。以下に例を示します。
    ADDUSER WSADMSH DFLTGRP(<CELL_ADMIN_GROUP>)OMVS(UID(2504) HOME
    (/var/WebSphere/home/<CELL_ADMIN_GROUP> PROGRAM(/bin/sh)) NAME('WAS Asynch Admin
    Task') NOPASSWORD NOOIDCARD  
    RDEFINE STARTED <ADMIN_PROC_NAME>.*STDATA(USER(WSADMSH)GROUP
    (<CELL_ADMIN_GROUP>)TRACE(YES)) 
    SETROPTS RACLIST(STARTED) GENERIC(STARTED) REFRESH 
    注: 前の例では、WebSphere 非同期管理タスク・ユーザー ID の名前は WSADMSH です。この名前は必要に応じてカスタマイズできます。WebSphere 非同期管理タスク・ユーザー ID の DFLTGRP は、セルの WebSphere 管理グループでなければなりません。

    システム・コンソールがログインを必要とするように構成されていない場合は、RACF コマンドを使用していても、コンソールにアクセスできるユーザーは、誰でも WebSphere 非同期管理プロシージャーを開始することができます。ログインを要求するシステム・コンソールの保護について詳しくは、MCS および SMCS コンソールの制御 を参照してください。

このタスクについて

デフォルトでは、ヘルス条件に違反したときに実行するアクションとして、 サーバーの再始動、スレッド・ダンプの取得、またはヒープ・ダンプの取得を 定義できます。ヘルス条件に違反したときに実行するアクションをより具体的にする必要がある場合は、 カスタム・アクション を作成します。カスタム・アクションは、 Java または非 Java のプロセス定義からなり、デプロイメント・マネージャー、 ヘルス条件に違反したサーバーをホストしているノード、 ヘルス管理コントローラーが実行されているノード、または指定したノードで 実行できます。

ヘルス・ポリシーを作成する前に、カスタム・アクションを 作成します。ヘルス・ポリシーを定義する場合は、カスタム・アクションを、 ヘルス条件に違反したときに実行するアクション計画の一部として選択します。 また、ヘルス・ポリシー作成ウィザードでアクション計画を作成するときに カスタム・アクションを定義することもできます。

1 つのヘルス・ポリシーに複数のカスタム・アクションがある場合、カスタム・アクションを更新すると、ヘルス・コントローラー・ランタイムが、管理コンソール構成と同期しなくなる可能性があります。複数のカスタム・アクションを含むポリシーのカスタム・アクションを追加、削除、または変更する場合は、変更を保存後、ヘルス・コントローラーを開始して、停止してください。

wsadmin スクリプト を起動するカスタム・アクションを使用する場合は、wsadmin の起動を含んでいるカスタム・スクリプトをターゲット・エンドポイント上に作成してください。 例えば、Python スクリプトを使用して目的を達成する、次のようなカスタム・スクリプト test.sh を 作成できます。
test.sh:
#!/bin/sh
/opt/IBM/WAS/bin/wsadmin.sh -lang jython -f /opt/IBM/WAS/wsadmin_test.py param1 param2 param3

wsadmin_test.py:
for arg in sys.argv:
#do something with args
管理コンソールで、「動作ポリシー」 > 「カスタム・アクション」 > 「新規」と クリックします。アクション・タイプを選択し、以下のカスタム・アクション・プロパティーを定義します。
  • 名前:
  • 実行可能ファイル:
  • 実行可能引数:
  • オペレーティング・システム:
  • 作業ディレクトリー:

手順

  1. Java アクション・タイプまたは非 Java アクション・タイプを選択します。 管理コンソールで、「動作ポリシー」 > 「カスタム・アクション」 > 「新規」とクリックします。作成するアクションのタイプを選択します。
  2. カスタム・アクション・プロパティーを定義します。
    非 Java および Java の実行可能ファイルを実行する ヘルス・アクションの場合。
    • アクションの名前、完全修飾パスと実行可能ファイル名、および実行可能ファイルに受け渡す引数を指定します。
    • 必要な場合、ユーザー名およびパスワードに変数を指定し、実行可能ファイルの実行時にユーザー名およびパスワードとして実際に渡す値を指定します。
    • 実行可能ファイルが実行できるオペレーティング・システムを指定します。
    • 実行可能ファイルを実行する作業ディレクトリーの完全修飾パスを指定します。
    Java 実行可能ファイルを実行するヘルス・アクションの場合、以下のプロパティーも指定する必要があります。
    • Java 実行可能ディレクトリーの場所を指定します。
    • ターゲットのタイプ (Java クラスまたは実行可能な Java アーカイブ (JAR) ファイル) を指定します。
    • プロセス ID (PID) ファイル名を保管する環境変数を指定します。 PID ファイル名は WebSphere® 変数に保管されています。 後のステップで この変数を作成できるように、変数の名前を覚えておきます。
    例えば、 ログ収集用の logCollector.sh という名前の実行可能ファイル がある場合、カスタム・アクションについて以下の値を入力します。
    • 名前: LogCollect
    • 実行可能ファイル: /opt/mws/bin/logCollector.sh
    • 実行可能引数: -arg1 excludeCores -arg2 compress
    • オペレーティング・システム: UNIX
    • 作業ディレクトリー: /opt/mws/bin/
  3. カスタム・アクションを保存します。
  4. ヘルス・アクションが Java 実行可能ファイルを実行している場合、 PID ファイル名環境変数を作成してください。 PID ファイル名は、サーバー操作を実行する PID ファイルの場所を 指定します。PID ファイル名変数を定義するには、 「サーバー」 > 「すべてのサーバー」 > middleware_server > 「変数」 > 「新規」とクリックするか、または、「環境」 > 「WebSphere 変数」 > 「新規」とクリックします。ヘルス・アクション・パネルで入力した変数と同じ名前を入力し、値には PID ファイルの完全修飾ロケーション または可変修飾ロケーションを入力します。

タスクの結果

ヘルス・ポリシーのアクション計画に追加できるカスタム・アクションが 作成されました。

次のタスク

ヘルス・ポリシーを作成します。管理コンソールで、「動作ポリシー」 > 「ヘルス・ポリシー」 > 「新規」とクリックします。

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twve_odhealthaction
ファイル名:twve_odhealthaction.html