![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
manageODR.py スクリプト
manageODR.py スクリプトを使用して、オンデマンド・ルーター (ODR) のクラスターを作成し、ルーティング・ルールとカスタム・ロギングを管理することができます。
ロケーション
manageODR.py スクリプト は、app_server_root/bin ディレクトリーにあります。 このスクリプトを実行する前に、環境変数 WAS_HOME が WebSphere® のインストール・ディレクトリーをポイントするように構成されているようにしてください。
オペレーション
manageODR.py スクリプトを使用して、次の操作を行うことができます。
- convertToCluster <node:odr> <cluster>: ノード node 上の名前 odr の既存の ODR は <cluster> という名前の ODR クラスターに変換されます。
- createDynamicCluster <cluster> <nodeGroup>: <cluster> という名前の ODR 動的クラスターをノード・グループ <nodeGroup> 内のノードに作成します。
- addToCluster <node:odr> <cluster>: ノード node に名前 odr の新規 ODR を作成し、ODR クラスター cluster に追加します。
- insertMultiClusterRoutingRule <odrServerOrCluster> <protocolFamily> <ruleNumber> <condition> <multiClusterAction> <multiClusterSpecification>: 同じセル内または異なるセル内にあるクラスター間のロード・バランシングまたはフェイルオーバーのアクションが含まれる ODR ルーティング・ルールを挿入します。
- insertRedirectRoutingRule <odrServerOrCluster> <ruleNumber> <condition> <redirectURL>: クライアントにリダイレクトを返すアクションが含まれる ODR ルーティング・ルールを挿入します。これは HTTP プロトコル・ファミリーでのみサポートされています。
- insertRejectRoutingRule <odrServerOrCluster> <protocolFamily> <ruleNumber> <condition> <errorCode>: 特定のエラー・コードをクライアントに返すアクションが含まれる ODR ルーティング・ルール挿入します。
- removeRoutingRule <odrServerOrCluster> <protocolFamily> <ruleNumber> : プロトコル・ファミリー (例えば HTTP プロトコル・ファミリー) によって指定された ODR ルーティング・ルールおよびルール番号を削除します。
- listRoutingRules <odrServerOrCluster> <protocolFamily>: 指定されたプロトコル・ファミリー (例えば HTTP プロトコル・ファミリー) の ODR ルーティング・ルールをリストします。
- insertLocalContentRoutingRule <odrServerOrCluster> <ruleNumber> <condition> <localPath>: ODR のローカル・ファイル・システムからの静的 HTML コンテンツを処理するアクションが含まれる ODR ルーティング・ルーティングを挿入します。
- insertCustomLogRule <odrServerOrCluster> <ruleNumber> <condition> <logFileFormat>: カスタム・ログ・ルールを位置 <ruleNumber> のリストに挿入します。
- RemoveCustomLogRule <odrServerOrCluster> <ruleNumber>: カスタム・ログ・ルール番号 <ruleNumber> を除去します。
- listCustomLogRules <odrServerOrCluster>: ODR または ODR クラスターに関連付けられたカスタム・ログ・ルールをリストします。引数は次のとおりです。
- <node:odr> はノードおよび ODR の名前です (例えば、mynode:myodr)。
- <cluster> はオンデマンド・ルーター (ODR) クラスターの名前です。
- <odrServerOrCluster> は <node:odr> または <cluster> のいずれかです。
- <protocolFamily> は「HTTP」または「SIP」のいずれかです。
- <ruleNumber> はルールの番号 (1 からルールの総数まで) です。
- <condition> は、関連するアクションをトリガーするために true と評価されなければならない条件 (つまりブール式) です。
- <multiClusterAction> は「Failover」(フェイルオーバー)、「WLOR」(重み付き最小未解決要求)、または「WRR」(重み付きラウンドロビン) の 1 つです。
- <multiClusterSpecification> は、次のいずれかの形式での複数のクラスターの指定です。
- cluster = <cellname>/<clustername>: 特定のクラスターを指定する場合。
- server = <cellname>/<nodename>/<servername>: 特定のサーバーを指定する場合。
- module= <cellName>/<applicationName>/<editionName>/<moduleName>: このモジュールがデプロイされるすべてのサーバーを指定する場合。
- <redirectUR> は要求のリダイレクト先の URL です。
- <errorCode> は、拒否ルーティング・ルールの場合に返すエラー戻りコードです。
- <logFileFormat> は、ログ・エントリーのファイル名と形式を示す指定です。
- <localPath> は、提供するローカル静的コンテンツが入っているディレクトリーです。
以下の例は、node 1 における odr という名前の HTTP ODR の作成方法を示しています。
wsadmin.sh -f createodr.jacl node1 odr odr
以下の例は、ノード node1 上の odr という名前の ODR を ODRCluster という名前の ODR クラスターに変換する作成方法を示しています。
wsadmin.sh -f manageODR.py -lang jython convertToCluster node1:odr ODRCluster以下の例は、カスタム・ログ・ルールを追加して、サービス時間が 2 秒より長いすべての要求を slow.log カスタム・ログに入れ、要求が送信された先のアプリケーション・サーバーとサービス時間を含むようにする方法を示しています。
wsadmin.sh -f manageODR.py -lang jython insertCustomLogRule myNode02:odr1 1 "service.time > 2000" "slow.log %t %r %Z %T"以下の例は、カスタム・ログ・ルールを追加して、503 応答をすべて 503.log に入れる方法を示しています。ルールは位置 2 に追加されます。位置 2 に既存のルールがある場合は、新規ルールは既存のルールの前に挿入されます。
wsadmin.sh -f manageODR.py -lang jython insertCustomLogRule myNode02:odr1 2 "response.code = 503" "503.log %t %r %s"以下の例は、カスタム・ログ・ルールを追加して、クライアントへの応答を書き込むときに発生する 可能性のあるエラーを response.write.error.log に入れる 方法を示しています。ルールは位置 1 に追加されます。
wsadmin.sh -f manageODR.py -lang jython insertCustomLogRule node1:odr 1 "response.write.error" "response.write.error.log %t %r %s"