スイッチ : Cisco Catalyst 6500 シリーズ スイッチ

Catalyst スイッチの Microsoft Network Load Balancing 用の設定例

2013 年 8 月 21 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2009 年 5 月 26 日) | 英語版 (2013 年 6 月 6 日) | フィードバック

概要

このドキュメントでは、Microsoft Network Load Balancing(NLB)と相互対話するために Cisco Catalyst スイッチを設定する方法について説明しています。

Shashank Singh によって貢献される、Cisco TAC エンジニア。

前提条件

要件

このドキュメントに関する特別な要件はありません。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

  • Cisco IOS® ソフトウェアを実行する Catalyst 6500 スイッチ

  • Cisco IOS(R) ソフトウェアが稼働する Catalyst 4500 スイッチ

  • Cisco IOS(R) ソフトウェアが稼働する Catalyst 3550 スイッチ

  • Cisco IOS(R) ソフトウェアが稼働する Catalyst 3560 スイッチ

  • Cisco IOS(R) ソフトウェアが稼働する Catalyst 3750 スイッチ

  • Microsoft Windows 2000/2003 Server

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。 

背景説明

Network Load Balancing(NLB)テクノロジーを使用することにより、クライアントからの要求を一連のサーバ全体に分散できます。 クライアントに対して許容できるパフォーマンス レベルを常に提供する目的で、ユーザが IIS ベースの Web サーバなどのステートレス アプリケーションの規模の拡大に対応して、クライアント負荷が増加する場合には追加のサーバを追加できるようにするために、Windows NLB がよく使用されます。 また、誤作動が発生したサーバによるダウンタイムも減少します。 Windows NLB 内の特定のメンバ サーバがダウンしていることやダウンしていたことをエンド ユーザが認識することはありません。

Network Load Balancing は、すべての Windows 2000 Server および Windows Server 2003 ファミリのオペレーティング システムの一部として、Microsoft から提供されるクラスタ処理テクノロジーです。 NLB では、多数のサーバ全体でネットワーク トラフィックのロード バランシングを行うために、分散アルゴリズムが使用されます。

NLB では、複数のサーバを 1 つのマルチキャスト グループに集約して、標準のマルチキャスト IP や MAC アドレスを使用を試みます。 同時に、すべてのクライアントに宛先 IP として単一のバーチャル IP が提供されますが、これはサーバが同じマルチキャスト グループに属していても、クライアントではこのことがまったく認識されないことを意味します。 VIP へは通常のユニキャスト アクセスが使用されます。

次のどちらかのモードで動作するように NLB を設定できます。

ユニキャスト モード

NLB のデフォルトの設定はユニキャスト モードです。 ユニキャスト モードでは、クラスタ内の各サーバの実際の MAC アドレスが NLB によって共通の NLB MAC アドレスへ置換されます。 クラスタ内のすべてのサーバには同じ MAC アドレスが設定され、そのアドレスに転送されたすべてのパケットはクラスタのすべてのメンバへ送信されます。 ただし、この設定の問題は、NLB クラスタのサーバが同じスイッチに接続されている場合、スイッチ上の 2 つのポートに同じ MAC アドレスを登録できないことです。 NLB では、クラスタ MAC アドレスにマスキングをすることでこの問題を解決しています。 スイッチでは、どの MAC アドレスがそのポートに関連付けられているのかを認識するために、イーサネット フレーム ヘッダー内の発信元 MAC アドレスが参照されます。 NLB によって偽の MAC アドレスが作成され、この偽の MAC アドレスが NLB クラスタ内の各サーバに割り当てられます。 各 NLB サーバには、メンバのホスト ID に基づいたそれぞれ異なる偽の MAC アドレスが NLB によって割り当てられます。 このアドレスはイーサネット フレーム ヘッダー内に表示されます。

たとえば、NLB クラスタ MAC アドレスは 00-bf-ac-10-00-01 です。 ユニキャスト モードの NLB はクラスタ MAC アドレスを取得し、各クラスタ メンバーのために、NLB メンバーで構成されているように NLB は第 2 オクテットを変更しますか。s ホストID。 たとえば、偽の MAC アドレス 00-01-ac-10-00-01 としてサーバ番号 1、ホスト ID 番号 2 には偽の MAC アドレス 00-02-ac-10-00-01 が設定されます(その後も同様)。 ユニークな MAC アドレスが各スイッチポートで登録されている場合、パケットはアレイのすべてのメンバーに渡されません; むしろパケットはまだそのポートに割り当てられる MAC アドレスに基づいて個々のスイッチポートに送信する必要があります。 NLB クラスタ メンバへ接続された各スイッチ ポートによってそれぞれの異なる MAC アドレスが登録される場合、フレームが NLB クラスタのすべてのメンバへ配信されるように、ARP ブロードキャストが使用されます。 ルータによってバーチャル IP アドレスの MAC アドレスの ARP 要求が送信される場合、上記の例に従って、応答には偽の MAC アドレスではなく、実際の NLB クラスタ MAC アドレス 00-bf-ac-10-00-01 が含まれた ARP ヘッダーが含まれます。

クライアントでは、イーサネット ヘッダーではなく、ARP ヘッダー内の MAC アドレスが使用されます。 スイッチでは、ARP ヘッダーではなく、イーサネット ヘッダー内の MAC アドレスが使用されます。 問題は、クライアントによってクラスタ MAC アドレス 00-bf-ac-10-00-01 である宛先 MAC アドレスが含まれた NLB クラスタへパケットが送信される場合に、スイッチによって MAC アドレス 00-bf-ac-10-00-01 の CAM テーブルが参照されることです。 NLB クラスタ MAC アドレス 00-bf-ac-10-00-01 で登録されているポートが存在しないため、フレームはすべてのスイッチ ポートに配布されます。 これによりスイッチのフラッディングが発生します。 スイッチのフラッディングは、大量のトラフィックが流れている場合で他のサーバが同じスイッチ上に設定されている場合に問題の原因となります。 スイッチのフラッディングに対するソリューションとしては、簡単なハブを NLB クラスタ メンバの直前に配置し、ハブをスイッチ ポートへアップリンクすることが挙げられます。 このソリューションでは、ハブに接続されている単一のスイッチ ポートによって NLB クラスタの MAC アドレスが認識されるため、NLB クラスタ MAC アドレスをマスクする必要もありません。 これによって、同じ MAC アドレスを登録する 2 つのポートの問題が回避されます。 クライアントによって NLB クラスタの MAC アドレスにパケットが送信される場合、パケットはハブに接続されているスイッチ ポートに直接送信されてから、NLB クラスタのメンバへ送信されます。

マルチキャスト モード

もう 1 つのソリューションは、MS NLB 設定 GUI でユニキャスト モードの代わりにマルチキャスト モードを使用することです。 マルチキャスト モードでは、システム管理者が MS NLB 設定 GUI 内の IGMP Multicast ボタンをクリックします。 このボタンを選択すると、マルチキャスト MAC アドレスを使用している仮想アドレス(0300.5e11.1111 など)の ARP に応答して、IGMP メンバシップ レポート パケットを送信するようにクラスタ メンバが指示されます。 IGMP スヌーピングがローカル スイッチ上でイネーブルになっている場合、これを通過する IGMP パケットはスヌーピングされます。 このように、時クラスタのためのクライアント ARP か。s 仮想 IP アドレスはマルチキャスト MAC たとえば 0300.5e11.1111 と、クラスタ応答します。 クライアントによってパケットが 0300.5e11.1111 に送信されると、ローカル スイッチにより、クラスタ メンバに接続されている各ポートにパケットが転送されます。 この場合、すべてのポートから ARP パケットのフラッディングが発生する可能性はありません。 マルチキャスト モードの問題としては、Cisco デバイスではマルチキャスト MAC アドレスが含まれるユニキャスト IP アドレスの ARP 応答が受け付けられないため、ローカル サブネットの外部からのアクセス時に仮想 IP アドレスが到達不可能になることが挙げられます。 従って ARPエントリの MAC 部分は不完全ように示します。 (出力を表示するためにコマンド show arp を発行して下さい。) ARP 応答内には MAC 部分が存在しないため、ARP エントリが ARP テーブル内に表示されることはありません。 最終的には、ARP 処理が中止され、ICMP Host unreachable がクライアントに返されています。 これを上書きするには、スタティック ARP エントリを使用して、下に示すように ARP テーブルにデータを入力します。 理論上は、これで Cisco デバイスによる mac-address-table へのデータ入力が可能になります。 たとえば、仮想 IP アドレスが 172.16.63.241 で、マルチキャスト MAC アドレスが 0300.5e11.1111 の場合、ARP テーブルに静的にデータ入力するには次のコマンドを使用します。

arp 172.16.63.241 0300.5e11.1111

ただし、着信パケットにはユニキャスト宛先 IP アドレスおよびマルチキャスト宛先 MAC が与えられているため、Cisco デバイスではこのエントリが無視され、クラスタにバインドされた各パケットがプロセス交換されます。 このプロセス交換を回避するには、ハードウェア内でクラスタにバインドされたパケットを交換するために、下に示すように静的な mac-address-table エントリを挿入します。

mac-address-table static 0300.5e11.1111 vlan 200 interface
fa2/3 fa2/4

注: 静的に マルチポートへの MAC をマッピング することは Catalyst 4500 スイッチのソフトウェアでだけサポートされます。 Catalyst 4500 のこの設定を使用するスイッチにより高CPU を引き起こすかもしれません。

 

注: Cisco Catalyst 6000/6500 シリーズ スイッチの場合、disable-snopping パラメータを追加する必要があります。 次に例を示します。

mac-address-table static 0300.5e11.1111 vlan 200
interface fa2/3 fa2/4 disable-snooping

disable-snooping パラメータは必須であり、Cisco Catalyst 6000/6500 シリーズ スイッチにだけ適用可能です。 この設定がない場合でも、動作に対する影響はありません。

設定

この項では、このドキュメントで説明する機能の設定に必要な情報を提供します。

注: このセクションで使用されているコマンドの詳細を調べるには、Command Lookup Tool登録ユーザ専用)を使用してください。

ネットワーク図

このドキュメントでは、次のネットワーク構成を使用しています。

設定

このドキュメントでは、このセクションで示す Catalyst 6509 設定を使用しています。

Cat6K#show running-config
Building configuration...
!
version 12.1
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname Cat6K
!
boot buffersize 126968
boot system flash slot0:c6sup11-jsv-mz.121-8a.E.bin
!
redundancy
main-cpu
auto-sync standard
ip subnet-zero
!
!
interface GigabitEthernet1/1
no ip address
shutdown
!
interface GigabitEthernet1/2
no ip address
shutdown
!
interface FastEthernet2/1
description "Uplink to the Default Gateway"
no ip address
switchport
switchport access vlan 100
!
interface FastEthernet2/2
no ip address
shutdown
!
interface FastEthernet2/3
description "Connection to Microsoft server"
no ip address
switchport
switchport access vlan 200
!
interface FastEthernet2/4
description "Connection to Microsoft server"
no ip address
switchport
switchport access vlan 200
!
interface FastEthernet2/5
no ip address
shutdown
!
interface FastEthernet2/48
no ip address
shutdown
!
interface Vlan1
no ip address
shutdown
!
mac-address-table static 0300.5e11.1111 vlan 200 interface fa2/3 fa2/4 disable-snooping

! --- Creating a static entry in the switch for the multicast virtual mac.

! --- fa2/3 & fa2/4 are the ports connected to server.

!--- The disable-snooping is applicable only for Cisco Catalyst 6000/6500 series switches

arp 172.16.63.241 0300.5e11.1111

! --- 172.16.63.241 is the Virtual IP of 2 servers

interface Vlan100
ip address 172.17.63.240 255.255.255.192

!--- Client Side Vlan
!
interface Vlan200
ip address 10.1.1.250 255.255.255.0

!--- Server Vlan

!--- Important: Configure the default gateway

!--- of the Microsoft Server to this address.

!
ip classless
ip route 0.0.0.0 0.0.0.0 172.16.63.193
no ip http server
!
line con 0
line vty 0 4
login
!
end

注: NLB クラスタでマルチキャスト モードを使用していることを確認してください。 Cisco では、IGMP 設定との競合が確認されているため、01 で開始されるマルチキャスト MAC アドレスを使用しないことを推奨いたします。

確認

ここでは、設定が正常に動作していることを確認します。

アウトプット インタープリタ ツール(OIT)(登録ユーザ専用)では、特定の show コマンドがサポートされています。 OIT を使用して、show コマンド出力の解析を表示できます。

  • 示して下さい mac-address-table -特定のインターフェイスまたは VLAN の仕様 MACアドレステーブル スタティックおよび動的エントリまたは MACアドレステーブル スタティックおよび動的エントリ 表示する。

    Cat6K#show mac-address-table 0300.5e11.1111

              Mac Address Table
    -------------------------------------------

    Vlan    Mac Address      vType        Ports
    ---- -----------      --------     -----
    200    0300.5e11.1111     STATIC    Fa2/3 Fa2/4
  • 示して下さい IP arp を-アドレス解決プロトコル(ARP) キャッシュを表示する。

    Cat6K#show ip arp
    Protocol  Address          Age (min)  Hardware Addr   Type   Interface
    Internet  172.16.1.1            -     0300.5e11.1111  ARPA   Vlan200

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。

関連情報


Cisco サポート コミュニティ - 特集対話

Cisco サポート コミュニティでは、フォーラムに参加して情報交換することができます。現在、このドキュメントに関連するトピックについて次のような対話が行われています。


Document ID: 107995