IBM Support

WAS V6.1.0.35、V6.1.0.37、V7.0.0.15 でメモリー間複製を使用している場合の問題(WAS-11-029)

Troubleshooting


Problem

以下の条件が両方とも当てはまる場合は、セッション管理が正常に行われないため、必ずFixPackを適用してください。 ・WAS V6.1.0.35、WAS V6.1.0.37、WAS V7.0.0.15 のいずれかを使用している ・メモリー間複製を使用してセッションパーシスタンスを実装している

Symptom

-

Resolving The Problem

更新ログ

(2011/08/23 12:11) 文言修正、関連情報にFlashのリンクを追加


【対象環境】
下記条件に全てあてはまる環境では、セッション管理が正常に行われないことがあります。

対象OS:
 AIX, Linux, Solaris, Windows

対象WASバージョン:
 WAS V6.1.0.35、WAS V6.1.0.37 (FP35より前のFixレベルは対象外です)
 WAS V7.0.0.15 (FP15より前のFixレベルは対象外です)

対象構成:
 メモリー間複製を使用してセッションパーシスタンスを実装している

【解決方法】
以下のいずれかを適用してください。
FixPackはコンポーネント毎に提供されているため、プラグインのFixPackのみを適用することも可能です。
WAS V6.1.0.39 のWeb server plug-ins
WAS V7.0.0.17 のWeb server plug-ins

【詳細】

1.メモリー間複製の場合のセッション・アフィニティーとフェイル・オーバー
WASでは、セッション管理(セッション・アフィニティー)を実現するために、JSESSIONIDという名前のCookieを使用してセッションIDをやり取りしています。デフォルトのJSESSIONIDはCacheID:SessionID:CloneIDで構成され、プラグインはCloneIDの値から、リクエスト割り振り先のアプリケーション・サーバーを決定します。
しかし、メモリ間複製の場合は、CloneIDのかわりにPartitionIDが使用され、以下のようにセッション管理が実現されます。

[メモリ間複製のセッション管理の仕組み]
(1) アプリケーション・サーバーは、JSESSIONIDにも割り振り先のアプリケーション・サーバーの目印としてCasheIDとPartitionIDを含める。また、自身のCloneIDとPartitionIDのマップ情報をHTTPレスポンスに$WSPTという特殊ヘッダー含めてプラグインに伝達し、プラグイン上でPartitionTableとして管理する。
(2) 同じクライアントから再度リクエストが来た場合、プラグインは、クライアントから送られたPartitionIDと、上記(1)のPartitionTableを参照して送信先アプリケーション・サーバーを決定する。その結果、セッション・アフィニティーが実現される。
(3) 何らかの理由で、上記(2)で決定した送信先アプリケーション・サーバーへリクエストが転送できない場合、プラグインは、リクエストに$WSFO内部ヘッダーを付けて別のアプリケーション・サーバーへ転送する。
(4) アプリケーション・サーバーは、$WSFO内部ヘッダーが付けられたリクエストを受け取ると、自身のサーバー上にあるセッション情報を破棄し、メモリ間複製相手のアプリケーション・サーバーからセッション情報を取得して利用する。

WAS-11-029_Fig1.JPG WAS-11-029_Fig1.JPG

2.今回の不具合について
WAS V6.1.0.35、V6.1.0.37、V7.0.0.15には、上記[メモリ間複製のセッション管理の仕組み]の(2)のステップ(PartitionTable参照を行うロジック)が欠落するという問題があります。
PartitionTable参照を行うロジックが無いと、アフィニティーが実現されず、全ての要求に$WSFOヘッダーが追加されてラウンドロビン(またはランダム)でディスパッチされしまいます。
アプリケーション・サーバーは、毎回$WSFOヘッダーつきの要求を処理するために、自分の保持するセッション情報を破棄し、メモリ間複製の相手から情報をコピーするか、相手が存在しない場合は新規のリクエストとして認識します。従って、リクエストのフェイルオーバーのタイミングによっては、セッションが保持されなくなってしまいます。
この問題はPM30968で修正され、WAS V6.1 FP39、V7.0 FP17に含まれています。


【関連情報】
IBM PM30968; Parition Table affinity is not maintained by plugin under certain condi ...
Flash(Alert): Affinity may not be maintained by web server plug-in after installing Fix Pack 35 (V6.1.0.35) or Fix Pack 37 (V6.1.0.37) for V6.1 plug-in or Fix Pack 15 (V7.0.0.15) for V7.0 plug-in

【お問合せ先】
技術的な内容に関して、サービス契約のあるお客様はIBMサービス・ラインにお問い合わせください。
IBMサービス・ライン開設のご案内


以上

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Not Applicable","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"7.0.0.15;6.1.0.37;6.1.0.35","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Historical Number

F3B7AA0025E85DBE492578D200113D6B

Product Synonym

対象システム:WebSphere Application Server

Document Information

Modified date:
17 June 2018

UID

jpn1J1008037