NetScalerアプライアンスのネットワークとVLANのベストプラクティス
NetScalerアプライアンスはVLANを使用して、どのインターフェイスをどのトラフィックに使用する必要があるかを判断します。また、NetScalerアプライアンスはスパニングツリーに参加しません。適切なVLAN構成がないと、NetScalerアプライアンスはどのインターフェイスを使用するかを判断できず、スイッチやルーターというよりはHUBのように機能する可能性があります。つまり、NetScalerアプライアンスは各会話ですべてのインターフェイスを使用できます。
VLAN の設定ミスの症状
VLANの構成ミスの問題は、パフォーマンスの問題、接続を確立できない、セッションがランダムに切断される、深刻な状況ではNetScalerアプライアンス自体とは無関係に見えるネットワークの中断など、さまざまな形で現れます。NetScalerアプライアンスは、ネットワークとのやりとりの性質によっては、MACの移動、インターフェイスのミュート、管理インターフェイスの送受信バッファオーバーフローを報告する場合もあります。
MAC移動(nic_tot_bdg_mac_moved):この問題は、NetScalerアプライアンスが使用するインターフェイスを適切に決定できなかったため、同じデバイス(MACアドレス)との通信に複数のインターフェイスを使用していることを示しています。
ミュートされたインターフェイス(nic_err_bdg_muted): この問題は、NetScalerアプライアンスがVLAN構成の問題によりルーティングループを作成していることを検出し、ネットワークの停止を防ぐために問題のある1つ以上のインターフェイスをシャットダウンしたことを示しています。
インターフェイスバッファオーバーフロー。通常は管理インターフェイスを指します (nic_err_tx_overflow): この問題は、管理インターフェイスを介して送信されるトラフィックが多すぎる場合に発生する可能性があります。NetScalerアプライアンスの管理インターフェイスは、大量のトラフィックを処理するようには設計されていません。これは、NetScalerアプライアンスが運用データトラフィックに管理インターフェイスを使用するきっかけとなるネットワークやVLANの設定ミスが原因である可能性があります。これは、NetScalerアプライアンスがNSIP(NSVLAN)のVLAN/サブネット上のトラフィックを通常の本番トラフィックと区別する方法がないために発生することがよくあります。NSIPは、ワークステーションやサーバなどの本番デバイスとは別のVLANとサブネットに配置することを強く推奨します。
オーファンACK(tcp_err_orphan_ackカウンター):この問題は、NetScalerアプライアンスが予期していなかったACKパケットを受信したことを示します。通常、ACKのトラフィックの送信元とは異なるインターフェイスで送信されます。この状況は、NetScalerアプライアンスが、ターゲットデバイスがNetScalerアプライアンスとの通信に通常使用するインターフェイスとは異なるインターフェイスで送信する(MACの移動と関連してよく見られる)VLANの構成ミスが原因である可能性があります。
再送信または再送信のギブアップ率が高い(カウンター:tcp_err_retransmit_giveups、tcp_err_7th_retransmit、その他のさまざまな再送信カウンター):NetScalerアプライアンスは、TCPパケットの再送信を合計7回試行してから、接続をあきらめて終了します。この状況はネットワークの状態によって発生することもありますが、多くの場合、VLAN とインターフェイスの設定ミスが原因で発生します。
高可用性スプリットブレーン:スプリットブレインとは、両方の高可用性ノードが自分たちをプライマリと見なす状態で、IPアドレスが重複し、NetScalerアプライアンスの機能が失われます。これは、2つの高可用性ノードが、NSIPを使用してUDPポート3003で高可用性ハートビートを使用して、どのインターフェイスでも相互に通信できない場合に発生します。これは通常、NetScalerアプライアンスインターフェイスのネイティブVLANがNetScalerアプライアンス間で接続されていないというVLANの構成ミスが原因です。
VLAN とネットワーク構成のベストプラクティス
-
各サブネットは VLAN に関連付ける必要があります。
-
(ネットワークの設計に応じて)複数のサブネットを同じ VLAN に関連付けることができます。
-
各 VLAN は 1 つのインターフェイスにのみ関連付ける必要があります(この説明では、LA チャネルは 1 つのインターフェイスとしてカウントされます)。
-
インターフェイスに複数のサブネットを関連付ける必要がある場合は、サブネットにタグを付ける必要があります。
-
一般に信じられていることとは反対に、NetScalerアプライアンスのMacベース転送(MBF)機能はこの種の問題を軽減するようには設計されていません。MBFは、主にNetScalerアプライアンスのDSR(Direct Server Return)モード向けに設計されており、ほとんどの環境ではほとんど使用されません(バックエンドサーバーからのリターンパスでトラフィックがNetScalerアプライアンスを意図的にバイパスできるように設計されています)。MBF は VLAN の問題を隠す場合がありますが、この種の問題を解決するうえで信頼すべきではありません。
-
NetScalerアプライアンスのすべてのインターフェイスにはネイティブVLANが必要です(ネイティブVLANがオプションであるCiscoとは異なります)。ただし、インターフェイスのtagAll設定を使用して、タグ付けされていないトラフィックが問題のインターフェイスから出ないようにできます。
-
ネットワーク設計に必要な場合は、ネイティブ VLAN にタグを付けることができます (これはインターフェイスの tagAll オプションです)。
-
NetScalerアプライアンスのNSIPのサブネットのVLANは特殊なケースです。これは NSVLAN と呼ばれます。概念は同じですが、構成するコマンドが異なり、NSVLANへの変更を有効にするには、NetScalerアプライアンスを再起動する必要があります。NSIPと同じサブネットを共有するSNIPにVLANをバインドしようとすると、「操作は許可されていません」というメッセージが表示されます。これは、代わりに NSVLAN コマンドを使用する必要があるためです。また、一部のファームウェアバージョンでは、
add VLAN
コマンドを使用してNSVLAN番号が存在する場合、NSVLANを設定できません。VLANを削除してから、NSVLANを再設定するだけです。 -
高可用性ハートビートは常にそれぞれのインターフェースのネイティブ VLAN を使用します (インターフェースで tagAll オプションが設定されている場合はオプションでタグ付けできます)。
-
高可用性ペアの2つのノード上の少なくとも1つのネイティブVLANセット間で通信が必要です(直接通信することも、ルーター経由で行うこともできます)。ネイティブVLANは高可用性ハートビートに使用されます。NetScalerアプライアンスがどのインターフェイス上のネイティブVLAN間でも通信できない場合、高可用性フェイルオーバーが発生し、両方のNetScalerアプライアンスが自分たちをプライマリと見なすスプリットブレイン状態になる可能性があります(とりわけIPアドレスが重複する)。
-
NetScalerアプライアンスはスパニングツリーに参加しません。そのため、NetScalerアプライアンスを使用する場合、スパニングツリーを使用してインターフェイスの冗長性を提供することはできません。代わりに、この目的にはリンクアグリゲーション(LACPまたは手動LAG)を使用してください。
注:複数の物理スイッチ間でリンクアグリゲーションを行う場合は、Cisco のスイッチスタックなどの機能を使用して、スイッチを仮想スイッチとして構成する必要があります。
-
高可用性同期とコマンド伝播は、デフォルトで NSIP/NSVLAN を使用します。これらを別の VLAN に分離するには、コマンドの SyncVLAN オプションを使用できます。
set HA node
-
NetScalerアプライアンスのデフォルト構成には、管理インターフェイス(0/1または0/2)が管理トラフィックのみに制限されていることを示すようなビルトインはありません。この制限は、エンドユーザが VLAN 設定を通じて適用する必要があります。管理インターフェイスはデータトラフィックを処理するようには設計されていないため、ネットワーク設計ではこの点を考慮する必要があります。NetScalerアプライアンスのマザーボードに含まれる管理インターフェイスには、CRCオフロード、より大きなパケットバッファ、その他の最適化などのさまざまなオフロード機能がないため、大量のトラフィックの処理効率が大幅に低下します。本番データトラフィックと管理トラフィックを分離するには、NSIPをデータトラフィックと同じサブネット/VLANに配置しないでください。
-
管理インターフェイスを使用して管理トラフィックを伝送する場合は、デフォルトルートを NSIP(NSVLAN)のサブネット以外のサブネットに配置するのがベストプラクティスです。
多くの構成では、(インターネットシナリオの)ワークステーション通信にはデフォルトルートが使用されます。デフォルトルートがNSIPと同じサブネット上にある場合、ADCアプライアンスは管理インターフェイスを使用してデータトラフィックを送受信できます。このようなデータトラフィックの使用は、管理インターフェイスに過負荷をかける可能性があります。
-
また、SDX:SVM、XenServer、およびすべてのNetScalerインスタンスのNSIPは、同じVLANとサブネット上にある必要があります。SDX アプライアンスには、 SVM/Xen/インスタンス間の通信を可能にするバックプレーンはありません 。これらが同じ VLAN /サブネット/インターフェイス上にない場合、それらの間のトラフィックは物理ハードウェアから出て、ネットワーク上でルーティングされてから戻る必要があります。
この設定では、インスタンスと SVM 間の接続に明らかな問題が発生する可能性があるため、お勧めしません。この場合によく見られる症状は、問題のVPXインスタンスのSVMに黄色のインスタンス状態インジケータが表示され、SVMを使用してVPXインスタンスを再構成できないことです。
-
一部の VLAN がサブネットにバインドされ、一部がバインドされていない場合、高可用性フェールオーバー中に、VLAN にバインドされていないサブネットの IP アドレスには GARP パケットは送信されません。この構成では、高可用性フェイルオーバー中に接続が切断されたり、接続の問題が発生したりする可能性があります。この問題は、NetScalerアプライアンスがVMAC構成でないNetScalerアプライアンスのネットワークMAC所有権IPアドレスの変更を通知できないために発生します。
この症状としては、高可用性フェイルオーバー中または後に、以前のプライマリNetScalerアプライアンスのip_tot_floating_ip_errカウンターが数秒以上増加します。これは、ネットワークがGARPパケットを受信または処理せず、ネットワークが新しいセカンダリNetScalerアプライアンスにデータを送信し続けていることを示しています。