Citrix Application Delivery Controller(ADC)グローバルサーバー負荷分散(GSLB)

概要

Citrix Application Delivery Controller(ADC)グローバルサーバー負荷分散(GSLB)は、複数のサイトのデータセンターの場所の周囲にリソースを分散するためのさまざまなテクノロジを説明するDNSベースのソリューションです。このドキュメントでは、Citrix GatewayおよびCitrix ADCによってCitrix Virtual Apps and Desktops StoreFront サーバーの負荷分散が行われるマルチサイト間でGSLBを設定するために必要な展開トポロジと構成アーキテクチャについて説明します。

基本設計要因

以下には、評価および設計段階における基本的な設計要因が含まれます。これらの要因は、要件に対応するための設計の形成に影響します。これらの考慮事項を強調し、これらをサポートする背景情報と洞察を提供します。

  • ADCを使用した複数サイトの Geo 分散データセンター導入 - お客様は、データセンターサイト(つまり、データセンター1とデータセンター2)にまたがって展開されたCitrix ADCアプライアンスを運用しています。2つのアプライアンスで構成されるCitrix ADCの高可用性ペア展開では、通常、同じデータセンターサイト内に配置された物理周辺機器ハードウェアコンポーネントを共有します。これは、Citrix ADCアプライアンスまたは周辺ハードウェアコンポーネントの障害(ネットワークスイッチ、配電ユニットなど)に起因するCitrix ADCサービスの停止から保護することを目的としています。Citrix ADCアプライアンスは、周辺ハードウェアコンポーネント(ネットワークスイッチ、配電ユニットなど)を物理的に共有しない2つの異なるサイト(つまり、データセンター1とデータセンター2)に展開されるため、Citrix ADC GSLBを使用して耐障害性を提供し、冗長性。

  • ビジネス継続性 -コンポーネントの復元性と冗長性のために、サービスの可用性とパフォーマンスに影響を与えることなく、データセンターサイト内およびデータセンターサイト全体で単一のシステム障害に対応するための設計には、ビジネス要件が存在します。災害には、単一のデータ・センターの障害や、単一のデータ・センター・サイト内の個々のサービスの障害によって、サービスおよびクライアント接続が別のデータ・センター・サイトにフェイルオーバーされることもあります。Citrix ADC GSLBは、データセンター1とデータセンター2の両方のサイトにわたるネットワークトラフィックの分散、高可用性、フェイルオーバーサービスに対応するために使用されます。

  • ネットワークトラフィックフローの効率性 -この設計には、顧客のインフラストラクチャ内の個々のサービスにアクセスするために、複数のシリアルホップを含むネットワークトラフィックフローが組み込まれています。ネットワークトラフィックフローの効率を確保し、ルーティングの非効率性を排除するために、ネットワークトラフィックフローは、各ローカルデータセンターサイト内に収まるように設計されています。そのため、設計では、プライマリトラフィックフローに応じて同じデータセンターサイト内のバックエンドシステムを使用し、セカンダリ(バックアップ)トラフィックフローでは、反対側のデータセンターサイト内のバックエンドシステムが使用されます。

グローバル サーバーの負荷分散

GSLB 機能の概要

通常の DNS では、クライアントがドメインネームシステム (DNS) 要求を送信すると、ドメインまたはサービスの IP アドレスの一覧を受信します。通常、クライアントはリストの最初の IP アドレスを選択し、そのサーバーとの接続を開始します。DNSサーバーは、DNSラウンドロビンと呼ばれる技術を使用して、リスト上のIPを循環させます。最初の IP アドレスをリストの最後に送信し、各 DNS 要求に応答した後に他のアドレスを昇格させます。この手法では、負荷の均等な分散が保証されますが、障害復旧、サーバーの負荷または近接性に基づく負荷分散、または永続性はサポートされません。

基本的に、DNS ベースの GSLB は標準 DNS と同じように動作します。ただし、返されるアドレスを決定するためのロジックが増えています。ほとんどの状況におけるロジックは、次のものに基づいています。

  • ネットワーク上のリソースの負荷と容量
  • クエリの送信元の IP アドレスまたはインターフェイス
  • 同じ IP またはネットワークから送信された以前の要求
  • リソースの健全性状態

さまざまな情報が適切に配置されていることを確認するために、ADCシステムはいくつかの方法を使用して状態を判断し、適切な意思決定を行うことができます。

  • リソース自体にアクセスしてリモートリソースの可用性をチェックする明示的なモニタを使用
  • メトリック交換プロトコル(MEP)を介して、異なるNetScalerデバイス間の通信チャネルであり、あるADCがリソースに関する状態情報を別のADCに提供するメカニズムを提供します
  • SNMP ベースの負荷モニタを使用して、リモートリソースをポーリングし、CPU 負荷、ネットワーク負荷などの統計情報を収集します。

Citrix-ADC-GSLB-Image-1

図1 アプリケーションアクセスへの典型的なDNSフロー

ADC アプライアンスで GSLB を設定し MEP を有効にすると、DNS インフラストラクチャを使用して、設定された基準に最も適合するデータセンターにクライアントを接続します。基準では、最も負荷の低いデータセンター、最も近いデータセンター、クライアントのロケーションからのリクエストに最も迅速に応答するデータセンター、それらのメトリックの組み合わせ、および SNMP メトリックを指定できます。アプライアンスは、各データセンターの場所、パフォーマンス、負荷、可用性を追跡します。これらの要因を使用して、クライアント要求を送信するデータセンターを選択します。

GSLB デプロイ

展開の種類

GSLB用に構成されたCitrix ADCアプライアンスは、障害復旧を実現し、WANの障害点から保護することにより、アプリケーションの継続的な可用性を確保します。GSLBは、クライアント要求を最も近いデータセンターまたは最もパフォーマンスの高いデータセンターに送り、または停止時に生き残ったデータセンターに送信することで、データセンター間で負荷を分散できます。

以下に、一般的な GSLB デプロイメントの種類の一部を示します。

アクティブ-アクティブサイトの展開-アクティブ/アクティブサイトは、複数のアクティブなデータセンターで構成されます。クライアント要求は、アクティブなデータセンター間で負荷分散されます。この展開の種類は、分散環境でトラフィックをグローバルに分散する必要がある場合に使用できます。

アクティブ/アクティブ展開内のすべてのサイトがアクティブであり、特定のアプリケーション/ドメインのすべてのサービスが同じGSLB仮想サーバーにバインドされます。サイトは、メトリック交換プロトコル(MEP)を介してメトリックを交換します。サイト間で交換されるサイトメトリックには、各負荷分散とコンテンツスイッチング仮想サーバーの状態、現在の接続数、現在のパケットレート、現在の帯域幅使用量などがあります。Citrix ADCアプライアンスは、サイト間で負荷分散を実行するためにこの情報を必要とします。

MEP では 32 を超えるサイトを同期できないため、アクティブ/アクティブ配置には最大 32 の GSLB サイトを含めることができます。この展開の種類では、バックアップサイトは構成されていません。

Citrix ADCアプライアンスは、GSLB構成で指定されたGSLB方式によって決定された適切なGSLBサイトにクライアント要求を送信します。

Citrix-ADC-GSLB-Image-2

図 2 アクティブ/アクティブサイトの展開

アクティブ/パッシブサイトの展開-アクティブ/パッシブサイトは、アクティブデータセンターとパッシブデータセンターで構成されます。この展開タイプは、ディザスタリカバリに最適です。

このタイプの展開では、一部のサイト(リモート・サイト)は災害復旧専用に予約されています。これらのサイトは、すべてのアクティブなサイトがDOWNになるまで、いかなる意思決定にも参加しません。災害イベントがフェイルオーバーをトリガーしない限り、パッシブ・サイトは稼働状態になりません。

プライマリデータセンターを構成したら、バックアップデータセンターの設定を複製し、そのサイトの GSLB 仮想サーバーをバックアップ仮想サーバーとして指定することで、パッシブ GSLB サイトとして指定します。

MEP では 32 を超えるサイトを同期できないため、アクティブ/パッシブ展開には最大 32 の GSLB サイトを含めることができます。

Citrix-ADC-GSLB-Image-3

図3 アクティブ/パッシブサイトの展開

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

エンティティ

GSLB構成は、構成内の各アプライアンス上のGSLBエンティティのグループで構成されます。これらのエンティティには、GSLB サイト、GSLB サービス、GSLB サービスグループ、GSLB 仮想サーバー、および ADNS サービスが含まれます。

GSLBサイト

一般的なGSLBセットアップはデータセンターで構成され、各データセンターにはCitrix ADCアプライアンスである場合とそうでない場合があります。データセンターはGSLBサイトと呼ばれています。各GSLBサイトは、そのサイトのローカルであるCitrix ADCアプライアンスによって管理されます。これらのアプライアンスは、それぞれ独自のサイトをローカル・サイトとして扱い、他のアプライアンスによって管理される他のすべてのサイトをリモート・サイトとして扱います。

サイトを管理するアプライアンスが、そのデータセンター内の唯一のCitrix ADCアプライアンスである場合、そのアプライアンスでホストされているGSLBサイトは、メトリックを収集できないため、監査の目的で簿記プレースホルダとして機能します。通常、これは、アプライアンスが GSLB に対してのみ使用され、データセンター内の他の製品が負荷分散やコンテンツスイッチングに使用される場合に発生します。

GSLB サイト間の関係

サイトの概念は、Citrix ADC GSLBの実装の中心です。特に指定がない限り、サイトは相互の相互関係を形成します。この関係は、最初に正常性情報を交換し、次に選択したアルゴリズムによって決定される負荷を分散するために使用されます。しかし、多くの状況では、すべてのGSLBサイト間のピア関係は望ましくありません。オールピア実装がない理由は次のとおりです。

  • GSLBサイトを明確に分離する。たとえば、DNS クエリの解決に関与するサイトをトラフィック管理サイトから分離します。
  • ピアサイトの数が増えるにつれて指数関数的に増加する MEP トラフィックの量を減らす。

これらの目標は、親と子の GSLB サイトを使用することによって達成できます。

GSLBサービス

GSLBサービスは、通常、負荷分散またはコンテンツスイッチング仮想サーバーの表現ですが、任意のタイプの仮想サーバーを表すことができます。GSLBサービスは、仮想サーバーのIPアドレス、ポート番号、およびサービスタイプを識別します。GSLBサービスは、GSLBサイトを管理するCitrix ADCアプライアンス上のGSLB仮想サーバーにバインドされます。同じデータセンター内の GSLB 仮想サーバーにバインドされた GSLB サービスは、GSLB 仮想サーバーに対してローカルです。別のデータセンター内の GSLB 仮想サーバーにバインドされた GSLB サービスは、その GSLB 仮想サーバーからリモートです。

GSLB 仮想サーバ

GSLB 仮想サーバーには、1 つ以上の GSLB サービスがバインドされており、それらのサービス間でトラフィックの負荷分散を行います。設定された GSLB メソッド(アルゴリズム)を評価して、クライアント要求を送信する適切なサービスを選択します。GSLB サービスはローカルサーバーまたはリモートサーバーを表すことができるため、要求に対して最適な GSLB サービスを選択すると、クライアント要求を処理するデータセンターを選択する効果があります。

グローバルサーバー負荷分散が設定されているドメインは、GSLB 仮想サーバーにバインドする必要があります。これは、仮想サーバーにバインドされた 1 つ以上のサービスがそのドメインに対して行われた要求を処理するためです。

Citrix ADCアプライアンス上で構成されている他の仮想サーバーとは異なり、GSLB仮想サーバーには独自の仮想IPアドレス(VIP)がありません。

ADNS サービス

ADNSサービスは、Citrix ADCアプライアンスが権限を持つドメインに対するDNS要求にのみ応答する特別な種類のサービスです。ADNS サービスが構成されると、アプライアンスはその IP アドレスを所有し、アドバタイズします。ADNSサービスによってDNS要求を受信すると、アプライアンスはそのドメインにバインドされているGSLB仮想サーバーをチェックします。GSLB 仮想サーバーがドメインにバインドされている場合、DNS 応答の送信先として最適な IP アドレスが照会されます。

DNSリバインダー

DNS仮想IPは、Citrix ADCアプライアンス上の負荷分散DNS仮想サーバーを表す仮想IP(VIP)アドレスです。Citrix ADCアプライアンスが権限を持つドメインのDNS要求は、DNS VIPに送信できます。

メトリックス交換プロトコル (MEP)

GSLBセットアップ内のデータセンターは、Citrix ADCアプライアンス専用のプロトコルであるMEPを介して相互に交換されます。メトリック情報の交換は、GSLB サイトの作成時に開始されます。これらのメトリックは、ロード、ネットワーク、およびパーシステンス情報で構成されます。

MEP は、データセンターの可用性を確保するためにデータセンターの健全性チェックに必要です。ネットワークメトリックスを交換するための接続(ラウンドトリップ時間)は、交換に関係するいずれかのデータセンターから開始できますが、サイトメトリックスを交換するための接続は、常に下位の IP アドレスを持つデータセンターによって開始されます。デフォルトでは、データセンターはサブネット IP アドレス(SNIP)を使用して、別のデータセンターの IP アドレスへの接続を確立します。ただし、メトリック交換のソース IP アドレスとして、特定の SNIP、仮想 IP(VIP)アドレス、または NSIP アドレスを構成できます。GSLBサイト間の通信プロセスではTCPポート3011または3009が使用されるため、このポートはCitrix ADCアプライアンス間のファイアウォールで開く必要があります。

負荷分散方法

構成されたサーバーのIPアドレスを単純に応答する従来のDNSサーバーとは異なり、GSLB用に構成されたCitrix ADCアプライアンスは、構成されたGSLB方式によって決定されたサービスのIPアドレスで応答します。デフォルトでは、GSLB仮想サーバーは最小接続方法に設定されています。すべてのGSLBサービスがダウンしている場合、アプライアンスは設定されているすべてのGSLBサービスのIPアドレスで応答します。

GSLBメソッドは、GSLB仮想サーバーが最高のパフォーマンスGSLBサービスを選択するために使用するアルゴリズムです。Web アドレスのホスト名が解決されると、クライアントは、解決されたサービス IP アドレスにトラフィックを直接送信します。

Citrix ADCアプライアンスは、次のGSLB方式を提供します。

方法 説明
ラウンドロビン GSLB 仮想サーバーがラウンドロビン方式を使用するように構成されている場合、GSLB 仮想サーバーは、それにバインドされているサービスのリストを継続的にローテーションします。仮想サーバーは要求を受信すると、リスト内の最初のサービスに接続を割り当てて、そのサービスをリストの一番下に移動します。
最短応答時間 GSLB 仮想サーバーは、最小応答時間方式を使用するように構成されている場合、最小値のサービスを選択します。ここで、最小値は、現在のアクティブな接続 X 平均応答時間。
最小接続数 GSLB 仮想サーバーは、最小接続の GSLB アルゴリズム (または方法) を使用するように構成されている場合、アクティブな接続数が最も少ないサービスを選択します。これは、ほとんどの状況で最高のパフォーマンスを提供するため、デフォルトの方法です。
最小帯域幅 最小帯域幅方式を使用するように構成された GSLB 仮想サーバーは、現在最小量のトラフィックを処理しているサービスを選択します。これは、メガビット/秒 (Mbps) 単位で測定されます。
最小パケット 最小パケット方式を使用するように構成された GSLB 仮想サーバーは、過去 14 秒間で最も少ないパケットを受信したサービスを選択します。
送信元 IP ハッシュ ソース IP ハッシュ方式を使用するように構成された GSLB 仮想サーバーは、クライアントの IPv4 または IPv6 アドレスのハッシュ値を使用してサービスを選択します。特定のネットワークに属する送信元 IP アドレスからのすべての要求を特定の宛先サーバーに転送するには、送信元 IP アドレスをマスクする必要があります。IPv4 アドレスの場合は、netmask パラメーターを使用します。IPv6 アドレスの場合は、v6NetMaskLength パラメーターを使用します。
カスタムロード カスタム負荷分散は、CPU 使用率、メモリ、応答時間などのサーバパラメータに対して実行されます。カスタムロード方式を使用する場合、Citrix ADCアプライアンスは通常、アクティブなトランザクションを処理していないサービスを選択します。GSLBセットアップのすべてのサービスがアクティブなトランザクションを処理している場合、アプライアンスは負荷が最も小さいサービスを選択します。ロードモニタと呼ばれる特殊なタイプのモニタは、ネットワーク内の各サービスの負荷を計算します。負荷モニターはサービスの状態をマークしませんが、サービスが UP でない場合は GSLB の決定からサービスを取り出します。

GSLB メソッドがリモートサイトで動作するには、MEP を有効にするか、または明示的なモニタがリモートサービスにバインドされている必要があります。MEP が無効の場合、RTT、最小接続、最小帯域幅、最小パケット、および最小応答時間の方式はラウンドロビンにデフォルト設定されます。

GSLB サービスの監視

リモートサービスをGSLB仮想サーバーにバインドすると、GSLBサイトは、ラウンドトリップ時間と永続性情報であるネットワークメトリック情報を含むメトリック情報を交換します。

いずれかの参加サイト間でメトリック交換接続が一時的に失われた場合、リモートサイトは DOWN としてマークされ、UP の残りのサイトで負荷分散が実行されます。サイトのメトリック交換が DOWN の場合、サイトに属するリモートサービスも DOWN とマークされます。

Citrix ADCアプライアンスは、MEPまたはリモートサービスに明示的にバインドされているモニターを使用して、リモートGSLBサービスの状態を定期的に評価します。ローカル GSLB サービスの状態は MEP を使用してデフォルトで更新されるため、明示的なモニタをローカルサービスにバインドする必要はありません。ただし、明示的なモニターをリモートサービスにバインドすることはできます。モニタが明示的にバインドされている場合、リモートサービスの状態はメトリック交換によって制御されません。

リファレンスアーキテクチャ

設計GSLB

データセンターサイトのデータセンター1と2のIPアドレスとルーティングに関して、Citrix ADCインスタンスのネットワークアドレス構成を以下に示します。

  • NSIP — Citrix ADC管理IPアドレス
  • SNIP — Citrix ADCサブネットIPおよびADNSリスナーIP
  • GSLB — GSLB サイトIP
  • VIP — Citrix Gateway 用Citrix ADC VIP
  • StoreFront のVIPCitrix ADC負荷分散(LB)VIP

Citrix-ADC-GSLB-Image-4

図4 DNSとGSLBのワークフロー

図 4 に、クライアントのアプリケーションアクセス要求からの DNS ワークフローを示します。DNS は、GSLB エンティティによって処理されます。DNS 要求がグローバル DNS サーバに送信されると、グローバルな DNS サーバは、要求サブゾーンをサブゾーンネームサーバとして各 ADNS IP に委任します。ADNSサービスによってDNS要求を受信すると、アプライアンスはそのドメインにバインドされているGSLB仮想サーバーをチェックします。GSLB 仮想サーバーがドメインにバインドされている場合、DNS 応答の送信先として最適な IP アドレスが照会されます。

図 5 の図は、実際の展開アーキテクチャトポロジを示しています。指定した ADC IP アドレスに関連付けられたすべての必要なインターフェイス(つまり、NSIP、SNIP/ADNS IP、ゲートウェイ IP、ロードバランス IP)を GSLB トポロジとサービスのオーバーレイとともに表示します。

Citrix-ADC-GSLB-Image-5

図5 GSLBデプロイメントアーキテクチャ

前述の章で説明したように、これらの特定のGSLBエンティティは次のとおりです。

ADNS リスナー IP: DNS クエリをリッスンする ADC IP。

  • ADNS リスナー IP は通常、ADC アプライアンス上の既存の SNIP です。
  • 外部 DNS の場合は、ADNS リスナー IP のパブリック IP を作成し、UDP 53 と TCP 53 を開きます。これにより、インターネットベースの DNS サーバーがアクセスできるようになります。

GSLB サイト IP/MEP リスナー IP: ADC から ADC への GSLB 通信に使用される ADC IP。通信、MEP は、GSLB 対応の ADC ペア間で、負荷分散メトリック、近接性、永続性、およびモニタリング間で次の通信を行います。

  • GSLBサイト — ADCでは、GSLBサイトを作成します。GSLB サイトは、MEP 通信のエンドポイントです。各 ADC ペアは、ローカルアプライアンスのペアと、すべてのリモートアプライアンスのペアの MEP エンドポイントで構成されます。
  • TCP ポート — MEP は、ADC ペア間でポート TCP 3009 または TCP 3011 を使用します。TCP 3009 は暗号化されています。
  • ADNS IP アドレスは、MEP エンドポイント IP として使用できます。
  • GSLB 同期ポート:GSLB 設定同期を使用するには、NSIP(管理 IP)からリモートパブリック MEP IP へのポート TCP 22 および TCP 3008(セキュア)を開きます。GSLB Sync コマンドは BSD シェルでスクリプトを実行するため、NSIP は常にソース IP です。

パブリック IP アドレス: 要約すると、パブリック GSLB の場合、MEP と ADNS が同じ IP でリッスンしている場合は、ADNS および MEP に使用される DMZ IP への NAT である 1 つの新しいパブリック IP が必要です(GSLB サイト IP)。

  • 各データセンターには、個別のパブリック IP があります。
  • DNS はすべてのパブリック ADNS IP リスナーに委任されます。

その他の依存関係

ソリューションのインフラストラクチャは、ソリューション全体で使用される共通コンポーネントのセットを提供します。

  • ネットワークタイムサービス-ソリューション全体のほとんどのコンポーネントは、ネットワークタイムサービス(NTP)との統合を必要とします。次の表は、Citrix Delivery Network展開で使用するクライアントインフラストラクチャ内の主要なNTP設定の詳細を示しています。
  • ドメインネームサービス-ソリューション全体のほとんどのコンポーネントは、ドメインネームサービス (DNS) との統合を必要とします。次の表に、Citrixデリバリーネットワークの展開で使用されるお客様のネットワーク内の主要なDNSインフラストラクチャの詳細を示します。
  • セキュリティと認証-セキュアなセッションはCitrix Gatewayによって処理されます。次の表に、各本番インフラストラクチャ、承認、テストインフラストラクチャで使用するための SAN 証明書に関する主要な決定事項について詳しく説明します。

ソース

このリファレンスアーキテクチャの目的は、お客様独自の実装計画を支援することです。この作業を容易にするために、独自の詳細な設計および実装ガイドに適応できるソース図を提供します:ソースダイアグラム

Citrix製品マニュアルのリファレンス

成果物には、実装と構成の参照に関するガイドラインが示されています。ただし、説明したコンポーネントのインストール方法または保守の方法については、ステップバイステップの手順は示されていません。したがって、Citrix Consultingでは、本稼働環境を実装する前に、設計および展開に関与するクライアント設計および運用チームに対して、以下のドキュメント、記事、ガイドを確認することをお勧めします。これらのドキュメント、記事、ガイドなどについては、オンラインCitrixナレッジセンター、オンラインCitrix製品ドキュメント、またはオンラインCitrixコミュニティから入手できます。

Citrix オンライン製品マニュアル Citrix ADC

Citrix オンライン製品マニュアル Citrix ADC VPX仮想マシン

Citrix オンライン製品マニュアル グローバル サーバーの負荷分散

Citrixホワイトペーパー CTX129514 — Citrix ADC MPX、VPX、およびSDXアプライアンスのセキュアデプロイメントガイド

Citrixホワイトペーパー CTX123976 — Citrix ADCグローバルサーバー負荷分散プライマー:理論と実装

Citrixナレッジベース記事 CTX122619 — DNSとGSLBプライマー

Citrixナレッジベースの記事 CTX121713 — Microsoft DNSのサブドメインを委任する方法、またはCitrix ADCアプライアンスでのグローバルサーバーの負荷分散のバインド方法

Citrixナレッジベースの記事 CTX110488 — Citrix ADCアプライアンスのGSLBセットアップへのDNSサブドメインの委任

Citrix オンライン製品マニュアル 負荷分散

Citrix オンライン製品マニュアル SSL オフロードとアクセラレーション

Citrixコミュニティブログ StoreFront とのゲートウェイの統合に関する教訓

Citrixコミュニティブログ StoreFront とCitrix Gateway のGSLBに関する考慮事項

Citrix Application Delivery Controller(ADC)グローバルサーバー負荷分散(GSLB)