高可用性展開を構成する

高可用性 (HA) とは、サービスが中断されることなくユーザーが常に利用できるシステムを指します。 高可用性の設定は、システムのダウンタイム、ネットワークまたはアプリケーションの障害時に非常に重要であり、あらゆる企業にとって重要な要件です。 同じ構成のアクティブ/パッシブ モードで 2 つの NetScaler コンソール ノードを高可用性で展開すると、中断のない操作が実現します。

展開シナリオ

シナリオ

注記

単一の NetScaler Console HA 展開の検証済み最大ストレージ制限は 3 TB です。 詳細については、 デプロイメント ガイドを参照してください。

重要

HTTPS を使用して NetScaler Console 12.1 ビルド 48.18 以降のバージョンにアクセスするには:

NetScaler インスタンスを高可用性モードで NetScaler Console の負荷分散するように構成している場合は、まず NetScaler インスタンスを削除します。 次に、高可用性モードで NetScaler コンソールにアクセスするためのフローティング IP アドレスを構成します。

NetScaler コンソールでの高可用性展開の利点は次のとおりです。

次の表では、高可用性展開で使用される用語について説明します。

条項 説明
プライマリノード 高可用性展開に登録された最初のノード。
セカンダリノード 高可用性展開に登録された 2 番目のノード。
ハートビート 高可用性セットアップでプライマリ ノードとセカンダリ ノード間でメッセージを交換するために使用されるメカニズム。 メッセージは、各ノード上のアプリケーションのステータスと健全性を判断します。
フローティングIPアドレス フローティング IP は、同じサブネット内のあるノードから別のノードに瞬時に移動できる IP アドレスです。 内部的には、プライマリ ノードのネットワーク インターフェイス上のエイリアスとして設定されます。 フェイルオーバーが発生した場合、フローティング IP アドレスは古いプライマリから新しいプライマリにシームレスに移動されます。 これは、クライアントが単一の IP アドレスを使用して高可用性ノードと通信できるようにするため、高可用性セットアップに役立ちます。

注記:

ポートとプロトコルの詳細については、「 ポート」を参照してください。

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

次の図は、高可用性モードで展開された 2 つの NetScaler コンソール ノードのアーキテクチャを示しています。

HAアーキテクチャ

高可用性展開では、1 つの NetScaler コンソール ノードがプライマリ ノード (MAS 1) として構成され、もう 1 つがセカンダリ ノード (MAS 2) として構成されます。 何らかの理由でプライマリ ノードがダウンした場合、セカンダリ ノードが新しいプライマリ ノードとして引き継ぎます。

監視ツール

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

プライマリノード

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

セカンダリノード

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

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

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

ハートビートメッセージ

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

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

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

注目すべきポイント

注記:

ESXI バージョン 6.7 に展開された NetScaler コンソールの場合、 MAC アドレスの変更 オプションを 拒否 に設定することもできます。 フェイルオーバー後、トラフィックは、 MAC アドレスの変更 の設定に関係なく、新しいプライマリ ノードにシームレスに流れます。 したがって、MAC アドレスの変更を受け入れることは必須ではありません。

NetScaler コンソールが 6.7 より前のバージョンの ESXI に導入されている場合は、 MAC アドレスの変更 オプションが 受け入れる のみに設定されていることを確認してください。

![ESXi MACアドレス](/en-us/netscaler-application-delivery-management-software/media/nmas-ha-deploy-mac-address-change.png)

前提条件

NetScaler コンソール ノードの高可用性を設定する前に、次の前提条件に注意してください。

スケジュール動作とネットワーク遅延を改善するには、CPU 優先度 (仮想マシンのプロパティ) を最高レベルに設定することをお勧めします。

次の表は、仮想コンピューティング リソースの最小要件を示しています。

成分 要件
ラム 32GB
仮想CPU 8個のCPU
収納スペース NetScaler コンソールの展開には、ソリッド ステート ドライブ (SSD) テクノロジを使用することをお勧めします。 デフォルト値は 120 GB です。 実際のストレージ要件は、NetScaler コンソールのサイズ見積もりによって異なります。 NetScaler コンソールのストレージ要件が 120 GB を超える場合は、追加のディスクを接続する必要があります。 注意: 追加できるディスクは 1 つだけです。 初期展開時にストレージを見積もり、追加のディスクを接続することをお勧めします。 詳細については、「 NetScaler コンソールに追加のディスクを接続する方法」を参照してください。
仮想ネットワークインターフェース 1
スループット 1 Gbps または 100 Mbps
ハイパーバイザー バージョン
Citrix ハイパーバイザー 6.2と6.5
VMware ESXi 5.5と6.0
マイクロソフト Hyper-V 2012 R2
Linux KVM UbuntuとFedora

NetScalerコンソールを高可用性モードで設定するには

バージョン 14.1 ビルド 17.x 以降では、プライマリ ノードの NetScaler コンソール GUI から直接高可用性セットアップを展開できます。

  1. 最初のサーバー(プライマリノード)を登録します。

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

  3. プライマリ ノード GUI で高可用性セットアップを展開します。

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

プライマリノードを登録するには:

  1. NetScaler サイトからダウンロードした .xva イメージ ファイルを使用して、ハイパーバイザーにインポートします。

    注記:

    .xva イメージ ファイルをインポートして開始するまでに数分かかる場合があります。 画面の下部でステータスを確認できます。

    XVAファイル

  2. インポートが成功したら、右クリックして [ 開始] をクリックします。

    開始ファイル

  3. コンソール タブから、初期ネットワーク構成を使用して NetScaler コンソールを構成します。

    ネットワーク構成

  4. 初期ネットワーク構成が完了すると、ログインを求めるメッセージが表示されます。 次の資格情報を使用してログオンします – nsrecover/nsroot

    注記:

    ログオン後、初期ネットワーク構成を更新する場合は、「 networkconfig」と入力し、構成を更新して保存します。

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

  1. NetScaler サイトからダウンロードした .xva イメージ ファイルを使用して、ハイパーバイザーにインポートします。

  2. コンソール タブから、次の画像に示すように初期ネットワーク構成を使用して NetScaler コンソールを構成します。

  3. 初期ネットワーク構成が完了すると、ログインを求めるメッセージが表示されます。 次の資格情報を使用してログオンします – nsrecover/nsroot

    注記:

    • ログオン後、初期ネットワーク構成を更新する場合は、「 networkconfig」と入力し、構成を更新して保存します。
    • 構成に問題がある場合は、システムはエラー メッセージが表示されます。
    • システムが再起動し、設定が有効になるまで数分かかる場合があります。

プライマリノードのGUIから高可用性設定を展開する

プライマリノードとセカンダリノードの両方を登録した後、プライマリノードの GUI にログインして高可用性ペアを設定します。

注記:

プライマリ ノードから高可用性ペアを展開するには、次の手順に従います。

  1. プライマリ ノードの GUI にログインします。

  2. [設定] > [管理] > [高可用性設定] > [NetScaler コンソールの高可用性 (HA) の構成]に移動します。

  3. NetScaler コンソールの高可用性 (HA) の構成ページで、セカンダリ ノードの次の詳細を入力します。

  4. [構成]をクリックします。

  5. 確認 ページで、 はいをクリックします。

    HAペアを構成する

    プライマリ ノードとセカンダリ ノードの両方が再起動され、高可用性ペアが形成されます。これには通常約 10 分かかります。

    注記:

    • これで、 フローティング IP アドレスの使用を開始できます。
    • ノードの高可用性展開にはフローティング IP アドレスが必須です。
    • 高可用性の展開が完了したら、フローティング IP アドレスを使用して NetScaler コンソールのユーザー インターフェイスにアクセスします。
  6. デプロイメントを検証するには、 設定 > デプロイメント に移動します。

    注記:

    セカンダリノードが起動するまでに約 10 分かかる場合があります。 それまでは、セカンダリノードのステータスは ダウンと表示されます。

詳細については、 よくある質問をご覧ください。

高可用性を無効にする

NetScaler コンソールの高可用性ペアで高可用性を無効にし、ノードをスタンドアロンの NetScaler コンソール サーバーに変換できます。

注記:

プライマリ ノードから高可用性を無効にします。

高可用性を無効にするには:

  1. Web ブラウザで、NetScaler コンソール サーバーのプライマリ ノードの IP アドレスを入力します。

  2. ユーザー名 および パスワード フィールドに、管理者の資格情報を入力します。

  3. システム タブで、 デプロイメント に移動し、 HA の解除をクリックします。

    ダイアログボックスが表示されます。 高可用性の展開を解除するには、[ はい ] をクリックします。

高可用性を再展開する

スタンドアロン展開に対して高可用性を無効にした後、再度高可用性モードに再展開できます。 高可用性の再展開は、高可用性の最初の展開と同様です。 詳細については、 プライマリ ノード GUI から高可用性セットアップを展開するを参照してください。

注記:

NetScaler コンソールの高可用性を無効にした後、スタンドアロン ライセンス サーバーとして 1 つのコンソール ノードのみを使用します。 2 番目のノードを再プロビジョニングする必要があります。

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

次のいずれかの条件に遭遇すると、フェイルオーバーが発生します。

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

NetScaler Console HA ペアでは、構成ファイルがプライマリ ノードからセカンダリ ノードに自動的に同期され、データベースの物理的なストリーミング レプリケーションが行われます。

ただし、ストリーミング レプリケーション エラーが発生した場合は、[ データベースの同期 ] ボタンが表示されます。 データベースの同期 ボタンをクリックすると、データベースの同期プロセスを開始できます。

ログメッセージ

データベース同期の進行状況を表示するには、 ログの表示をクリックします。 データベース同期ログ メッセージが表示され、同期の進行状況の詳細をリアルタイムで確認できます。

ログメッセージの同期

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

ネットワーク リンクのダウンタイムにより両ノード間の通信が停止した場合、次のようになります。

たとえば、企業では 2 つの NetScaler Console ノードがプライマリとセカンダリとして導入されています。 ネットワーク リンクのダウンタイムが発生する可能性があるため、2 つの NetScaler Console ノード間の通信が完全に切断されます。 180 秒以上ハートビートの交換が行われないため、両方のノードは自身をプライマリ ノードであると見なします。 両方のノードはアクティブ ノードとして機能し、独自のデータベース インスタンスを実行します。

NetScaler Console 12.1 以降のリリースでは、ネットワーク リンクとハートビートが復元された後、このスプリット ブレイン状況は適切に処理されます。 高可用性同期は自動的に復元されます。 回復時間は、データとノード間のリンクの速度によって異なります。

注記:

スプリット ブレイン状態の間、古いプライマリ ノードで発生した変更は、高可用性で新しいプライマリが再結合されたときにリセットされます。 スプリットブレイン中に新しいプライマリノードで発生した変更はそのまま残ります。

ライセンス

NetScaler コンソール サーバーには、VIP、CICO、およびプールされた容量ライセンスを含めることができます。 ライセンスが NetScaler Console サーバーに発行されると、ライセンスはサーバーのホスト ID にバインドされます。 別の NetScaler Console サーバーにライセンスを割り当てることは制限されています。

NetScaler コンソールの高可用性ペアをライセンス サーバーとして構成すると、プライマリに適用されたライセンス ファイルがセカンダリに同期されます。

注記: