ロードバランシングまたはフェイルオーバー用のLinuxデュアルネットワークカードボンディング(bonding)  

ここで紹介したLinuxデュアルNICバインディングの実装は、2枚のNICを使用して1枚のNICになることです。 IPアドレスとパラレルリンクは、機能する論理リンクに集約されます。実際、このテクノロジはSunとCiscoに古くから存在しており、Trunking and Etherchannelテクノロジと呼ばれ、Linux 2.4.xカーネルでも使用されています。

ボンディングテクノロジの最も初期のアプリケーションは、クラスタノード間のデータ転送を改善するために、クラスタ上で設計されました。結合の原理について説明しましょう結合とは、ネットワークカードのpromiscモードから始める必要があることです。通常の状況下では、ネットワークカードは宛先ハードウェアアドレス(MACアドレス)のみを自分のMacのイーサネットフレームとして受け取り、ドライバの負担を減らすために他のデータフレームを除外することがわかっています。しかし、NICはpromiscと呼ばれる別のモードもサポートしています。このモードで実行されるtcpdumpなど、ネットワーク上のすべてのフレームを受信できます。ボンディングもこのモードで実行され、ドライバのMACアドレスは2つのネットワークカードのMacアドレスを同じに変更するように変更され、特定のMacのデータフレームを受信できます。対応するデータフレームは次に処理のためにボンドドライバに転送される。

同じIPアドレスを2枚のネットワークカードに直接設定することは不可能です。ボンディングモジュールにはカーネル2.4.12以降が利用可能です以前のバージョンはパッチで実装できます。

最初に、仮想ネットワークインターフェース設定ファイルを編集し、ネットワークカードのIPを指定します。

eth0が外部サービスネットワークカードで、ネットワークがデバッグされているとします; eth1は同時にeth0でサービスを提供したいネットワークカードです。 #cd /etc /sysconfig /network-scripts /#vi ifcfg-bond0次の情報はコピーコードで書かれており、元のifcfg-eth0設定と同様です。

そこで、次の文を実行し、ifcfg-eth0をコピーして変更することをお勧めします。 #1のCpのifcfg-eth0を以下のように変更のifcfg-bon0コピーコードのifcfg-bon0情報:DEVICE = bond0のBOOTPROTO =静的IPADDR = [IP] NETMASK = [MASK] BROADCAST = [BROADCAST] GATEWAY = [GATEWAY] ONBOOT = YES TYPE次のようにコード=イーサネットIIの構成実際のカード
をコピー

のifcfg-eth0のを変更します。DEVICE = eth0のBOOTPROTO = = ONBOOTなしはいMASTER = bond0の#あなたが書いていない場合はそうでない場合は、= YES#を第四ステップSLAVEを行う必要があります次のように、あなたは第四ステップUSERCTLを行う必要があります書き込み= yesのコードは同様のifcfg-eth1の修復コピーします。DEVICE = eth1のBOOTPROTO = = ONBOOTなしはいMASTER = bond0の#あなたが書いていない場合はそうでない場合は、= YES#を第四ステップSLAVEを行う必要があります書く、あなたは4番目のステップを実行する必要があります。USERCTL =はいコード3をコピーし、モジュールをロードし、システムにボンディングをサポートさせます。デフォルトでは、カーネルはボンディングにサポートを持っています。/etc/modprobe.conf 2行のエイリアスを追加するbond0ボンディングオプションbond0 miimon = 100モード= 1コピーコードの説明:modeはbond0の動作モードを指定します。0および1が一般的です。0は負荷分散モード、1はマスタースレーブモード、あなたの必要性に従ってホーム。一般的に使用されているのは0、1、2です。 Mode = 0は、負荷分散(ラウンドロビン)が負荷分散モードであり、両方のネットワークカードが機能することを示します。 Mode = 1は、フォールトトレランス(active-backup)が冗長性を提供することを示します(動作モードはアクティブ/スタンバイモードです)、つまり、デフォルトでは一方のネットワークカードだけが動作し、もう一方はバックアップに使用されます。ボンディングはリンクモニタリング、つまりホストからスイッチへのリンクが接続されているかどうかだけを提供します。スイッチの外部リンクだけがダウンしていて、スイッチ自体に障害がない場合、ボンディングは問題がないかのようにリンクを使用し続けます。 Miimonはリンクモニタリングに使用されます。たとえば、miimon = 100の場合、システムは100msごとにリンク接続ステータスを監視し、1つの回線に障害が発生した場合は別の回線に転送します。

4、ブートスクリプトを増やします。

/etc/rc.d/rc.localにifenslave bond0 eth0 eth1コピーコードを追加し、eth0とeth1の両方がMASTERとSLAVEを書き込んだ場合は、上記のようになります。手順を実行しなくても構いません。

5、再起動

再起動またはサービスネットワークの再起動で結果を確認できます。

6、テスト

アドレスをpingすると、もちろんアドレスをpingできます。ネットワークにアクセスできない場合は、ifcfg-bond0のネットワーク設定を確認してください。

次にpingが壊れていなければ、ネットワークケーブルを抜いて、メインラインではなくバックアップラインを引いてから、再び2分間差し込みます。

現時点で別のネットワークケーブルを取り外してください。pingのタイムアウトが表示されているか、カードがそこにあることがわかります。10〜30秒待ってからpingを続行してください。

テストは成功しました。

Copyright © Windowsの知識 All Rights Reserved