高可用性展開を構成する

最終公開日 : Sep 25, 2026
高可用性 (HA) とは、サービスの中断なしに常にユーザーが利用できるシステムを指します。高可用性セットアップは、システムのダウンタイム、ネットワークまたはアプリケーションの障害時に不可欠であり、あらゆる企業にとって重要な要件です。同じ構成のアクティブ/パッシブモードで2つのNetScaler Consoleノードを高可用性展開することで、中断のない運用が提供されます。

展開シナリオ

シナリオ
注
単一のNetScaler Console HA展開における検証済みの最大ストレージ制限は3 TBです。詳細については、展開ガイドを参照してください。
重要
HTTPSを使用してNetScaler Console 12.1ビルド48.18以降のバージョンにアクセスするには:
高可用性モードでNetScaler ConsoleをロードバランシングするようにNetScalerインスタンスを構成している場合は、まずそのNetScalerインスタンスを削除します。その後、高可用性モードでNetScaler ConsoleにアクセスするためにフローティングIPアドレスを構成します。
NetScaler Consoleにおける高可用性展開の利点は次のとおりです。
  • プライマリノードとセカンダリノード間のハートビートを監視するための改善されたメカニズム。
  • 論理的な双方向レプリケーションではなく、データベースの物理ストリーミングレプリケーションを提供します。
  • 個別のNetScalerロードバランサーの必要性をなくすために、プライマリノードにフローティングIPアドレスを構成する機能。
  • フローティングIPアドレスを使用してNetScaler Consoleユーザーインターフェイスに簡単にアクセスできます。
  • NetScaler Consoleユーザーインターフェイスはプライマリノードでのみ提供されます。プライマリノードを使用することで、セカンダリノードにアクセスして変更を加えるリスクを排除できます。
  • フローティングIPアドレスを設定することでフェイルオーバー状況に対応し、インスタンスの再設定は不要です。
  • スプリットブレイン状況を検出して処理する組み込みの機能を提供します。
次の表は、高可用性展開で使用される用語について説明しています。
用語 説明
プライマリノード 高可用性展開に最初に登録されたノード。
セカンダリノード 高可用性展開に2番目に登録されたノード。
ハートビート 高可用性セットアップにおいて、プライマリノードとセカンダリノード間でメッセージを交換するために使用されるメカニズム。これらのメッセージは、個々のノード上のアプリケーションのステータスと健全性を判断します。
フローティングIPアドレス フローティングIPは、同じサブネット内の1つのノードから別のノードへ瞬時に移動できるIPアドレスです。内部的には、プライマリノードのネットワークインターフェース上のエイリアスとして設定されます。フェイルオーバーが発生した場合、フローティングIPアドレスは古いプライマリから新しいプライマリへシームレスに移動します。これは、クライアントが単一のIPアドレスを使用して高可用性ノードと通信できるため、高可用性セットアップで役立ちます。
注:
ポートとプロトコルの詳細については、ポートを参照してください。

高可用性アーキテクチャのコンポーネント

次の図は、高可用性モードで展開された2つのNetScaler Consoleノードのアーキテクチャを示しています。
HAアーキテクチャ(/en-us/netscaler-application-delivery-management-software/media/haarchitecture-console.png)
高可用性展開では、一方のNetScaler Consoleノードがプライマリノード(MAS 1)として構成され、もう一方がセカンダリノード(MAS 2)として構成されます。プライマリノードが何らかの理由でダウンした場合、セカンダリノードが新しいプライマリノードとして引き継ぎます。

監視ツール

監視ツールは、フェイルオーバー状況の監視、アラート、および処理に使用される内部プロセスです。このツールは、高可用性内の各ノードでアクティブに実行されています。サブシステムの起動、両ノードでのデータベースの初期化、フェイルオーバー時のプライマリノードまたはセカンダリノードの決定などを担当します。

プライマリノード

プライマリノードは接続を受け入れ、インスタンスを管理します。AppFlow、SNMP、LogStream、syslogなどのすべてのプロセスはプライマリノードによって管理されます。NetScaler Consoleのユーザーインターフェイスアクセスはプライマリノードで利用可能です。フローティングIPアドレスはプライマリノードに構成されます。

セカンダリノード

セカンダリノードは、プライマリノードから送信されるハートビートメッセージをリッスンします。セカンダリノード上のデータベースは読み取りレプリカモードのみです。セカンダリノードではどのプロセスもアクティブではなく、NetScaler Consoleのユーザーインターフェイスはセカンダリノードではアクセスできません。

物理ストリーミングレプリケーション

プライマリノードとセカンダリノードはハートビートメカニズムを通じて同期します。データベースの物理ストリーミングレプリケーションにより、セカンダリノードは読み取りレプリカモードで起動します。セカンダリノードはプライマリノードから受信したハートビートメッセージをリッスンします。セカンダリノードが180秒間ハートビートを受信しない場合、プライマリノードはダウンしていると見なされます。その後、セカンダリノードがプライマリノードとして引き継ぎます。

ハートビートメッセージ

ハートビートメッセージは、プライマリノードとセカンダリノード間で送受信されるユーザーデータグラムパケット(UDP)です。ノードの状態、健全性、プロセスなどに関する情報を交換するために、NetScaler Consoleのすべてのサブシステムとデータベースを監視します。この情報は、高可用性ノード間で毎秒共有されます。フェイルオーバーまたは高可用性状態の切断が発生した場合、通知は管理者へのアラートとして送信されます。

フローティングIPアドレス

フローティングIPアドレスは、高可用性セットアップのプライマリノードに関連付けられています。これは、クライアントがプライマリノードのNetScaler Consoleに接続するために使用できる、プライマリノードIPアドレスに与えられたエイリアスです。フローティングIPアドレスはプライマリノードに構成されているため、フェイルオーバー時にインスタンスの再構成は必要ありません。インスタンスは、新しいプライマリに到達するために同じIPアドレスに再接続します。

注意すべき重要な点

  • 高可用性セットアップでは、両方のNetScaler Consoleノードがアクティブ-パッシブモードで展開されます。これらは、同じソフトウェアバージョンとビルドを使用し、同じ構成を持つ同じサブネット上にある必要があります。
  • フローティングIPアドレス:
    • フローティングIPアドレスはプライマリノードに構成されます。
    • フェイルオーバーが発生した場合、インスタンスを再構成する必要はありません。
    • ユーザーインターフェイスから高可用性ノードにアクセスするには、プライマリノードIPまたはフローティングIPアドレスのいずれかを使用できます。
      注:
      ユーザーインターフェイスにアクセスするには、フローティングIPアドレスを使用することをお勧めします。
  • データベース:
    • 高可用性セットアップでは、すべての構成ファイルが1分間隔でプライマリノードからセカンダリノードに自動的に同期されます。
    • データベースの同期は、データベースの物理レプリケーションによって即座に行われます。
    • セカンダリノード上のデータベースは読み取りレプリカモードです。
  • NetScaler Consoleのアップグレード:
    • 内部プロセスは、以前のバージョンからNetScaler Consoleを暗黙的にアップグレードします。
      注記:
      アップグレードが成功した後、フローティングIPアドレスを構成する必要があります。
  • UDPデフォルトポート5005は、ハートビートの送受信のために両方のノードで利用可能です。
  • MACアドレス ハイパーバイザーの「MACアドレス変更」オプションの設定は、仮想マシンが受信するトラフィックに影響します。フェイルオーバー後、フローティングIPアドレスが新しいプライマリノードにシームレスに移動するように、仮想スイッチでMACアドレス変更を有効にしてください。 例えば、VMware ESXi上でNetScaler Consoleを高可用性で展開する場合、MACアドレスの変更を受け入れるようにしてください。ESXiは現在、アクティブなMACアドレスを初期MACアドレス以外のものに変更する要求を許可しています。
    注記:
    ESXIバージョン6.7に展開されたNetScaler Consoleの場合、MACアドレス変更オプションを拒否に設定することもできます。フェイルオーバー後、MACアドレス変更の設定に関わらず、トラフィックは新しいプライマリノードにシームレスに流れます。したがって、MACアドレスの変更を受け入れることは必須ではありません。
    NetScaler ConsoleがESXIバージョン6.7より低いバージョンに展開されている場合、MACアドレス変更オプションが許可にのみ設定されていることを確認してください。
    ESXI MACアドレス

前提条件

NetScaler Consoleノードの高可用性を設定する前に、以下の前提条件に注意してください。
  • NetScaler Consoleの高可用性展開は、NetScaler Consoleバージョン12.0ビルド51.24以降でサポートされています。
  • NetScalerサイトからNetScaler Consoleイメージファイル (.xva) をダウンロードします: <https://www.citrix.com/downloads/>
スケジューリング動作とネットワーク遅延を改善するために、CPU優先度 (仮想マシンプロパティで) を最高レベルに設定することをお勧めします。
次の表に、仮想コンピューティングリソースの最小要件を示します。
コンポーネント 要件
RAM 32 GB
仮想CPU 8 CPU
ストレージ容量 NetScaler Consoleの展開には、ソリッドステートドライブ(SSD)テクノロジーを使用することをお勧めします。デフォルト値は120 GBです。実際のストレージ要件は、NetScaler Consoleのサイジング見積もりによって異なります。NetScaler Consoleのストレージ要件が120 GBを超える場合は、追加のディスクを接続する必要があります。注: 追加できるディスクは1つだけです。初期展開時にストレージを見積もり、追加ディスクを接続することをお勧めします。詳細については、「NetScaler Consoleに追加ディスクを接続する方法」を参照してください。
仮想ネットワークインターフェイス 1
スループット 1 Gbpsまたは100 Mbps
ハイパーバイザー バージョン
シトリックス ハイパーバイザー 6.2および6.5
ヴイエムウェア ESXi 5.5 および 6.0
マイクロソフト Hyper-V 2012 R2
リナックス KVM Ubuntu および Fedora

NetScaler Console を高可用性モードでセットアップするには

バージョン 14.1 ビルド 17.x 以降、プライマリノードの NetScaler Console GUI から直接高可用性セットアップを展開できます。
  1. 最初のサーバー (プライマリノード) を登録します。
  2. 2 番目のサーバー (セカンダリノード) を登録します。
  3. プライマリノードの GUI で高可用性セットアップを展開します。

最初のサーバー (プライマリノード) を登録する

プライマリノードを登録するには:
  1. NetScaler サイトからダウンロードした .xva イメージファイルを使用し、ハイパーバイザーにインポートします。
    注:
    .xvaイメージファイルのインポートと起動には数分かかる場合があります。画面下部にステータスが表示されます。
    XVAファイル
  2. インポートが成功したら、右クリックして**「Start」**をクリックします。
    ファイルを開始
  3. **「Console」**タブから、NetScaler Consoleの初期ネットワーク構成を設定します。
    ネットワーク構成
  4. 初期ネットワーク構成が完了すると、システムはログインを促します。次の資格情報(nsrecover/nsroot)を使用してログオンします。
    注:
    ログオン後、初期ネットワーク構成を更新する場合は、networkconfigと入力し、構成を更新して保存します。

2番目のサーバー(セカンダリノード)を登録する

  1. NetScalerサイトからダウンロードした**.xva**イメージファイルを使用して、ハイパーバイザーにインポートします。
  2. **「Console」**タブから、次のイメージに表示されている初期ネットワーク構成でNetScaler Consoleを設定します。
  3. 初期ネットワーク構成が完了すると、システムはログインを促します。次の資格情報(nsrecover/nsroot)を使用してログオンします。
    注:
    • ログオン後、初期ネットワーク構成を更新する場合は、networkconfigと入力し、構成を更新して保存します。
    • 設定に問題がある場合、システムはエラーメッセージを表示します。
    • システムが再起動し、設定が有効になるまでに数分かかります。

プライマリノードのGUIから高可用性セットアップを展開する

プライマリノードとセカンダリノードの両方を登録した後、プライマリノードのGUIにログインして高可用性ペアをセットアップします。
注:
  • ノードを高可用性ペアに展開する前に、初期ネットワーク設定後、セカンダリノードが再起動を完了していることを確認してください。
プライマリノードから高可用性ペアを展開するには、次の手順に従います。
  1. プライマリノードのGUIにログインします。
  2. 設定 > 管理 > 高可用性設定 > NetScaler Console高可用性(HA)の構成 に移動します。
  3. Configure NetScaler Console High Availability (HA)ページで、セカンダリノードの以下の詳細を入力します。
    • ピアノードIPアドレス
    • ピアノードパスワード
    • フローティングIPアドレス
  4. 「Configure」をクリックします。
  5. Confirmページで、Yesをクリックします。
    HAペアを構成(/en-us/netscaler-application-delivery-management-software/media/configure-ha-pair.png)
    プライマリノードとセカンダリノードの両方が再起動され、高可用性ペアが形成されます。通常、約10分かかります。
    注:
    • これで、フローティングIPアドレスの使用を開始できます。
    • ノードの高可用性展開には、フローティングIPアドレスが必須です。
    • 高可用性展開が完了したら、フローティングIPアドレスを使用してNetScaler Consoleユーザーインターフェイスにアクセスします。
  6. 展開を検証するには、設定 > 展開に移動します。
    注:
    セカンダリノードが起動するまでに約10分かかる場合があります。それまでは、セカンダリノードのステータスはダウンと表示されます。
詳細については、よくある質問を参照してください。

高可用性を無効にする

NetScaler Consoleの高可用性ペアで高可用性を無効にし、ノードをスタンドアロンのNetScaler Consoleサーバーに変換できます。
注:
プライマリノードから高可用性を無効にします。
高可用性を無効にするには:
  1. Webブラウザで、NetScaler ConsoleサーバーのプライマリノードのIPアドレスを入力します。
  2. ユーザー名フィールドとパスワードフィールドに、管理者資格情報を入力します。
  3. システムタブで、展開に移動し、HAを解除をクリックします。
    ダイアログボックスが表示されます。はいをクリックして、高可用性展開を解除します。

高可用性を再展開する

高可用性をスタンドアロン展開に無効にした後、再度高可用性モードに再展開できます。高可用性の再展開は、高可用性の初回展開と同様です。詳細については、「プライマリノードGUIから高可用性セットアップを展開する」を参照してください。
注:
NetScaler® Consoleの高可用性を無効にした後、スタンドアロンライセンスサーバーとして1つのコンソールノードのみを使用してください。2番目のノードは再プロビジョニングする必要があります。

高可用性フェイルオーバーシナリオ

次のいずれかの条件が発生した場合にフェイルオーバーが発生します。
  • ノード障害:プライマリノードがダウンし、プライマリノードから180秒間ハートビートが検出されない場合。
  • アプリケーションヘルス障害:プライマリノードは稼働中ですが、NetScaler Consoleのプロセスが1つダウンしている場合。

データベース同期ログメッセージを表示する

NetScaler Console HAペアでは、設定ファイルはプライマリノードからセカンダリノードに自動的に同期され、データベースの物理ストリーミングレプリケーションが行われます。
ただし、ストリーミングレプリケーションエラーが発生した場合は、データベースの同期ボタンが表示されます。データベースの同期ボタンをクリックして、データベース同期プロセスを開始できます。
ログメッセージ
データベース同期の進行状況を表示するには、ログの表示をクリックします。データベース同期ログメッセージが表示され、同期進行状況の詳細をリアルタイムで確認できます。
ログメッセージ同期

スプリットブレインシナリオ

ネットワークリンクのダウンタイムにより両方のノード間で通信がない場合、次のようになります。
  • プライマリノードはプライマリとして動作し続けます
  • セカンダリノードは、ハートビートの受信に失敗したためプライマリとして引き継ぎます
  • 両方のノードはそれぞれのデータベースインスタンスを実行します
例えば、ある企業では2つのNetScaler Consoleノードがプライマリとセカンダリとして展開されています。ネットワークリンクのダウンタイムの可能性があるため、2つのNetScaler Consoleノード間の通信は完全に途絶えます。180秒以上ハートビートの交換がないため、両方のノードは自身をプライマリノードと見なします。両方のノードはアクティブノードとして機能し、独自のデータベースインスタンスを実行します。
NetScaler Console 12.1以降のリリースでは、ネットワークリンクとハートビートが復元された後、このスプリットブレイン状況は適切に処理されます。高可用性同期は自動的に復元されます。回復時間は、ノード間のデータ量とリンク速度によって異なります。
注:
スプリットブレイン状態の間、古いプライマリノードで発生した変更は、高可用性に再結合されると新しいプライマリによってリセットされます。スプリットブレイン中に新しいプライマリノードで発生した変更はそのまま保持されます。

ライセンス

NetScaler Consoleサーバーには、VIP、CICO、およびプールされたキャパシティライセンスを含めることができます。ライセンスがNetScaler Consoleサーバーに発行されると、ライセンスはサーバーのホストIDにバインドされます。別のNetScaler Consoleサーバーにライセンスを割り当てることは制限されています。
NetScaler Consoleの高可用性ペアをライセンスサーバーとして構成した場合、プライマリに適用されたライセンスファイルはセカンダリに同期されます。
注:
  • リリース 12.1-50.x 以降では、NetScaler Console ライセンスはプライマリノードからセカンダリノードへ自動的に同期されます。