この節では、高可用性セッション持続性を設定する方法について、次のトピックとともに説明します。
高可用性セッション持続性は、動的配備、動的再読み込み、および自動配備とは互換性がありません。これらの機能は、本稼働環境ではなく開発環境を対象としているため、HA セッション持続性を有効にする前に無効にする必要があります。これらの機能を無効にする方法については、『Sun Java System Application Server 9.1 Application Deployment Guide』を参照してください。
Application Server クラスタを作成します。
詳細については、「クラスタを作成する」を参照してください。
セッション状態データの格納に HADB を使用している場合、クラスタの HADB データベースを作成します。
HADB ソフトウェアは、Sun Java System Application Server の Application Server スタンドアロン配布 で提供されます。Sun Java System Application Server の利用可能な配布については、『Sun Java System Application Server 9.1 Installation Guide』の「Distribution Types and Their Components」を参照してください。HADB 機能はエンタープライズプロファイルでのみ利用可能です。プロファイルの詳細については、『Sun Java System Application Server 9.1 管理ガイド』の「使用法プロファイル」を参照してください。
セッション状態データの格納にクラスタ内の別のサーバーへのインメモリーレプリケーションを使用している場合は、この手順を省略します。
HADB データベースの作成の詳細については、configure-ha-cluster(1)を参照してください。
クラスタの HTTP 負荷分散を設定します。
詳細については、「HTTP 負荷分散の設定」を参照してください。
目的のアプリケーションサーバーインスタンス、および Web または EJB コンテナの可用性を有効にします。
次に、セッション持続性の設定を行います。次の方法のうち 1 つを選択します。
管理コンソールを使用します。「サーバーインスタンスの可用性の有効化」を参照してください。
asadmin コマンド行ユーティリティーを使用します。set(1)および configure-ha-persistence(1)を参照してください。
クラスタ内の各サーバーインスタンスを再起動します。
インスタンスが現在要求を処理中の場合、インスタンスをいったん休止してから再起動して、インスタンスが処理中の要求を完了するまでの時間が十分に取れるようにします。詳細については、「サーバーインスタンスまたはクラスタの無効化 (休止)」を参照してください。
可用性を必要とする特定の SFSB の可用性を有効にします。
セッション状態にチェックポイントを設定する必要のあるメソッドを選択します。「個々の Bean の可用性の設定」を参照してください。
配備中に、個々のアプリケーション、Web モジュール、または EJB モジュールの可用性を有効にします。
「個々のアプリケーションまたは EJB モジュールの可用性の設定」を参照してください。
管理コンソールで、可用性を有効にするチェックボックスをチェックするか、または--availabilityenabled オプションを true にして asadmin deploy コマンドを実行します。
セッション可用性は、次の 5 つの異なるスコープ (高いレベルから低いレベルへの順) で有効にすることができます。
サーバーインスタンス。デフォルトでは有効になっています。サーバーインスタンスのセッション可用性を有効にすると、サーバーインスタンスで実行されているすべてのアプリケーションが高可用性セッション持続性を持つことができるようになります。手順については、次の節の 「サーバーインスタンスの可用性の有効化」を参照してください。
コンテナ (Web または EJB)。デフォルトでは有効になっています。コンテナレベルでの可用性の有効化については、次の節を参照してください。
アプリケーション。デフォルトでは無効になっています。
スタンドアロンの Web または EJB モジュール。デフォルトでは無効になっています。
個々の SFSB。デフォルトでは無効になっています。
可用性を指定されたスコープで有効にするには、それより上のすべてのレベルでも有効にする必要があります。たとえば、アプリケーションレベルで可用性を有効にするには、サーバーインスタンスレベルおよびコンテナレベルでも有効にする必要があります。
ある特定のレベルの可用性は、デフォルトでは 1 つ上のレベルに設定されます。たとえば、可用性がコンテナレベルで有効になっている場合、デフォルトではアプリケーションレベルで有効になります。
可用性がサーバーインスタンスレベルで無効になっている場合、ほかのすべてのレベルで有効にしても反映されません。可用性がサーバーインスタンスレベルで有効になっている場合、明示的に無効化しないかぎり、すべてのレベルで有効になります。
サーバーインスタンスの可用性を有効にするには、asadmin set コマンドを使用して、設定の availability-service.availability-enabled プロパティーを true に設定します。
たとえば、設定の名前が config1 の場合は、次のように指定します。
asadmin set --user admin --passwordfile password.txt --host localhost --port 4849 config1.availability-service.availability-enabled="true" |
ツリーコンポーネントで、「設定」ノードを開きます。
編集する設定のノードを展開します。
「可用性サービス」ノードを選択します。
「可用性サービス」ページで、「可用性サービス」ボックスにチェックマークを付けて、インスタンスレベルの可用性を有効にします。
無効にするには、このボックスのチェックマークを外します。
さらに、セッションの持続性のために HADB への接続に使用する JDBC リソースを変更した場合は、ストアプール名を変更できます。詳細については、configure-ha-cluster(1)を参照してください。
HADB ソフトウェアは、Sun Java System Application Server の Application Server スタンドアロン配布 で提供されます。Sun Java System Application Server の利用可能な配布については、『Sun Java System Application Server 9.1 Installation Guide』の「Distribution Types and Their Components」を参照してください。HADB 機能はエンタープライズプロファイルでのみ利用可能です。プロファイルの詳細については、『Sun Java System Application Server 9.1 管理ガイド』の「使用法プロファイル」を参照してください。
「保存」ボタンをクリックします。
サーバーインスタンスを停止し、再起動します。