Citrix ADC

MEP プロトコルを使用した親子トポロジ展開

Citrix ADC GSLB は、関係するすべてのサイト間にメッシュ接続を作成し、インテリジェントな負荷分散の決定を行うことにより、グローバルなサーバー負荷分散と障害回復を提供します。各サイトは他のサイトと通信し、メトリック交換プロトコル (MEP) を通じて定期的にサーバとネットワークのメトリックを交換します。ただし、ピアサイトの数が増えると、メッシュトポロジが原因で MEP トラフィックの量は指数関数的に増加します。これを解決するには、親子トポロジを使用します。親子トポロジでは、大規模な展開もサポートされます。32 の親サイトに加えて、1024 の子サイトを構成できます。

GSLB 親子トポロジは、次の特徴を持つ 2 レベルの階層設計です。

  • 最上位レベルには親サイトがあり、親サイトには他の親とピア関係があります。
  • 各親は複数の子サイトを持つことができます。
  • 各親サイトは、子サイトや他の親サイトとヘルス情報を交換します。
  • 子サイトは親サイトとのみ通信します。
  • GSLB の親子関係では、親サイトだけが ADNS クエリに応答します。子サイトは通常の負荷分散サイトとして機能します。
  • ADNS サービスまたは DNS 負荷分散仮想サーバーは、親サイトでのみ構成します。
  • 親サイトは通常の GSLB 構成、つまりローカルサイトとすべてのリモートサイトからのサービスを持つことができますが、子サイトはローカルサービスのみを持つことができます。また、GSLB 仮想サーバーが構成されているのは親サイトのみです。

  • 親子トポロジでは、2 つの IP アドレスのうち低い方からサイトメトリックの交換が開始されます。ただし、Citrix ADCリリース11.1ビルド51.x以降、親サイトは子サイトへの接続を開始し、その逆ではありません。親サイトには、GSLB セットアップのすべての子サイトに関する情報があるためです。
  • 親-親接続では、2 つの IP アドレスの下位 IP からサイトメトリックの交換が開始されます。

  • 親子トポロジでは、子サイトで GSLB サービスを構成する必要は必ずしもありません。ただし、クライアント認証、クライアント IP アドレスの挿入、その他の SSL 固有の要件など、さらに多くの構成がある場合は、子サイトに明示的な GSLB サービスを追加し、それに応じて構成する必要があります。
  • 親子トポロジでは、親サイトと子サイトが異なるCitrix ADCソフトウェアバージョン上に存在する可能性があります。ただし、GSLB AutomaticConfigSync オプションを使用して親サイト間で設定を同期するには、すべての親サイトが同じCitrix ADCソフトウェアバージョン上にある必要があります。AutomaticConfigSyncオプションを使用していない場合、親サイトと子サイトは異なるCitrix ADCソフトウェアバージョン上に存在する可能性がありますが、最新リリースの新機能を使用していないことを確認してください。これは一般に、GSLBに参加している2つのCitrix ADCノードにも当てはまります。

基本的な親子トポロジ

この図では、SiteP1 と SiteP2 はピア関係の親サイトです。サイト P1C1 と P2C1 はそれぞれ P1 と P2 の子サイトです。

親子トポロジダイアグラム

GSLB の親子構成を設定する

GSLB サイトでファイアウォールが設定されている場合は、ポート 3011 が開いていることを確認します。

次の図に、親子構成の例を示します。

親子構成

  • 子サイトの構成には子サイトとその親サイトが含まれますが、他の親サイトや子サイトは含まれません。
  • RTT やパーシステンスセッション情報などのネットワークメトリックは、親サイト間でのみ同期されます。したがって、NWMetricExchange や SessionExchange などのパラメーターは、すべての子サイトで既定で無効になっています。
  • 正しい親子構成を確認するには、親サイトにバインドされているすべての GSLB サービスの状態を確認します。

CLI を使用して GSLB の親子構成を設定するには、次の手順を実行します。

  1. 各親サイトで、すべての子サイト、ピアの親サイト、およびピアサイトに関連付けられた子サイトを構成します。

    親サイトを追加する際には、以下のコマンドを使用します。

    add gslb site <siteName> <siteIPAddress> [-publicIP <ip_addr|ipv6_addr|*>]
    <!--NeedCopy-->
    

    子サイトを追加する際には、以下のコマンドを使用します。

    add gslb site <siteName> <siteIPAddress> [-publicIP <ip_addr|ipv6_addr|*>] [-parentSite <string>]
    <!--NeedCopy-->
    
  2. 子サイトで、子サイトを構成し、子サイトを親サイトに関連付けます。

    注:

    親サイトと子サイトの関連付けを正しく構成してください。たとえば、Site1_child1_child1 をGSLB_Site1で設定する必要があります。Site1_child1 を GSLB_Site2 で設定することはできません。

    子サイトが関連付けられている親サイトを構成するには、以下のコマンドを使用します。

    add gslb site <siteName> <siteIPAddress> [-publicIP <ip_addr|ipv6_addr|*>]
    <!--NeedCopy-->
    

    子サイトを追加して親サイトに関連付けるには、以下のコマンドを使用します。

    add gslb site <siteName> <siteIPAddress> [-publicIP <ip_addr|ipv6_addr|*>] [-parentSite <string>]
    <!--NeedCopy-->
    

コマンドラインインターフェイスを使用した親子設定の完全な例については、CLI を使用した完全な親子設定の例を参照してください

負荷分散仮想サーバーの IP アドレスがプライベート IP アドレスで、パブリック IP アドレスがこの IP アドレスと異なる場合は、子サイトのローカル負荷分散仮想サーバーに GSLB サービスを構成する必要があります。これは、親サイトと子サイト間の統計収集に必要です。

子サイトのコマンドプロンプトで、次のように入力します。

add gslb service <name> <private IP/lb vserver IP> http 80 –sitename <childsite name> -publicip <public IP of LB vserver>

例:

add gslb service Service-GSLB 192.168.1.3 http 80 -GSLB_Site11 site 11_lb1 172.16.1.1

192.168.1.3 は負荷分散仮想サーバーのプライベート IP アドレス、172.16.1.1 は負荷分散仮想サーバーのパブリック IP アドレスです。

親サイトをバックアップする

:この機能は、Citrix ADCリリース11.1ビルド51.xで導入されました。バックアップ親サイトトポロジを使用するには、親サイトと子サイトがCitrix ADC 11.1 build 51.x以降にあることを確認します。

親サイトのバックアップトポロジは、1 つの親サイトに多数の子サイトが関連付けられている場合に便利です。この親サイトが DOWN になると、その子サイトはすべて使用できなくなります。これを防ぐために、元の親サイトが DOWN の場合に子サイトが接続できるバックアップ親サイトを構成できるようになりました。親サイトは MEP メッセージを通じてバックアップ親リストを子サイトに送信します。

親サイトが DOWN になると、GSLB 内の他の親サイトは MEP を通じて特定の親サイトが DOWN であることを認識します。これは、その親サイトに対する MEP が DOWN であるためです。GSLB セットアップ内の他の親サイトは、ピアの親のバックアップチェーンを検索します。優先度が最も高い親サイトは、DOWN になった親の子サイトを採用します。その後、新しい親が子サイトとの接続を開始します。子サイトは、既存の接続とバックアップリストの情報を評価した後に、接続を許可または拒否できます。バックアップの親が子サイトを採用するまでに数秒かかります。 元の親サイトがバックアップされると、別の親サイトに移行した子サイトとの接続を確立しようとします。接続が成功すると、子サイトは元の親サイトに再割り当てされます。

:

  • バックアップとして構成できるのは親サイトのみで、この構成は親サイトでのみ実行できます。
  • すべての子サイトがバックアップの親セットを使用します。
  • 同期は親サイトでのみ行われます。GSLB 子サイトの構成は同期の影響を受けません。これは、親サイトと子サイトの構成が同一ではないためです。子サイトの構成は、そのサイトとその親サイトの詳細のみで構成されます。また、GSLB サービスは必ずしも子サイトで設定する必要はありません。

次の図に示す構成について考えてみます。

  • SiteP1、siteP2、および siteP3 は親サイトです。
  • child_site1、child_site2、および child_site3 は、それぞれ siteP1、siteP2、および siteP3 の子サイトです。
  • 親サイトをバックアップする。
    • siteP1 バックアップの親-siteP2 (より高い優先度) と siteP3
    • siteP2 バックアップの親 — siteP3 (優先度が高い) と siteP1
    • siteP3 バックアップの親 — siteP1 (優先度が高い) と siteP2

:説明のため、この図は親サイトごとに 1 つのバックアップ親のみを示しています。

親子トポロジ図

次の一覧は、さまざまなシナリオにおける親サイトと子サイトの動作をまとめたものです。

  • シナリオ 1:SiteP1 がダウンする。
    • siteP2 と siteP3 は、siteP1 の MEP 接続がダウンしていることを検出します。siteP2 は siteP1 のバックアップ親のプリファレンスリストの上位にあるため、child_site1 への接続を開始しようとします。siteP3 は、child_site1 が親 siteP2 の子サイトになったと想定しています。
    • siteP2 は、Child_Site1 に SiteP1 のバックアップ親 (siteP2 および siteP3) のリストを child_Site1 に送信します。Child_site1 はこのリストを使用して、SiteP2 からの接続を受け入れるか拒否するかを決定します。接続を受け入れ、siteP2 の子になります。
    • siteP1 がバックアップされると、child_site1 に接続要求が送信されます。新しいリクエストが優先され、child_site 1 は siteP1 に移行されます。
  • シナリオ 2:SiteP1 と SiteP2 の間の MEP 接続だけがダウンしました。Child_site1 は siteP2 の接続要求を拒否します。これは、その親 siteP1 がまだ UP であるためです。

  • シナリオ 3:siteP3 と Child_Site1 が siteP1 がダウンしていることを検出し、siteP3 と SiteP2 の間の MEP 接続もダウンしています。ただし、siteP2 は siteP1 が UP であることを検出し、siteP1 と SiteP2 の間の MEP 接続は UP です。
    • SiteP2 は何のアクションも実行しません。
    • SiteP3 は SiteP1 のバックアップリストをチェックし、SiteP2 が SiteP3 よりも優先度が高いことを検出します。しかし、siteP2 はダウンしているため、siteP3 は child_site1 との接続を確立しようとします。child_site1 は siteP1 がダウンしていることを検出したため、SiteP3 の接続要求を受け入れます。
    • これで、siteP1 と siteP2 の間の接続がダウンします。SiteP2 は SiteP1 のバックアップリストをチェックし、自身を最も優先されるバックアップとして検出し、child_site1 への接続を試みます。child_site1 は siteP1 のリストに基づいて新しい接続要求を評価し、SiteP2 を最も優先されるバックアップとして検出し、siteP3 から siteP2 に移行します。

コマンドラインインターフェイスを使用してバックアップ親サイトを構成するには

コマンドプロンプトで次のように入力します。

set gslb site <sitename> -backupParentlist <bkp_site1> <bkp_site2> …<bkp_site5>
<!--NeedCopy-->

<sitename> は現在の親サイトです。

例:

親サイト (SiteP1) では、サイト (SiteP2 と SiteP3) がバックアップ親サイトとして構成されます。

set gslb site SiteP1 -backupParentlist SiteP2 SiteP3
<!--NeedCopy-->

:

  • 新しいサイトをバックアップの親として追加することはできません。最初にすべてのサイトを追加してから、そのサイトをバックアップの親として構成する必要があります。
  • バックアップの親を削除するには、unset コマンドを使用する必要があります。このコマンドは、以前にバックアップ親サイトとして構成されていたすべてのサイトの設定を解除します。

GUI を使用してバックアップ親サイトを構成するには

  1. 構成 > トラフィック管理 > GSLB > サイトに移動します
  2. 新しいサイトを追加するか、既存のサイトを選択します。
  3. GSLB サイトを作成または構成するときに、[親サイトのバックアップ ] オプションボックスを選択します。
MEP プロトコルを使用した親子トポロジ展開