LDAP ロード バランシングおよびフェイルオーバー

 
casso11jp
 
フェールオーバおよびロード バランシングを実行するために、ポリシー サーバは複数の LDAP サーバに LDAP クエリを分散できます。ポリシー サーバは、サーバが応答に失敗するまで 1 台の LDAP サーバを使用してリクエストに応答し続けます。デフォルト サーバが応答しない場合、フェイルオーバー用に指定された次のサーバにリクエストがルーティングされます。この処理を複数のサーバで繰り返すことができます。デフォルト サーバが再びリクエストを実行できるようになると、ポリシー サーバは元のサーバにリクエストをルーティングします。
ロードバランシングが設定されていると、ポリシー サーバは指定された複数の LDAP サーバにリクエストを分散して送信します。ロードバランシングを使用すると、よりすばやく効率的に LDAP ユーザディレクトリ情報にアクセスできるようになり、サーバエラーが発生した場合の冗長性を高めることもできます。
ポート番号に関する考慮事項
ポートは、個々の LDAP サーバやフェイルオーバー グループに割り当てることができます。また、LDAP サーバにデフォルトのポート番号を使用するようにポリシー サーバを設定することもできます。
ポート番号を指定する際のガイドラインは次のとおりです。
状況
結果
フェイルオーバー グループ内の最後のサーバ以外のすべてのサーバにポート番号があります。
ポリシー サーバは、具体的なポートが割り当てられていないグループ内のサーバにはデフォルトのポートを使用すると見なします。SSL のデフォルトは636 です。非 SSL のデフォルトは 389 です。
たとえば、サーバのフェイルオーバー グループに次のようなポート番号が含まれているとします。
123.123.12.12:350 123.123.34.34
フェイルオーバー グループ内の最初のサーバのポート番号が 350 です。そのサーバとの通信は、ポート 350 で行われます。
最初のサーバで障害が発生すると、ポリシー サーバは、デフォルト ポートの 389 を使用して 2 番目のサーバと通信します。これは、フェイルオーバー グループ内の 2 番目のサーバにポートが指定されていないためです。
 
フェールオーバの設定
冗長性を提供するようにフェールオーバを設定します。両方のディレクトリは同じポート番号を共有するため、フェールオーバ ディレクトリは、プライマリ ディレクトリと同じタイプの通信(SSL または SSL 以外)を使用します。
以下の手順に従います。
  1. [ユーザ ディレクトリ]ペインの[ディレクトリのセットアップ]グループ ボックスにある[設定]をクリックします。
  2. [フェールオーバの追加]をクリックします。
  3. ポリシー サーバがフェイルオーバーするサーバのホスト名とポートを入力します。
    ポート番号を指定しない場合、ポリシー サーバはデフォルトのポートを使用します。SSL のデフォルトのポートは 636 です。SSL 以外のデフォルトのポートは 389 です。
  4. さらにフェイルオーバー サーバを定義するには、手順 2 と 3 を繰り返します。
    グループの最後のサーバにポートを指定し、その他のサーバにはポートを指定しない場合、ポリシー サーバは指定されているポートをそのグループ内のすべてのサーバに使用します。
  5. [OK]をクリックします。
ロード バランシングの設定
ポリシー サーバが複数の LDAP サーバ間でリクエストを均等に分散できるように、ロード バランシングを設定します。
以下の手順に従います。
  1. [ディレクトリのセットアップ]グループ ボックスで[設定]をクリックします。
  2. [ロード バランシングの追加]をクリックします。
  3. ポリシー サーバがロード バランシングを適用するサーバのホスト名とポートを入力します。
  4. 手順 2 および 3 を繰り返して、追加のロード バランシング サーバを定義します。
  5. [OK]をクリックします。
    [ユーザ ディレクトリ]ペインが表示されます。[サーバ]フィールドに、ロード バランシング対象として指定されたサーバがリストされます。ロード バランシングに指定された各サーバは、カンマ(,)で区切られます。
ロード バランシングとフェイルオーバーの設定
複数のサーバにリクエストを分散し、冗長性を確保するには、ロード バランシングとフェイルオーバーを設定します。
以下の手順に従います。
  1. [ディレクトリのセットアップ]グループ ボックスで[設定]をクリックします。
  2. フェイルオーバー用に指定されるユーザ ディレクトリのホスト名とポートを入力します。
    ポート番号を指定しない場合、ユーザ ディレクトリはデフォルトのポートを使用します。SSL のデフォルトのポートは 636 です。SSL 以外のデフォルトのポートは 389 です。
  3. 他のフェイルオーバーのユーザ ディレクトリを定義するには、手順 2 と 3 を繰り返します。
    最後のディレクトリにのみポートを指定し、その他のディレクトリにはポートを指定しない場合、すべてのディレクトリで指定されているポートと同じポートが使用されます。
  4. [ロード バランシングの追加]をクリックします。
    新しいフェイルオーバー グループが開きます。
  5. ロード バランシング用に指定されるポリシー サーバのホスト名とポートを入力します。
    注:
    ロード バランシングに同じサーバを複数回追加して、特定システムへのリクエストを強制的に増やすことができます。たとえば、グループ内に 2 つのサーバ、Server1 と Server2 があるとします。Server1 は高性能サーバで、Server2 は性能が低いシステムです。Server1 をロード バランシング リストに 2 回追加すると、Server2 でリクエストが 1 つ処理される間に Server1 で 2 つ処理させることができます。
  6. 手順 5 および 6 を繰り返して、他のロード バランシング サーバを定義します。
  7. [OK]をクリックします。
    [ユーザ ディレクトリ]ペインが表示されます。[サーバ]フィールドには、フェイルオーバーおよびロード バランシング用に指定されたサーバがリストされます。フェールオーバに指定された各サーバは、スペースで区切られます。ロード バランシング用に指定された各サーバは、カンマ(,)で区切られます。
ユース ケース - ロード バランシングとフェイルオーバー
この例では、
Single Sign-On
環境に、A と B の 2 つのユーザ ディレクトリがあります。これらの 2 つのディレクトリは、以下の要件を満たしている必要があります。
  • ユーザ ディレクトリ A は、ユーザ ディレクトリ B にフェールオーバし、ユーザ ディレクトリ B とロード バランシングする必要があります。
  • ユーザ ディレクトリ B は、ユーザ ディレクトリ A にフェイルオーバーし、ユーザ ディレクトリ A とロード バランシングする必要があります。
スペースはフェイルオーバーを表し、カンマはロード バランシングを表します。要件は、以下のように記述されます。
A B, B A
解決方法:
この設定には、2 つのフェイルオーバー グループが必要です。
  1. 最初のフェイルオーバー グループに、ユーザ ディレクトリ B を追加します。
    現在の設定は A B です。
  2. ロード バランシング グループを追加します。
    注:
    ロード バランシング グループは、新しいフェイルオーバー グループとして開きます。
  3. ロード バランシング グループの最初のサーバとして、ユーザ ディレクトリ B をリストします。
    現在の設定は、A B, B です。
  4. ロード バランシング グループの 2 つ目のサーバとして、ユーザ ディレクトリ A をリストします。
この結果、2 つのフェイルオーバー グループ「A B」と「B A」が設定されます。これらのグループは相互にロード バランシングを行います。両方のディレクトリが使用可能な場合は、各フェイルオーバー グループ内の最初のディレクトリの間、つまり A と B の間でロード バランシングが発生します。ユーザ ディレクトリ A が使用不能になると、ユーザ ディレクトリ B へのフェイルオーバーが発生します。このアクションの結果、ユーザ ディレクトリ B は、ユーザ ディレクトリ A が使用可能になるまですべてのリクエストを処理します。