Sun ONE ロゴ      前へ      目次      索引      次へ     

Sun ONE Identity Server 配備ガイド

付録 D
ロードバランサの設定

Sun ONE Identity Server は、ロードバランサで使用できるように設定できます。この章では、ロードバランスの機能およびロードバランスを実現する方法について説明します。次の節で構成されています。


ロードバランサの概要

ロードバランスを使用すると、通常は 1 つのサーバーで実行される作業を複数のサーバー間で配分することで、同一時間内により多くの作業を処理できるようになります。一般に、これはすべてのユーザーの要求がより高速に処理されることを意味します。ロードバランスは、ハードウェア、ソフトウェア、またはその組み合わせで実現されます。図 5-7 に、ロードバランサで使用できるように Identity Server の配備を設定する方法を示します。この設定では、Identity Server のすべてのインスタンスが同一の Directory Server を共有することが重要です。設定が完了すると、ロードバランサ (およびすべての Identity Server サービス) が URL http://loadbalancer_host.domain:port/amconsole 経由でアクセスされます。

図 5-7 Identity Server をロードバランサで使用する場合の設定

スティッキーセッション

ロードバランサを Identity Server に配備する場合、ロードバランサがスティッキーセッションをサポートしている必要があります。スティッキーセッションにより、指定されたサーバーによるセッションの作成後に、セッション情報を保持するため、ユーザーからの後続の要求が同一のサーバーに引き続き配信されます。Identity Server は Cookie を使用してセッション情報を中継するため、ロードバランサはセッションを作成したサーバーへのリダイレクトを実行する必要があります。スティッキーセッションが存在しない場合、すべてのサーバーを信頼する必要があるため、パフォーマンスが低下します。

Resonate Central Dispatch のインストール

Resonate Central Dispatch は、ソフトウェアベースのロードバランサです。Identity Server をロードバランサで使用できるように設定する最初のステップは、ロードバランサのインストールです。2 つの物理サーバーが存在することを前提として、マシンが同一のサブネットに存在することを確認します。machine1 に Sun ONE Web Server、Sun ONE Directory Server、および Identity Server をこの順番でインストールし、Identity Server のインスタンスがインストール済みの Directory Server インスタンスを指し示すようにします。machine2 に Sun ONE Web Server および Identity Server をインストールし、Identity Server のインスタンスが server1 にインストール済みの Directory Server インスタンスを指し示すようにします。Central Dispatch ソフトウェアは、次のようにインストールします。

インストール処理中に、Reporter Agent が両方のマシンに自動的にインストールされます。表 5-1 に、設定手順で使用される可能性のある Central Dispatch に固有の用語を示します。

表 5-1 Resonate Central Dispatch の定義済みの用語

Central Dispatch の用語

定義

CDMaster

Central Dispatch Master は、単一 (または複数) の Central Dispatch サイトの管理および監視に使用されるグラフィカルユーザーインタフェース。Central Dispatch の設定はすべて、このコンソールを使用して適用される

ノード

CDMaster コンソールを介してノードとして設定されたIdentity Server のインスタンス。ノードは、スケジューラまたはサーバーとして設定可能

CDAdapter

Central Dispatch Adapter は、単一の Central Dispatch サイトと CDMaster 間のリンクを提供するプロキシ

CDAction

CDAction は、Central Dispatch サイトの設定、監視、および管理に使用されるコマンド行ユーティリティ

Central Dispatch のインストールおよび製品全般について詳しくは、ソフトウェアに同梱のドキュメントセットを参照してください。


ロードバランサの設定

「スティッキーセッション」は、setcookie 関数またはロードバランサ Cookie を使用して実装できます。以降の節で、両方のオプションに合わせてロードバランサを設定する手順を示します。説明する手順は Resonate Central Dispatch ロードバランサに適用されますが、任意のロードバランサソフトウェアで動作するように修正することも可能です。

Central Dispatch を setcookie 用に設定する

  1. admintool を使用して、2 つの Solaris ユーザー (cdadmin および cdmon) を作成します。
  2. server1 上で CDMaster コンソールを起動します。
  3. デフォルトディレクトリ (/usr/local/resonate/cd/cdmaster/bin) に移動して、./cdmaster を実行します。指示に従って、machine2 にインストールされた CDAdapter に接続します。

  4. CDMaster の左側のフレーム内の「Nodes」をクリックし、インストール済みの 2 つの Identity Server インスタンスのそれぞれに対して 1 つのノードを作成します。
  5. 図 5-8 に、この手順の実行時の CDMaster コンソールのスクリーンショットを示します。

    図 5-8 Resonate を使用したノードの作成

  6. CDMaster の左側のフレーム内で「VIPs」をクリックし、ロードバランサのインストール先ホストの新規仮想 IP アドレスを作成します。
  7. 図 5-9 に、この手順および後続の手順を実行する際の CDMaster コンソールのスクリーンショットを示します。Primary SchedulerおよびBackup Schedulerが正しく設定されていることを確認してください。

    図 5-9 仮想 IP アドレスを新規作成する

  8. 「VIPs」の右側のフレーム内の「Scheduling Rules」をクリックして「HTTP」を選択し、次のように HTTP スケジューリングルールを設定します。
    1. 「Properties」タブで、ロードバランサのインストール先ホストが仮想 IP として表示されていることを確認します。
    2. VIP ポートが、仮想 IP として定義されているものと同じであることを確認します。
    3. 「Resource」として「URL」を選択します。
  9. CDMaster の左側のフレームの「Scheduling Rules」で、「HTTP」をクリックします。
  10. 図 5-10 に、この手順および後続の手順を実行する際の CDMaster コンソールのスクリーンショットを示します。

  11. 右側のフレーム下部の「Server」タブを選択します。
  12. サーバーが選択されていることを確認します。

  13. 右側のフレーム下部の「Load Balancing」タブをクリックし、「Round Robin (Basic)」を選択します。
  14. 図 5-10 HTTP スケジューリングルールを設定する

  15. CDMaster の左側のフレームの「Nodes」をクリックし、Identity Server の 2 番目のインスタンスである server2 の設定済みノードを選択します。
  16. 図 5-11 に、この手順および後続の手順を実行する際の CDMaster コンソールのスクリーンショットを示します。

    図 5-11 CDMaster でノードを設定する

  17. 右側のフレーム上部の「Properties」をクリックし、エイリアスが server2.example.com であり、Server Enabled および Server auto enabled が選択されていることを確認します。
  18. 右側のフレーム下部の「VIP Scheduling」タブをクリックして、プライマリ仮想 IP がロードバランサのインストール先ホストに設定されていることを確認します。
  19. 右側のフレーム下部の「Scheduling Rules」タブを選択して、すべてのサーバーおよびポートが「Component」に表示されることを確認します。
  20. server1 に対して、手順 9 から上記の手順 12 までを繰り返します。
  21. 説明した手順に従って Identity Server の最初のインスタンス (server1) を設定します。ただし、手順 11 は、server2 を「Scheduling Rules」で「Primary」として設定する手順であるため、省略します。

  22. CDMaster の左側のフレームの「Scheduling Rules」をクリックします。
  23. 図 5-12 に、この手順および後続の手順を実行する際の CDMaster コンソールのスクリーンショットを示します。

    図 5-12 Cookie Persistence Scheduling Ruleを設定する

  24. 「Cookie/CGI Persistence」を選択して、Cookie Persistence Scheduling Ruleを作成します。
  25. 属性と値のペアが、iPlanetDirectoryPro=* として定義されます。

  26. ルールにラベルを設定し、仮想 IP 用の適切なポートが定義されていることを確認します。
  27. VIP リストには、ロードバランサがインストールされた、設定済みのホストが含まれていなければなりません。

  28. 右側のフレーム下部の「Server」タブを選択し、両方のサーバーにチェックが付けられていることを確認します。
  29. 右側のフレーム下部の「Load Balancing」タブを選択し、「Round Robin (Basic)」を選択します。

これで、setcookie 用の Central Dispatch の設定が完了しました。引き続いて次の節「Identity Server を setcookie 用に設定する」に進み、配備を完成させてください。

Identity Server を setcookie 用に設定する

setcookie の使用時にロードバランサを認識できるように、server1 および server2 用の Identity Server の設定を更新する必要があります。

  1. server1 にインストールされた Identity Server インスタンスに、amadmin としてログインします。
  2. ロードバランサがインストールされたホストマシンの値を、「組織のエイリアス」属性に追加します。
  3. 「アイデンティティ管理」タブで最上位の組織を表示して、「組織のエイリアス」属性を見つけます。

  4. server2 を、「サービス設定」タブの「プラットフォーム」内にある「サーバーリスト」属性に追加します。
  5. AMConfig.properties で fqdnMap プロパティを設定します。

  6. 警告

    この手順を、Identity Server コンソールを使用して実行することはできません。


    デフォルトでは、fqdnMap プロパティはコメントアウトされています。# を削除し、このプロパティを com.sun.identity.server.fqdnMap[loadbalancer_host.domain]=loadbalancer_host.domain として設定してください。

  7. server1 および server2 を再起動します。

設定が正しく行われたことを確認する方法については、「設定を確認する」を参照してください。

ロードバランサ Cookie の使用に合わせて Central Dispatch を設定する

  1. admintool を使用して、2 つの Solaris ユーザー (cdadmin および cdmon) を作成します。
  2. server1 上で CDMaster コンソールを起動します。
  3. デフォルトディレクトリ (/usr/local/resonate/cd/cdmaster/bin) に移動して、./cdmaster を実行します。指示に従って、server2 にインストールされた CDAdapter に接続します。

  4. CDMaster の左側のフレーム内の「Nodes」をクリックし、インストール済みの 2 つの Identity Server インスタンスのそれぞれに対して 1 つのノードを作成します。
  5. CDMaster の左側のフレーム内で「VIPs」をクリックし、ロードバランサのインストール先ホスト新規仮想 IP アドレスを作成します。
  6. Primary SchedulerおよびBackup Schedulerが設定されていることを確認してください。

  7. 「VIPs」の右側のフレーム内の「Scheduling Rules」をクリックして「HTTP」を選択し、次のように HTTP スケジューリングルールを設定します。
    1. 「Properties」タブで、ロードバランサのインストール先ホストが仮想 IP として表示されていることを確認します。
    2. VIP ポートが、仮想 IP として定義されているものと同じであることを確認します。
    3. 「Resource」として「URL」を選択します。
  8. CDMaster の左側のフレームの「Scheduling Rules」で、「HTTP」をクリックします。
  9. 右側のフレーム下部の「Server」タブを選択します。
  10. サーバーが選択されていることを確認します。

  11. 右側のフレーム下部の「Load Balancing」タブをクリックし、「Round Robin (Basic)」を選択します。
  12. CDMaster の左側のフレームの「Nodes」をクリックし、Identity Server の 2 番目のインスタンスである server2 の設定済みノードを選択します。
  13. 右側のフレーム上部の「Properties」をクリックし、エイリアスが server2.example.com であり、Server Enabled および Server auto enabled が選択されていることを確認します。
  14. 右側のフレーム下部の「VIP Scheduling」タブをクリックして、プライマリ仮想 IP がロードバランサのインストール先ホストに設定されていることを確認します。
  15. 右側のフレーム下部の「Scheduling Rules」タブを選択して、すべてのサーバーおよびポートが「Component」に表示されることを確認します。
  16. server1 に対して、手順 9 から上記の手順 12 までを繰り返します。
  17. 説明した手順に従って Identity Server の最初のインスタンス (server1) を設定します。ただし、手順 11 は、server2 を「Scheduling Rules」で「Primary」として設定する手順であるため、省略します。

  18. CDMaster の左側のフレームの「Scheduling Rules」をクリックします。
  19. 「Cookie/CGI Persistence」を選択して、Cookie Persistence Scheduling Ruleを server1 用に 1 つ、server2 用に 1 つ、合計 2 つ作成します。
  20. server1 にラベルを設定し、仮想 IP 用の適切なポートが定義されていることを確認します。
  21. VIP リストには、ロードバランサがインストールされた、設定済みのホストも含まれていなければなりません。

  22. 「Resource」として cookie を選択し、Attribute-value pairserver1=server1 として定義します。
  23. 右側のフレーム下部の「Server」タブを選択し、両方のサーバーが選択されていることを確認します。
  24. 右側のフレーム下部の「Load Balancing」タブを選択し、「Round Robin (Basic)」を選択します。
  25. server2 に対して、手順 14 から手順 19 までを繰り返します。

これで、ロードバランサ Cookie 用の Central Dispatch の設定が完了しました。引き続いて次の節「ロードバランサ Cookie に合わせて Identity Server を設定する」に進み、配備を完成させてください。

ロードバランサ Cookie に合わせて Identity Server を設定する

ロードバランサを認識できるように、server1 および server2 用の Identity Server の設定を更新する必要があります。

  1. server1 にインストールされた Identity Server インスタンスに、amadmin としてログインします。
  2. ロードバランサがインストールされたホストマシンの値を、「組織のエイリアス」属性に追加します。
  3. 「アイデンティティ管理」タブで最上位の組織を表示して、「組織のエイリアス」属性を見つけます。

  4. server2 を、「サービス設定」タブの「プラットフォーム」内にある「サーバーリスト」属性に追加します。
  5. AMConfig.properties で fqdnMap プロパティを設定します。

  6. 警告

    この手順を、Identity Server コンソールを使用して実行することはできません。


    デフォルトでは、fqdnMap プロパティはコメントアウトされています。# を削除し、このプロパティを com.sun.identity.server.fqdnMap[loadbalancer_host.domain]=loadbalancer_host.domain として設定してください。

  7. 次のプロパティを、server1 および server2 上の AMConfig.properties にそれぞれ追加します。
    1. server1 上の Cookie の名前および値を、次のように設定します。
    2. com.iplanet.am.lbcookie.name=server1

      com.iplanet.am.lbcookie.value=server1

    3. server2 上の Cookie の名前および値を、次のように設定します。
    4. com.iplanet.am.lbcookie.name=server2

      com.iplanet.am.lbcookie.value=server2

  8. server1 および server2 を再起動します。


設定を確認する

次の手順で、設定が適正であることを確認します。


警告

以下の手順を実行する前に、Sun ONE Web Server の Web コンテナの keepAliveTimeout オプションを無効に設定してください。


  1. コンソールの「Manage」タブ内の「Start」を選択して、CDMaster を起動します。
  2. 複数の新規ユーザーを作成し、作成したユーザーでログインします。
  3. Web ブラウザの「Location」バーに、http://loadbalancer_host.domain:port/amconsole と入力します。
  4. Identity Server に amadmin でログインし、「現在のセッション」タブを選択します。
  5. amadmin として、作成したユーザーおよび対応するサーバーが表示可能になります。ユーザーは、セッションを開始したサーバーにすべてをリダイレクトする必要があります。これは、Web サーバーのアクセスログを使用しても確認できます。



前へ      目次      索引      次へ     


Copyright 2003 Sun Microsystems, Inc. All rights reserved.