NetScaler VPX

同じAWSアベイラビリティゾーンにVPX HAペアを展開する

注:

NetScalerリリース13.1ビルド27.x以降、同じAWSアベイラビリティゾーン内のVPX HAペアはIPv6アドレスをサポートします。

AWS上で2つのNetScaler VPXインスタンスをHAペアとして構成できます。この場合、両方のVPXインスタンスは同じサブネット上にある同じAWSゾーンに配置されます。HAは、フェイルオーバー後にプライマリHAノードのNIC(クライアント側およびサーバー側NIC)にアタッチされたセカンダリプライベートIPアドレスをセカンダリHAノードに移行することで実現されます。セカンダリプライベートIPアドレスに関連付けられているすべてのElastic IPアドレスも移行されます。

NetScaler VPX HAペアは、同じAWSアベイラビリティゾーンでIPv4アドレスとIPv6アドレスの両方をサポートします。

次の図は、セカンダリプライベートIPアドレスを移行することによるHAフェイルオーバーシナリオを示しています。

図1. プライベートIP移行を使用するAWS上のNetScaler VPX HAペア

高可用性ピップ移行

ドキュメントを開始する前に、以下のドキュメントをお読みください。

同じゾーンにVPX HAペアを展開する方法

同じゾーンにVPX HAペアを展開する手順の概要を以下に示します。

  1. AWS上に3つのNICを持つ2つのVPXインスタンスを作成します。
  2. プライマリノードのVIPとSNIPにAWSセカンダリプライベートIPアドレスを割り当てます。
  3. AWSセカンダリプライベートIPアドレスを使用して、プライマリノードでVIPとSNIPを設定します。
  4. 両方のノードでHAを設定します。

ステップ1. 同じVPCを使用し、それぞれ3つのNIC(Ethernet 0、Ethernet 1、Ethernet 2)を持つ2つのVPXインスタンス(プライマリノードとセカンダリノード)を作成

AWSウェブコンソールを使用してAWSにNetScaler VPXインスタンスを展開するに記載されている手順に従ってください。

ステップ2. プライマリノードで、Ethernet 1(クライアントIPまたはVIP)とEthernet 2(バックエンドサーバーIPまたはSNIP)にプライベートIPアドレスを割り当て

AWSコンソールは、設定されたNICにプライマリプライベートIPアドレスを自動的に割り当てます。VIPとSNIPには、セカンダリプライベートIPアドレスとして知られる追加のプライベートIPアドレスを割り当てます。

ネットワークインターフェイスにプライベートIPアドレスを割り当てるには、次の手順に従います。

  1. https://console.aws.amazon.com/ec2/でAmazon EC2コンソールを開きます。
  2. ナビゲーションペインで、ネットワークインターフェイスを選択し、インスタンスにアタッチされているネットワークインターフェイスを選択します。
  3. アクション > IPアドレスの管理を選択します。
  4. 要件に基づいて、IPv4アドレスまたはIPv6アドレスを選択します。
  5. IPv4アドレスの場合:
    1. 新しいIPの割り当てを選択します。
    2. インスタンスのサブネット範囲内にある特定のIPv4アドレスを入力するか、フィールドを空白のままにしてAmazonにIPアドレスを選択させます。
    3. (オプション) 再割り当てを許可を選択すると、セカンダリプライベートIPアドレスがすでに別のネットワークインターフェースに割り当てられている場合に、再割り当てできるようになります。
  6. IPv6アドレスの場合:
    1. 新しいIPを割り当てるを選択します。
    2. インスタンスのサブネット範囲内にある特定のIPv6アドレスを入力するか、フィールドを空白のままにしてAmazonにIPアドレスを選択させます。
    3. (オプション) 再割り当てを許可を選択すると、プライマリまたはセカンダリプライベートIPアドレスがすでに別のネットワークインターフェースに割り当てられている場合に、再割り当てできるようになります。
  7. はい > 更新を選択します。

インスタンスの説明の下に、割り当てられたプライベートIPアドレスが表示されます。

注:

IPv4 HAペア展開では、インターフェース上のセカンダリIPv4アドレスのみを割り当て、それらをVIPおよびSNIPアドレスとして使用できます。しかし、IPv6 HAペア展開では、インターフェース上のプライマリIPv6またはセカンダリIPv6アドレスのいずれかを割り当て、それらをVIPおよびSNIPアドレスとして使用できます。

ステップ3. セカンダリプライベートIPアドレスを使用して、プライマリノードでVIPとSNIPを構成する

SSHを使用してプライマリノードにアクセスします。sshクライアントを開いて次のように入力します。

ssh -i <location of your private key> nsroot@<public DNS of the instance>
<!--NeedCopy-->

次に、VIPとSNIPを構成します。

VIPの場合、次のように入力します。

add ns ip <IPAddress> <netmask> -type <type>
<!--NeedCopy-->

SNIPの場合、次のように入力します。

add ns ip <IPAddress> <netmask> -type SNIP
<!--NeedCopy-->

save config と入力して保存します。

設定済みのIPアドレスを表示するには、次のコマンドを入力します。

show ns ip
<!--NeedCopy-->

詳細については、次のトピックを参照してください。

ステップ4:両方のインスタンスでHAを構成する

プライマリノードで、シェルクライアントを開き、次のコマンドを入力します。

add ha node <id> <private IP address of the management NIC of the secondary node>
<!--NeedCopy-->

セカンダリノードで、次のコマンドを入力します。

add ha node <id> < private IP address of the management NIC of the primary node >
<!--NeedCopy-->

設定を保存するには、save config と入力します。

設定済みのHAノードを表示するには、show ha node と入力します。

フェイルオーバーが発生すると、以前のプライマリノードでVIPおよびSNIPとして構成されていたセカンダリプライベートIPアドレスは、新しいプライマリノードに移行されます。

ノードでフェイルオーバーを強制するには、force HAfailover と入力します。

VPX HAペアをデプロイするレガシーメソッド

13.0 41.xリリース以前は、同じゾーン内でのHAはAWSエラスティックネットワークインターフェース (ENI) の移行によって実現されていました。しかし、この方法は徐々に非推奨になっています。

次の図は、AWS上のNetScaler VPXインスタンスのHA展開アーキテクチャの例を示しています。

図 1. ENI移行機能を用いたAWS環境におけるNetScaler VPX HAペア

ENI移行を使用した高可用性(/ja-jp/vpx/media/ha-aws.png)

以下のいずれかのオプションを使用して、2つのVPXインスタンスをAWS上にHAペアとして展開できます。

  • AWS Management Consoleを使用してIAMロールを持つインスタンスを手動で作成し、それらのインスタンスでHAを構成します。
  • または、Citrix CloudFormationテンプレートを使用して高可用性展開を自動化します。

CloudFormationテンプレートを使用すると、HAペアの作成に必要な手順が大幅に削減され、IAMロールが自動的に作成されます。このセクションでは、Citrix CloudFormationテンプレートを使用してNetScaler VPX HA(アクティブ-パッシブ)ペアを展開する方法について説明します。

2つのNetScaler VPXインスタンスをHAペアとして展開する際には、以下の点に留意してください。

留意事項

  • AWS上のHAでは、プライマリノードに少なくとも2つのENI(1つは管理用、もう1つはデータトラフィック用)が必要であり、セカンダリノードには1つの管理用ENIが必要です。ただし、セキュリティ上の目的から、プライマリノードには3つのENIを作成することをお勧めします。この設定により、プライベートネットワークとパブリックネットワークを分離できるためです(推奨)。
  • セカンダリノードには常に1つのENIインターフェイス(管理用)があり、プライマリノードには最大4つのENIを持つことができます。
  • 高可用性ペア内の各VPXインスタンスのNSIPアドレスは、インスタンスのデフォルトENIに構成する必要があります。
  • AmazonはAWSでブロードキャスト/マルチキャストパケットを許可していません。そのため、HA設定では、プライマリVPXインスタンスが失敗した場合、データプレーンENIはプライマリからセカンダリVPXインスタンスに移行されます。
  • デフォルト(管理用)ENIは別のVPXインスタンスに移動できないため、クライアントおよびサーバートラフィック(データプレーンのトラフィック)にはデフォルトENIを使用しないでください。
  • /var/log/ns.log内のメッセージ「AWSCONFIG IOCTL NSAPI_HOTPLUG_INTF success output 0」は、2つのデータENIがセカンダリインスタンス(新しいプライマリ)に正常にアタッチされたことを示します。
  • AWSのENIデタッチ/アタッチメカニズムにより、フェールオーバーには最大20秒かかる場合があります。
  • フェイルオーバー時、失敗したインスタンスは常に再起動します。
  • ハートビートパケットは管理インターフェースでのみ受信されます。
  • プライマリおよびセカンダリVPXインスタンスの設定ファイルは、nsrootパスワードを含め同期されます。HA構成同期後、セカンダリノードのnsrootパスワードはプライマリノードのパスワードに設定されます。
  • AWS APIサーバーにアクセスするには、VPXインスタンスにパブリックIPアドレスが割り当てられているか、VPCサブネットレベルでVPCのインターネットゲートウェイを指すようにルーティングが正しく設定されている必要があります。
  • ネームサーバー/DNSサーバーは、DHCPオプションを使用してVPCレベルで構成されます。
  • Citrix CloudFormationテンプレートは、異なるアベイラビリティゾーン間でHAセットアップを作成しません。
  • Citrix CloudFormation テンプレートでは、INCモードは作成されません。
  • AWSデバッグメッセージは、VPXインスタンス上のログファイル /var/log/ns.log で利用できます。

Citrix CloudFormationテンプレートを使用して高可用性ペアを展開する

CloudFormationテンプレートを開始する前に、以下の要件を満たしていることを確認してください。

  • VPC
  • VPC内の3つのサブネット
  • UDP 3003、TCP 3009–3010、HTTP、SSHポートが開いているセキュリティグループ
  • キーペア
  • インターネットゲートウェイを作成する
  • クライアントおよび管理ネットワークのルートテーブルを編集して、インターネットゲートウェイを指すようにします

Citrix CloudFormationテンプレートは、IAMロールを自動的に作成します。既存のIAMロールはテンプレートに表示されません。

シトリックス クラウドフォーメーション テンプレートを起動するには:

  1. AWS認証情報を使用して、AWS marketplaceにログオンします。
  2. 検索フィールドに「NetScaler VPX」と入力してNetScaler AMIを検索し、「Go」をクリックします。
  3. 検索結果ページで、目的のNetScaler VPXオファリングをクリックします。
  4. 料金」タブをクリックして、「料金情報」に移動します。
  5. リージョンとフルフィルメントオプションとしてNetScaler VPX – Customer Licensedを選択します。
  6. 購読を続行をクリックします。
  7. 購読」ページで詳細を確認し、「設定に進む」をクリックします。
  8. 配信方法としてCloudFormation テンプレートを選択します。
  9. 必要なCloudFormationテンプレートを選択します。
  10. ソフトウェアバージョン」と「リージョン」を選択し、「起動を続行」をクリックします。

    AWS クラウドフォーメーション テンプレート

  11. アクションの選択」で「CloudFormation の起動」を選択し、「起動」をクリックします。 「スタックの作成」ページが表示されます。
  12. 次へ」をクリックします。

    スタックの作成

  13. スタックの詳細の指定」ページが表示されます。次の詳細を入力します。

    • スタック名」を入力します。名前は25文字以内である必要があります。
    • ネットワーク構成」で、次を実行します。
      • 管理サブネットワーク」、「クライアントサブネットワーク」、「サーバーサブネットワーク」を選択します。VPC ID で選択した VPC 内に作成した正しいサブネットワークを選択していることを確認してください。
      • プライマリ管理 IP」、「セカンダリ管理 IP」、「クライアント IP」、「サーバー IP」を追加します。IP アドレスは、それぞれのサブネットワークの同じサブネットに属している必要があります。または、テンプレートに IP アドレスを自動的に割り当てさせることもできます。
      • VPCTenancy には デフォルト を選択します。
    • NetScaler 構成」で、次を実行します。
      • インスタンスタイプ」には「m5.xlarge」を選択します。
      • キーペア」のメニューから、すでに作成済みのキーペアを選択します。
      • デフォルトでは、「カスタムメトリクスを CloudWatch に公開しますか?」オプションは「はい」に設定されています。このオプションを無効にする場合は、「いいえ」を選択します。

        CloudWatch メトリクスの詳細については、[Monitor your instances using Amazon CloudWatch] を参照してください。

    • オプション構成」で、次を実行します。
      • デフォルトでは、管理インターフェースにpublicIP(EIP)を割り当てるべきですか?オプションはいいえに設定されています。
      • デフォルトでは、クライアントインターフェースにpublicIP(EIP)を割り当てるべきですか?オプションはいいえに設定されています。

    スタックの詳細を指定(/ja-jp/vpx/media/cloudformation-specify-stack-details.png)

  14. 次へをクリックします。
  15. スタックオプションの設定ページが表示されます。これはオプションのページです。

    スタックオプションの設定(/ja-jp/vpx/media/configure-stack-options.png)

  16. 次へをクリックします。

  17. オプションページが表示されます。(これはオプションのページです。)次へをクリックします。

  18. レビューページが表示されます。設定を確認し、必要に応じて変更を加えてください。

  19. AWS CloudFormationがIAMリソースを作成する可能性があることを認識しています。チェックボックスを選択し、スタックの作成をクリックします。

  20. CREATE-IN-PROGRESSステータスが表示されます。ステータスがCREATE-COMPLETEになるまで待ちます。ステータスがCOMPLETEに変わらない場合は、イベントタブで失敗の原因を確認し、適切な構成でインスタンスを再作成してください。

    CloudFormationスタックが完了しました(/ja-jp/vpx/media/cloudformation-stack-complete.png)

  21. IAMリソースが作成された後、EC2 Management Console > インスタンスに移動します。IAMロールで作成された2つのVPXインスタンスが見つかります。プライマリノードとセカンダリノードはそれぞれ3つのプライベートIPアドレスと3つのネットワークインターフェースで作成されます。
  22. ユーザー名nsrootとインスタンスIDをパスワードとしてプライマリノードにログオンします。GUIから、System > High Availability > Nodesに移動します。NetScaler VPXは、CloudFormationテンプレートによってHAペアで既に構成されています。

  23. ネットスケーラー VPX HAペアが表示されます。

    クラウドフォーメーション VPX HA ペアが構成されています

Amazon CloudWatch を使用してインスタンスを監視する

Amazon CloudWatch サービスを使用して、CPU およびメモリ使用率、スループットなどの NetScaler VPX メトリックのセットを監視できます。CloudWatch は、AWS で実行されているリソースとアプリケーションをリアルタイムで監視します。AWS マネジメントコンソールを使用して、Amazon CloudWatch ダッシュボードにアクセスできます。詳細については、Amazon CloudWatch を参照してください。

留意事項

  • AWS Web コンソールを使用して AWS に NetScaler VPX インスタンスを展開する場合、CloudWatch サービスはデフォルトで有効になっています。
  • Citrix CloudFormation テンプレートを使用して NetScaler VPX インスタンスを展開する場合、デフォルトのオプションは「はい」です。CloudWatch サービスを無効にする場合は、「いいえ」を選択します。
  • メトリックは、CPU (管理およびパケット CPU 使用率)、メモリ、およびスループット (インバウンドおよびアウトバウンド) で利用できます。

CloudWatch メトリックの表示方法

インスタンスの CloudWatch メトリックを表示するには、次の手順に従います。

  1. AWS マネジメントコンソール > EC2 > インスタンス にログオンします。
  2. インスタンスを選択します。
  3. Monitoring をクリックします。
  4. すべてのCloudWatchメトリクスを表示」をクリックします。

    クラウドウォッチメトリクス(/ja-jp/vpx/media/view-cloudwatch-metrics.png)

  5. All metrics の下で、インスタンス ID をクリックします。

    インスタンスのCloudWatchメトリクス

  6. 表示したいメトリクスをクリックし、期間(分、時間、日、週、月単位)を設定します。
  7. Graphed metrics をクリックして使用状況の統計を表示します。Graph options を使用してグラフをカスタマイズします。

図:CPU使用率のグラフ化されたメトリクス

CloudWatchのグラフ化されたメトリクス

高可用性セットアップでのSR-IOVの構成

高可用性セットアップにおけるSR-IOVインターフェースのサポートは、NetScalerリリース12.0 57.19以降で利用可能です。SR-IOVの構成方法の詳細については、「NetScaler VPXインスタンスをSR-IOVネットワークインターフェースで使用するように構成する」を参照してください。

関連リソース

AWSでの高可用性の仕組み

同じAWSアベイラビリティゾーンにVPX HAペアを展開する