NetScaler ハイブリッドおよびマルチクラウド展開のためのグローバル負荷分散
NetScaler のハイブリッドおよびマルチクラウドグローバル負荷分散 (GLB) ソリューションを使用すると、ハイブリッドクラウド、マルチクラウド、およびオンプレミス展開の複数のデータセンターにアプリケーショントラフィックを分散できます。NetScaler のハイブリッドおよびマルチクラウド GLB ソリューションは、既存のセットアップを変更することなく、ハイブリッドまたはマルチクラウドで負荷分散セットアップを管理するのに役立ちます。また、オンプレミスセットアップがある場合は、完全にクラウドに移行する前に、NetScaler のハイブリッドおよびマルチクラウド GLB ソリューションを使用して、一部のサービスをクラウドでテストできます。たとえば、トラフィックのごく一部のみをクラウドにルーティングし、ほとんどのトラフィックをオンプレミスで処理できます。NetScaler のハイブリッドおよびマルチクラウド GLB ソリューションは、単一の統合コンソールから地理的な場所を越えて NetScaler インスタンスを管理および監視することも可能にします。
ハイブリッドおよびマルチクラウドアーキテクチャは、「ベンダーロックイン」を回避し、パートナーや顧客のニーズを満たすために異なるインフラストラクチャを使用することで、企業全体のパフォーマンスを向上させることもできます。複数のクラウドアーキテクチャを使用すると、使用した分だけ支払うだけで済むため、インフラストラクチャコストをより適切に管理できます。また、オンデマンドでインフラストラクチャを使用するため、アプリケーションをより適切にスケーリングできます。さらに、各プロバイダーの最高のサービスを活用するために、あるクラウドから別のクラウドへ迅速に切り替える機能も提供します。
NetScaler ハイブリッドおよびマルチクラウド GLB ソリューションのアーキテクチャ
次の図は、NetScaler ハイブリッドおよびマルチクラウド GLB 機能のアーキテクチャを示しています。
NetScaler ハイブリッドおよびマルチクラウド GLB ソリューションのアーキテクチャの図(/en-us/netscaler-console-service/media/mas-hybrid-multicloud-glb-architecture_parent_child_topology-new.png)
NetScaler GLB ノードは DNS 名前解決を処理します。これらの GLB ノードのいずれも、任意のクライアントロケーションから DNS リクエストを受信できます。DNS リクエストを受信した GLB ノードは、設定された負荷分散方法によって選択された負荷分散仮想サーバーの IP アドレスを返します。メトリック (サイト、ネットワーク、および永続性メトリック) は、Citrix 独自のプロトコルであるメトリック交換プロトコル (MEP) を使用して GLB ノード間で交換されます。MEP プロトコルの詳細については、「メトリック交換プロトコルの構成」を参照してください。
GLB ノードで構成されたモニターは、同じデータセンター内の負荷分散仮想サーバーのヘルスステータスを監視します。親子トポロジでは、GLB ノードと NetScaler ノード間のメトリックは MEP を使用して交換されます。ただし、親子トポロジでは、GLB と NetScaler LB ノード間のモニタープローブの構成はオプションです。
エージェントは、NetScaler Console とデータセンター内の管理対象インスタンス間の通信を可能にします。エージェントとそのインストール方法の詳細については、「はじめに」を参照してください。
注
このドキュメントでは、次の前提条件を設けています。
-
既存の負荷分散設定がある場合、それが稼働していること。
-
各 NetScaler GLB ノードに SNIP アドレスまたは GLB サイト IP アドレスが構成されていること。この IP アドレスは、他のデータセンターとメトリックを交換する際のデータセンターソース IP アドレスとして使用されます。
-
DNS トラフィックを受信するために、各 NetScaler GLB インスタンスに ADNS または ADNS-TCP サービスが構成されていること。
-
必要なファイアウォールとセキュリティグループがクラウドサービスプロバイダーで構成されていること。
セキュリティグループの設定
クラウドサービスプロバイダーで、必要なファイアウォール/セキュリティグループ設定を行う必要があります。AWSのセキュリティ機能の詳細については、AWSドキュメントを参照してください。Microsoft Azureネットワークセキュリティグループの詳細については、Microsoft Azureドキュメントを参照してください。
さらに、GLBノードでは、ADNSサービス/DNSサーバーIPアドレス用にポート53を、MEPトラフィック交換用にGSLBサイトIPアドレス用にポート3009を開く必要があります。ロードバランシングノードでは、アプリケーションのトラフィックを受信するために適切なポートを開く必要があります。たとえば、HTTPトラフィックを受信するためにポート80を、HTTPSトラフィックを受信するためにポート443を開く必要があります。エージェントとNetScaler Console間のNITRO通信用にポート443を開きます。
動的ラウンドトリップ時間GLBメソッドの場合、設定されたLDNSプローブタイプに応じてUDPおよびTCPプローブを許可するためにポート53を開く必要があります。UDPまたはTCPプローブはSNIPのいずれかを使用して開始されるため、この設定はサーバー側サブネットにバインドされたセキュリティグループに対して行う必要があります。
NetScalerハイブリッドおよびマルチクラウドGLBソリューションの機能
NetScalerハイブリッドおよびマルチクラウドGLBソリューションの機能の一部をこのセクションで説明します。
他のロードバランシングソリューションとの互換性
NetScalerハイブリッドおよびマルチクラウドGLBソリューションは、NetScalerロードバランサー、Nginx、その他のサードパーティ製ロードバランサーなど、さまざまなロードバランシングソリューションをサポートしています。
注
NetScaler以外のロードバランシングソリューションは、近接ベースおよび非メトリックベースのGLBメソッドが使用され、親子トポロジが構成されていない場合にのみサポートされます。
GLBメソッド
NetScalerハイブリッドおよびマルチクラウドGLBソリューションは、以下のGLBメソッドをサポートしています。
-
メトリックベースのGLBメソッド。メトリックベースのGLBメソッドは、メトリック交換プロトコルを介して他のNetScalerノードからメトリックを収集します。
-
最小接続数:クライアント要求は、アクティブな接続数が最も少ないロードバランサーにルーティングされます。
-
最小帯域幅:クライアント要求は、現在最も少ないトラフィックを処理しているロードバランサーにルーティングされます。
-
最小パケット数: クライアント要求は、過去14秒間に受信したパケット数が最も少ないロードバランサーにルーティングされます。
-
-
メトリックベースではないGLBメソッド
-
ラウンドロビン: クライアント要求は、ロードバランサーのリストの最上位にあるロードバランサーのIPアドレスにルーティングされます。そのロードバランサーは、リストの最下位に移動します。
-
送信元IPハッシュ: このメソッドは、クライアントIPアドレスのハッシュ値を使用してロードバランサーを選択します。
-
-
近接性ベースのGLBメソッド
-
静的近接性: クライアント要求は、クライアントIPアドレスに最も近いロードバランサーにルーティングされます。
-
ラウンドトリップタイム (RTT): このメソッドは、RTT値(クライアントのローカルDNSサーバーとデータセンター間の接続における時間遅延)を使用して、最もパフォーマンスの高いロードバランサーのIPアドレスを選択します。
-
ロードバランシングメソッドの詳細については、「ロードバランシングアルゴリズム」を参照してください。
GLBトポロジ
NetScalerハイブリッドおよびマルチクラウドGLBソリューションは、アクティブ-パッシブトポロジと親子トポロジをサポートしています。
-
アクティブ-パッシブトポロジ - 障害点から保護することで、ディザスタリカバリを提供し、アプリケーションの継続的な可用性を確保します。プライマリデータセンターがダウンした場合、パッシブデータセンターが稼働状態になります。GSLBアクティブ-パッシブトポロジの詳細については、「ディザスタリカバリのためのGSLBの構成」を参照してください。
-
親子トポロジ – メトリックベースのGLBメソッドを使用してGLBおよびLBノードを構成する場合、およびLBノードが別のNetScalerインスタンスに展開されている場合に使用できます。親子トポロジでは、親サイトと子サイト間のメトリック交換がメトリック交換プロトコル (MEP) を介して行われるため、LBノード (子サイト) はNetScalerアプライアンスである必要があります。
親子トポロジの詳細については、「MEPプロトコルを使用した親子トポロジの展開」を参照してください。
IPv6のサポート
NetScalerハイブリッドおよびマルチクラウドGLBソリューションはIPv6もサポートしています。
監視
NetScalerのハイブリッドおよびマルチクラウドGLBソリューションは、セキュアな接続を有効にするオプションを備えた組み込みモニターをサポートしています。ただし、LBおよびGLB構成が同じNetScalerインスタンス上にある場合、または親子トポロジが使用されている場合、モニターの構成はオプションです。
永続性
NetScalerのハイブリッドおよびマルチクラウドGLBソリューションは、以下をサポートしています。
-
ソースIPベースの永続セッション。これにより、同じクライアントからの複数のリクエストが、設定されたタイムアウト期間内に到着した場合、同じサービスに転送されます。クライアントが次のリクエストを送信する前にタイムアウト値が期限切れになった場合、セッションは破棄され、設定された負荷分散アルゴリズムがクライアントの次のリクエストのために新しいサーバーを選択するために使用されます。
-
スピルオーバー永続性。これにより、プライマリの負荷がしきい値を下回った後でも、バックアップ仮想サーバーは受信したリクエストの処理を継続します。詳細については、「スピルオーバーの構成」を参照してください。
-
サイト永続性。これにより、GLBノードはクライアントリクエストを処理するデータセンターを選択し、後続のすべてのDNSリクエストに対して選択されたデータセンターのIPアドレスを転送します。設定された永続性がDOWN状態のサイトに適用される場合、GLBノードはGLBメソッドを使用して新しいサイトを選択し、その新しいサイトがクライアントからの後続のリクエストに対して永続的になります。
NetScaler Console StyleBookを使用した構成
NetScaler ConsoleのデフォルトのマルチクラウドGLB StyleBookを使用して、ハイブリッドおよびマルチクラウドGLB構成でNetScalerインスタンスを構成できます。
デフォルトのマルチクラウドGLB StyleBook for LB Node StyleBookを使用して、アプリケーショントラフィックを処理する親子トポロジの子サイトであるNetScaler負荷分散ノードを構成できます。このStyleBookは、親子トポロジの場合にLBノードを構成したい場合にのみ使用してください。ただし、各LBノードは、このStyleBookを使用して個別に構成する必要があります。
NetScalerハイブリッドおよびマルチクラウドGLBソリューション構成のワークフロー
NetScaler Consoleに付属のマルチクラウドGLB StyleBookを使用して、ハイブリッドおよびマルチクラウドGLB構成でNetScalerインスタンスを構成できます。
次の図は、NetScalerハイブリッドおよびマルチクラウドGLBソリューションを構成するためのワークフローを示しています。ワークフロー図の各ステップについては、図の後に詳しく説明します。
クラウド管理者として、次のタスクを実行します。
-
Citrix Cloud™ アカウントにサインアップします。NetScaler Console の使用を開始するには、Citrix Cloud 企業アカウントを作成するか、社内の誰かが作成した既存のアカウントに参加します。
-
Citrix Cloud にログオンした後、NetScaler Console タイルで Manage をクリックし、NetScaler Console を初めてセットアップします。
-
複数のエージェントをダウンロードしてインストールします。NetScaler Console とデータセンターまたはクラウド内の管理対象インスタンス間の通信を有効にするには、ネットワーク環境にエージェントをインストールして構成する必要があります。管理対象インスタンスで LB および GLB 構成を設定できるように、各リージョンにエージェントをインストールします。LB および GLB 構成は単一のエージェントを共有できます。上記の 3 つのタスクの詳細については、Getting Started を参照してください。
-
Microsoft Azure/AWS のクラウド環境、オンプレミスのデータセンターにロードバランサーを展開します。クラウドおよびオンプレミスに展開するロードバランサーの種類に応じて、それらを適切にプロビジョニングします。たとえば、Microsoft Azure Resource Manager (ARM) ポータル、Amazon Web Services (AWS) 仮想プライベートクラウド、およびオンプレミスデータセンターに NetScaler VPX インスタンスをプロビジョニングできます。仮想マシンを作成し、その他のリソースを構成することにより、NetScaler インスタンスをスタンドアロンモードで LB または GLB ノードとして機能するように構成します。NetScaler VPX インスタンスの展開方法の詳細については、以下のドキュメントを参照してください。
-
Azure Resource Manager でスタンドアロンモードの NetScaler VPX を構成する(http://docs.citrix.com/ja-jp/netscaler/12/deploying-vpx/deploy-vpx-on-azure/configure-vpx-standalone-arm.html)。
-
セキュリティ構成を実行します。インスタンスとサブネットのインバウンドおよびアウトバウンドトラフィックを制御するために、ARM または AWS でネットワークセキュリティグループとネットワーク ACL を構成します。
-
NetScaler Console に NetScaler インスタンスを追加します。NetScaler インスタンスは、NetScaler Console から検出、管理、監視したいネットワークアプライアンスまたは仮想アプライアンスです。これらのインスタンスを管理および監視するには、インスタンスをサービスに追加し、LB (LB に NetScaler を使用している場合) と GLB の両方のインスタンスを登録する必要があります。NetScaler Console で NetScaler インスタンスを追加する方法の詳細については、Getting Started を参照してください。
-
デフォルトの NetScaler Console StyleBook を使用して、GLB および LB 構成を実装します。
-
選択した GLB NetScaler インスタンスで GLB 構成を実行するには、Multi-cloud GLB StyleBook を使用します。
-
ロードバランシング構成を実装します。(管理対象インスタンスにすでにLB構成がある場合は、この手順をスキップできます。)
NetScalerインスタンスでロードバランサーを構成するには、次の2つの方法があります。-
アプリケーションのロードバランシングのためにインスタンスを手動で構成します。インスタンスを手動で構成する方法の詳細については、「基本的なロードバランシングのセットアップ」を参照してください。
-
StyleBookを使用します。選択したNetScalerインスタンスでロードバランサー構成を作成するには、NetScaler Console StyleBookのいずれか(HTTP/SSL LoadBalancing StyleBookまたはHTTP/SSL LoadBalancing (with Monitors) StyleBook)を使用できます。独自のStyleBookを作成することもできます。StyleBookの詳細については、「StyleBook」を参照してください。
-
-
次のいずれかのケースでGLB親子トポロジを構成するには、Multi-cloud GLB StyleBook for LB Nodeを使用します。
-
メトリックベースのGLBアルゴリズム(最小パケット、最小接続、最小帯域幅)を使用してGLBおよびLBノードを構成する場合、およびLBノードが別のNetScalerインスタンスに展開されている場合。
-
サイトの永続性が必要な場合。
-