4 エラスティック・アクション
エラスティック・アクションの導入
スケール・アップおよびスケール・ダウン・アクションは、スケーリング操作時に、動的クラスタで実行中の動的サーバー・インスタンスを起動または停止するために使用されます。
エラスティック・アクションは、ポリシーに関連付けられています。ポリシーの条件が満たされると、エラスティック・アクションが起動され、スケーリング操作が始まります。このタイプのスケーリングは、ポリシー・ベースのスケーリングと呼ばれます。「ポリシーベースのスケーリング」を参照してください。
1つのポリシーには、1つのエラスティック・アクションのみ割り当てることができます。ただし、非スケーリング・アクションは1つのポリシーにいくつでも割り当てることができ、エラスティック・アクションは非スケーリング・アクションと組み合せて使用できます。
ノート:
動的クラスタの自動拡張度を構成するには、スケーリング・ポリシーとそれに対応するエラスティック・アクションを定義したドメイン・スコープの診断システム・モジュールを作成し、その診断モジュールのターゲットを管理サーバーに設定する必要があります。
WLDFのポリシーおよびアクション・コンポーネントの詳細は、Oracle WebLogic Server診断フレームワークの構成と使用のポリシーとアクションの構成を参照してください。
スケール・アップ・アクションの構成
関連付けられたポリシーが起動されると、スケール・アップ・アクションが、指定された動的クラスタに、実行中の動的サーバー・インスタンスを追加します。
例4-1は、実行中の1つの動的サーバー・インスタンスにより動的クラスタをスケール・アップするスケール・アップ・アクションを示しています。
例4-2は、例4-1に示したスケール・アップ・アクションを、WLSTを使用して作成、構成する方法を示しています。このスケール・アップ・アクションは、「ポリシーベースのスケーリング例」で、ポリシーベースのスケーリングのデモの一部として使用します。
例4-1 スケール・アップ・アクションのサンプル構成(DIAG_MODULE.xml内)
<wldf-resource> <name>ClusterManager</name> <watch-notification> <!-- One or more policy configurations --> <scale-up-action> <name>scaleUp</name> <cluster-name>DynamicCluster</cluster-name> <scaling-size>1</scaling-size> </scale-up-action> <!-- Other action configurations --> </watch-notification> </wldf-resource>
例4-2 スケール・アップ・アクションの構成
startEdit() scaleUp=wn.createScaleUpAction('scaleUp') scaleUp.setScalingSize(1) scaleUp.setClusterName(DynamicCluster) save() activate()
スケール・ダウン・アクションの構成
関連付けられたポリシーが起動されると、スケール・ダウン・アクションが、指定された動的クラスタで実行中の動的サーバー・インスタンスを停止します。
例4-3は、1つの動的サーバー・インスタンスにより動的クラスタをスケール・ダウンするスケール・ダウン・アクションを示しています。
例4-4は、例4-3に示したスケール・ダウン・アクションを、作成および構成する方法を示しています。このスケール・ダウン・アクションは、「ポリシーベースのスケーリング例」で、ポリシーベースのスケーリングのデモの一部として使用します。
スケール・ダウン操作中にサーバー・インスタンスを停止すると、たとえばレプリケートされていないセッションがある場合、長い時間がかかることがあります。それらがタイムアウトするまで、サーバー・インスタンスは停止しません。
スケール・ダウン操作を完了するためにかかる時間を短縮するために、次のDynamicServersMBean
属性が使用されます。
-
DynamicClusterShutdownTimeoutSeconds
-
IgnoreSessionsDuringShutdown
-
WaitForAllSessionsDuringShutdown
タイムアウト期間を指定するか、サーバー停止時にセッションを無視することによって、停止時間を制限できます。ただし、残りのセッションが失われる場合があります。これらの属性の説明は、表2-1を参照してください。
例4-3 スケール・ダウン・アクションのサンプル構成(DIAG_MODULE.xml内)
<wldf-resource> <name>ClusterManager</name> <watch-notification> <!-- One or more policy configurations --> <scale-down-action> <name>scaleDown</name> <cluster-name>DynamicCluster</cluster-name> <scaling-size>1</scaling-size> </scale-down-action> <!-- Other action configurations --> </watch-notification> </wldf-resource>
例4-4 スケール・ダウン・アクションの構成
startEdit() scaleDown=wn.createScaleDownAction('scaleDown') scaleDown.setScalingSize(1) scaleDown.setClusterName(DynamicCluster) save() activate()
スケール・ダウン操作中にサーバー・インスタンスを停止すると、たとえばレプリケートされていないセッションがある場合、長時間かかることがあります。そのようなレプリケートされていないセッションがタイムアウトするまで、サーバー・インスタンスは停止しません。
スケール・ダウン操作の完了にかかる時間を短縮するために、次のDynamicServersMBean
属性を構成できます。
-
DynamicClusterShutdownTimeoutSeconds
-
IgnoreSessionsDuringShutdown
-
WaitForAllSessionsDuringShutdown
タイムアウト期間を指定するか、サーバー停止時にセッションを無視することによって、停止時間を短縮できます。ただし、残りのセッションが失われる場合があります。これらの属性の詳細は、動的クラスタの構成を参照してください。
エラスティック・アクションを作成および構成するためのロードマップ
WebLogic Serverのドキュメントには、WebLogic Server管理コンソールまたはFusion Middleware Controlを使用してエラスティック・スケーリング・アクションを構成する方法の学習に役立つトピックが記載されています。
表4-1に、エラスティック・アクションを作成および構成するためのロードマップを示します。
表4-1 エラスティック・アクションのロードマップ
詳細の参照先 | 参照先 |
---|---|
WebLogic Server管理コンソールでのアクションの作成 |
『Oracle WebLogic Server Administration Consoleオンラインヘルプ』の診断システム・モジュールのポリシーに対するアクションの作成に関する項 |
WebLogic Server管理コンソールでのエラスティック・アクションの作成 |
Oracle WebLogic Server管理コンソール・オンライン・ヘルプのスケール・アップ・アクションの作成およびスケール・ダウン・アクションの作成 |
WebLogic Server管理コンソールでのエラスティック・アクションの構成 |
Oracle WebLogic Server管理コンソール・オンライン・ヘルプのスケール・アップ・アクションの構成およびスケール・ダウン・アクションの構成 |
Fusion Middleware Controlでのエラスティック・アクションの作成 |
Fusion Middleware ControlによるOracle WebLogic Serverの管理のスケール・アップまたはスケール・ダウン・アクションの作成 |
Fusion Middleware Controlでのエラスティック・アクションの構成 |
Fusion Middleware ControlによるOracle WebLogic Serverの管理のスケール・アップ・アクションの構成およびスケール・ダウン・アクションの構成 |