高可用性展開を構成する
高可用性 (HA) とは、サービスの中断なしに常にユーザーが利用できるシステムを指します。高可用性セットアップは、システムのダウンタイム、ネットワークまたはアプリケーションの障害時に不可欠であり、あらゆる企業にとって重要な要件です。同じ構成を持つ2つのNetScaler® ADMノードをアクティブ/パッシブモードで高可用性展開することで、中断のない運用が提供されます。
展開シナリオ
シナリオ(/en-us/netscaler-application-delivery-management-software/media/deploymentscenario.png)
注
単一のNetScaler ADM HA展開で検証済みの最大ストレージ制限は3 TBです。詳細については、展開ガイドを参照してください。
重要
HTTPSを使用してNetScaler ADM 12.1ビルド48.18以降のバージョンにアクセスするには:
高可用性モードでNetScaler ADMをロードバランシングするようにNetScalerインスタンスを構成している場合は、まずNetScalerインスタンスを削除します。次に、高可用性モードでNetScaler ADMにアクセスするためにフローティングIPアドレスを構成します。
NetScaler ADMにおける高可用性展開の利点は次のとおりです。
-
プライマリノードとセカンダリノード間のハートビートを監視するための改善されたメカニズム。
-
論理的な双方向レプリケーションではなく、データベースの物理ストリーミングレプリケーションを提供します。
-
個別のNetScalerロードバランサーの必要性を排除するために、プライマリノードにフローティングIPアドレスを構成する機能。
-
フローティングIPアドレスを使用してNetScaler ADMユーザーインターフェイスに簡単にアクセスできます。
-
NetScaler ADMユーザーインターフェイスはプライマリノードでのみ提供されます。プライマリノードを使用することで、セカンダリノードにアクセスして変更を加えるリスクを排除できます。
-
フローティングIPアドレスを設定することでフェイルオーバー状況に対応し、インスタンスを再設定する必要がなくなります。
-
スプリットブレイン状況を検出して処理する組み込み機能を提供します。
次の表は、高可用性展開で使用される用語について説明しています。
| 用語 | 説明 |
|---|---|
| プライマリノード | 高可用性展開に登録された最初のノード。 |
| セカンダリノード | 高可用性展開に登録された2番目のノード。 |
| ハートビート | 高可用性セットアップでプライマリノードとセカンダリノード間でメッセージを交換するために使用されるメカニズム。メッセージは、各ノード上のアプリケーションのステータスと健全性を判断します。 |
| フローティングIPアドレス | フローティングIPは、同じサブネット内の1つのノードから別のノードに瞬時に移動できるIPアドレスです。内部的には、プライマリノードのネットワークインターフェース上のエイリアスとして設定されます。フェイルオーバーが発生した場合、フローティングIPアドレスは古いプライマリから新しいプライマリにシームレスに移動します。クライアントが高可用性ノードと単一のIPアドレスを使用して通信できるため、高可用性セットアップで役立ちます。 |
注
ポートとプロトコルの詳細については、「ポート」を参照してください。
高可用性アーキテクチャのコンポーネント
次の図は、高可用性モードで展開された2つのNetScaler ADMノードのアーキテクチャを示しています。
HAアーキテクチャ(/en-us/netscaler-application-delivery-management-software/media/haarchitecture.png)
高可用性展開では、1つのNetScaler ADMノードがプライマリノード(MAS 1)として構成され、もう1つがセカンダリノード(MAS 2)として構成されます。プライマリノードが何らかの理由でダウンした場合、セカンダリノードが新しいプライマリノードとして引き継ぎます。
監視ツール
監視ツールは、フェイルオーバー状況の監視、アラート、および処理に使用される内部プロセスです。このツールは、高可用性環境の各ノードでアクティブに実行されています。サブシステムの起動、両ノードでのデータベースの初期化、フェイルオーバー時のプライマリノードまたはセカンダリノードの決定などを担当します。
プライマリノード
プライマリノードは接続を受け入れ、インスタンスを管理します。AppFlow®、SNMP、LogStream、syslogなどのすべてのプロセスはプライマリノードによって管理されます。NetScaler ADMユーザーインターフェイスへのアクセスはプライマリノードで利用可能です。フローティングIPアドレスはプライマリノードで構成されます。
セカンダリノード
セカンダリノードは、プライマリノードから送信されるハートビートメッセージをリッスンします。セカンダリノード上のデータベースは読み取りレプリカモードのみです。セカンダリノードではどのプロセスもアクティブではなく、NetScaler ADMユーザーインターフェイスはセカンダリノードではアクセスできません。
物理ストリーミングレプリケーション
プライマリノードとセカンダリノードはハートビートメカニズムを介して同期します。データベースの物理ストリーミングレプリケーションにより、セカンダリノードは読み取りレプリカモードで起動します。セカンダリノードはプライマリノードから受信したハートビートメッセージをリッスンします。セカンダリノードが180秒間ハートビートを受信しない場合、プライマリノードはダウンしていると見なされます。その後、セカンダリノードがプライマリノードとして引き継ぎます。
ハートビートメッセージ
ハートビートメッセージは、プライマリノードとセカンダリノード間で送受信されるユーザーデータグラムパケット(UDP)です。ノードの状態、健全性、プロセスなどに関する情報を交換するために、NetScaler ADMのすべてのサブシステムとデータベースを監視します。この情報は、高可用性ノード間で毎秒共有されます。フェイルオーバーまたは高可用性状態の切断が発生した場合、管理者にアラートとして通知が送信されます。
フローティングIPアドレス
浮動IPアドレスは、高可用性セットアップのプライマリノードに関連付けられています。これは、クライアントがプライマリノードのNetScaler ADMに接続するために使用できる、プライマリノードIPアドレスに与えられたエイリアスです。浮動IPアドレスはプライマリノードで構成されているため、フェイルオーバーの場合でもインスタンスの再構成は不要です。インスタンスは、新しいプライマリに到達するために同じIPアドレスに再接続します。
注意すべき重要な点
-
高可用性セットアップでは、両方のNetScaler ADMノードがアクティブ/パッシブモードで展開されます。これらは同じサブネット上にあり、同じソフトウェアバージョンとビルドを使用し、同じ構成である必要があります。
-
浮動IPアドレス:
-
浮動IPアドレスはプライマリノードで構成されます。
-
フェイルオーバーが発生した場合、インスタンスを再構成する必要はありません。
-
ユーザーインターフェイスから高可用性ノードにアクセスするには、プライマリノードIPまたは浮動IPアドレスのいずれかを使用できます。注意Citrixでは、ユーザーインターフェイスにアクセスするために浮動IPアドレスを使用することをお勧めします。
-
-
データベース:
-
高可用性セットアップでは、すべての構成ファイルが1分間隔でプライマリノードからセカンダリノードに自動的に同期されます。
-
データベースの同期は、データベースの物理レプリケーションによって即座に行われます。
-
セカンダリノード上のデータベースは読み取りレプリカモードです。
-
-
NetScaler ADMのアップグレード:
-
内部プロセスにより、NetScaler ADMは以前のバージョンから暗黙的にアップグレードされます。注アップグレードが成功したら、フローティングIPアドレスを設定する必要があります。
-
-
ハートビートの送受信のために、両方のノードでUDPデフォルトポート5005が利用可能です。
-
MACアドレスハイパーバイザーの「MACアドレスの変更」オプションの設定は、仮想マシンが受信するトラフィックに影響します。フェイルオーバー後にフローティングIPアドレスが新しいプライマリノードにシームレスに移動するように、仮想スイッチでMACアドレスの変更を有効にしてください。 たとえば、VMware ESXiでNetScaler ADMを高可用性で展開する場合、MACアドレスの変更を受け入れるようにしてください。ESXiでは、アクティブなMACアドレスを初期MACアドレス以外のものに変更する要求が許可されるようになりました。注ESXIバージョン6.7に展開されたNetScaler ADMの場合、「MACアドレスの変更」オプションを「拒否」に設定することもできます。フェイルオーバー後、「MACアドレスの変更」設定に関係なく、トラフィックは新しいプライマリノードにシームレスに流れます。したがって、MACアドレスの変更を受け入れることは必須ではありません。NetScaler ADMがESXIバージョン6.7より低いバージョンに展開されている場合は、「MACアドレスの変更」オプションが「許可」に設定されていることを確認してください。

前提条件
NetScaler ADMノードの高可用性を設定する前に、次の前提条件に注意してください。
-
NetScaler ADMの高可用性展開は、NetScaler ADMバージョン12.0ビルド51.24以降でサポートされています。
-
NetScalerサイトからNetScaler Application Delivery Managementイメージファイル(.xva)をダウンロードします:
<https://www.citrix.com/downloads/>
Citrixは、スケジューリング動作とネットワーク遅延を改善するために、CPU優先度(仮想マシンプロパティ内)を最高レベルに設定することを推奨します。
次の表に、仮想コンピューティングリソースの最小要件を示します。
| コンポーネント | 要件 |
|---|---|
| RAM | 32 GB |
| 仮想CPU | 8 CPU |
| ストレージ容量 | Citrixでは、NetScaler ADMの展開にソリッドステートドライブ(SSD)テクノロジーを使用することを推奨しています。デフォルト値は120 GBです。実際のストレージ要件は、NetScaler ADMのサイジング見積もりによって異なります。NetScaler ADMのストレージ要件が120 GBを超える場合は、追加のディスクを接続する必要があります。注 追加できるディスクは1つだけです。Citrixでは、初期展開時にストレージを見積もり、追加ディスクを接続することを推奨しています。詳細については、「NetScaler ADMへの追加ディスクの接続方法」を参照してください。 |
| 仮想ネットワークインターフェイス | 1 |
| スループット | 1 Gbpsまたは100 Mbps |
| ハイパーバイザー | バージョン |
| シトリックス ハイパーバイザー | 6.2および6.5 |
| ヴイエムウェア ESXi | 5.5 および 6.0 |
| マイクロソフト Hyper-V | 2012 R2 |
| リナックス KVM | Ubuntu および Fedora |
高可用性モードでNetScaler ADMをセットアップするには
-
最初のサーバー(プライマリノード)を登録して展開します。
-
2番目のサーバー(セカンダリノード)を登録して展開します。
-
高可用性セットアップのためにプライマリノードとセカンダリノードを展開します。
最初のサーバー(プライマリノード)を登録して展開する
最初のノードを登録するには:
-
NetScalerサイトからダウンロードした.xvaイメージファイルを使用して、ハイパーバイザーにインポートします。注.xvaイメージファイルのインポートと起動には数分かかる場合があります。画面下部にステータスが表示されます。「XVAファイル」(/en-us/netscaler-application-delivery-management-software/media/importvm.png)
-
インポートが成功したら、右クリックしてStartをクリックします。「ファイルの開始」(/en-us/netscaler-application-delivery-management-software/media/startvm.png)
-
Consoleタブから、NetScaler ADMを初期ネットワーク構成で設定します。「ネットワーク構成」(/en-us/netscaler-application-delivery-management-software/media/admha-initialconfig.png)
-
初期ネットワーク構成が完了すると、システムはログインを促します。次の資格情報(nsrecover/nsroot)を使用してログオンします。注ログオン後、初期ネットワーク構成を更新する場合は、
networkconfigと入力し、構成を更新して保存します。 -
プライマリノードを展開するには、/mps/deployment_type.pyと入力します。NetScaler ADM展開構成メニューが表示されます。「構成メニュー」(/en-us/netscaler-application-delivery-management-software/media/ha-deploymentconfig.png)
-
NetScaler ADMサーバーをプライマリノードとして登録するには、1を選択します。「プライマリノードの登録」(/en-us/netscaler-application-delivery-management-software/media/drstep4.png)
-
コンソールは、NetScaler ADMスタンドアロン展開を選択するように促します。高可用性としての展開を確認するには、Noと入力します。「展開の確認」(/en-us/netscaler-application-delivery-management-software/media/deploystep2.png)
-
コンソールは、最初のサーバーノードを選択するように促します。ノードを最初のノードとして確認するには、Yesと入力します。ノードの確認(/en-us/netscaler-application-delivery-management-software/media/deploystep3.png)
-
コンソールはシステムの再起動を促します。Yes と入力して再起動します。システムの再起動(/en-us/netscaler-application-delivery-management-software/media/deploystep4.png)システムが再起動し、NetScaler ADMユーザーインターフェイスでプライマリノードとして表示されます。
2番目のサーバー(セカンダリノード)を登録して展開する
-
NetScalerサイトからダウンロードした**.xva**イメージファイルを使用し、ハイパーバイザーにインポートします。
-
Consoleタブから、次の図に示すようにNetScaler ADMを初期ネットワーク構成で構成します。
-
初期ネットワーク構成が完了すると、システムはログインを促します。次の資格情報を使用してログオンします – nsrecover/nsroot。注ログオン後、初期ネットワーク構成を更新したい場合は、
networkconfigと入力し、構成を更新して保存します。 -
セカンダリノードを展開するには、/mps/deployment_type.pyと入力します。NetScaler ADM展開構成メニューが表示されます。
-
NetScaler ADMサーバーをセカンダリノードとして登録するには、1を選択します。
-
コンソールは、NetScaler ADMをスタンドアロン展開として選択するように促します。高可用性としての展開を確認するには、Noと入力します。
-
コンソールは、最初のサーバーノードを選択するように促します。ノードを2番目のサーバーとして確認するには、Noと入力します。2番目のノードの確認(/en-us/netscaler-application-delivery-management-software/media/deploystep5.png)
-
コンソールは、プライマリノードのIPアドレスとパスワードの入力を求めます。IPアドレスを入力してください(/en-us/netscaler-application-delivery-management-software/media/deploystep6.png)
-
コンソールは、フローティングIPアドレスの入力を求めます。フローティングIPを入力してください(/en-us/netscaler-application-delivery-management-software/media/deploystep7.png)
-
コンソールは、システムの再起動を求めます。再起動するには「Yes」と入力します。注
-
ノードの高可用性展開には、フローティングIPアドレスが必須です。
-
設定に問題がある場合、システムはエラーメッセージを表示します。
-
システムが再起動し、設定が有効になるまでに数分かかります。
-
プライマリノードとセカンダリノードを高可用性ペアとして展開する
登録後、プライマリノードとセカンダリノードの両方がNetScaler ADMユーザーインターフェイスに表示されます。これらのノードを高可用性ペアとして展開します。
注
-
ノードを高可用性ペアとして展開する前に、初期ネットワーク設定後、セカンダリノードが再起動を完了していることを確認してください。
-
高可用性展開が完了したら、フローティングIPアドレスを使用してNetScaler ADMユーザーインターフェイスにアクセスします。
ノードを高可用性ペアとして展開するには:
-
Webブラウザを開き、最初のNetScaler ADMサーバーノードのIPアドレスを入力します。
-
ユーザー名とパスワードのフィールドに、管理者資格情報を入力します。
-
ホームページで開始をクリックします。
-
展開タイプとして高可用性モードで展開された2台のサーバーを選択し、次へをクリックします。
-
展開ページで展開をクリックします。
-
確認メッセージが表示されます。はいをクリックします。NetScaler ADMが再起動し、構成が有効になるまでに約10分かかります。注これでフローティングIPアドレスの使用を開始できます。
-
管理者資格情報を使用してNetScaler ADMにログオンし、ホームページで開始をクリックし、必要に応じて、以下を完了します。
-
NetScalerインスタンスを追加
-
顧客IDを構成注スキップをクリックして後で完了することもできます。その後、完了をクリックします。
-
-
設定 > 展開に移動して、展開を検証します。詳細については、よくある質問を参照してください。
高可用性を無効にする
NetScaler ADM高可用性ペアで高可用性を無効にし、ノードをスタンドアロンのNetScaler ADMサーバーに変換できます。
注
プライマリノードから高可用性を無効にします。
高可用性を無効にするには:
-
Webブラウザで、NetScaler ADMサーバーのプライマリノードのIPアドレスを入力します。
-
ユーザー名とパスワードのフィールドに、管理者資格情報を入力します。
-
システムタブで、展開に移動し、HAの解除をクリックします。ダイアログボックスが表示されます。はいをクリックして、高可用性展開を解除します。
高可用性を再展開する
スタンドアロン展開への高可用性を無効にした後、高可用性モードに再度再展開できます。高可用性の再展開は、高可用性の初回展開と同様です。詳細については、プライマリノードとセカンダリノードを高可用性ペアとして展開するを参照してください。
注:
NetScaler Consoleの高可用性を無効にした後、スタンドアロンライセンスサーバーとして1つのコンソールノードのみを使用してください。2番目のノードは再プロビジョニングする必要があります。
高可用性フェールオーバーシナリオ
以下のいずれかの条件が発生した場合にフェイルオーバーが発生します。
-
ノード障害: プライマリノードがダウンし、180秒間プライマリノードからのハートビートが検出されない場合。
-
アプリケーションヘルス障害: プライマリノードは稼働中ですが、NetScaler ADMのプロセスのいずれかがダウンしている場合。
データベース同期ログメッセージの表示
NetScaler ADM HAペアでは、設定ファイルはプライマリノードからセカンダリノードに自動的に同期され、データベースの物理ストリーミングレプリケーションが行われます。
ただし、ストリーミングレプリケーションエラーが発生した場合は、Sync Databaseボタンが表示されます。Sync Databaseボタンをクリックすると、データベース同期プロセスを開始できます。
ログメッセージ(/en-us/netscaler-application-delivery-management-software/media/log-message-ha.png)
データベース同期の進行状況を表示するには、View Logsをクリックします。Database Sync Logsメッセージが表示され、同期の進行状況の詳細をリアルタイムで確認できます。
ログメッセージの同期(/en-us/netscaler-application-delivery-management-software/media/log-message-ha-sync.png)
スプリットブレインシナリオ
ネットワークリンクのダウンタイムにより両ノード間で通信がない場合、次のようになります。
-
プライマリノードはプライマリとして動作し続けます
-
セカンダリノードはハートビートの受信に失敗したため、プライマリとして引き継ぎます
-
両ノードは個別のデータベースインスタンスを実行します
たとえば、ある企業では2つのNetScaler ADMノードがプライマリとセカンダリとして展開されています。ネットワークリンクのダウンタイムの可能性により、2つのNetScaler ADMノード間の通信が完全に途絶えます。180秒以上ハートビートの交換がないため、両ノードは自身をプライマリノードと見なします。両ノードはアクティブノードとして機能し、独自のデータベースインスタンスを実行します。
NetScaler ADM 12.1以降のリリースでは、ネットワークリンクとハートビートが復元された後、このスプリットブレイン状況は適切に処理されます。高可用性同期は自動的に復元されます。回復時間は、ノード間のリンクのデータ量と速度に依存します。
注
スプリットブレイン状態の間、古いプライマリノードで発生した変更は、高可用性に再結合されると新しいプライマリによってリセットされます。スプリットブレイン中に新しいプライマリノードで発生した変更はそのまま維持されます。