NIC の bonding (Linux)

Linuxの場合は簡単にNICを負荷分散、冗長化できるのでメモ、NICのメーカーや型番が違っていても問題ありません、スイッチも特別なものでなくても大丈夫、別のスイッチすれば尚二重化効果は大です。ただし、リピータハブに刺すのはダメなので注意。Windowsだと、Teamingと呼ばれる事が多いと思いますが、こちらはドライバにその機能がついてれば可能です(やったことないけど(笑))
※ネットワーク関係の設定 bond0でeth0とeth1をbonding

/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=192.168.1.0
NETMASK=255.255.255.0
IPADDR=192.168.1.10
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes

※bond0のモジュール設定、modeはタイプによっていろいろあるのでRHEL4のマニュアル参照(以下抜粋)

/etc/modprobe.conf
alias bond0 bonding
options bond0 mode=0 miimon=200
mode=  bondingモジュールに許可された 4つのポリシーの中から1つを指定します。このパラメータに有効な値は次の通りです。
0  耐障害性と負荷バランシングに対するラウンド ロビン ポリシーを設定します。ボンディングされたスレーブインターフェイスは使用できるものから順に、送受信を順次行ないます。
1  耐障害性に対するアクティブ バックアップ ポリシーを設定します。最初に使用できるボンディングされたスレーブインターフェイスによって送受信が行なわれます。ボンディングされた他のスレーブインターフェイスはアクティブなスレーブインターフェイスが失敗した場合のみ使用されます。
2  耐障害性と負荷バランシングに対する XOR (exclusive-or)ポリシーを設定します。この方法では、インターフェイスによって1スレーブ NIC の MACアドレスと受信要求の MACアドレスが適合されます。このリンクが確立されると、最初に使用できるインターフェイスから送信を順次行ないます。
3  対障害性用のブロードキャストポリシーを設定します。全ての送信は、全てのスレーブインターフェイスで送られます。
4  IEEE 802.3ad ダイナミックリンク集合ポリシーを設定します。同じスピードとデュープレックス設定を共有する集合グループを作成します。アクティブな集合体内の全てのスレーブ上で送信と受信をします。そして802.3ad 対応のスイッチを必要とします。
5  対障害性とロードバランシング用の送信ロードバランシング (TLB)ポリシーを設定します。外部への送信は、各スレーブインターフェイス上の現在のロードに従って配信されます。受信は現在のスレーブにより受け付けられます。もし受信するスレーブに障害があるともう一つのスレーブが問題のスレーブの MAC アドレスを引き取ります。
6  対障害性とロードバランシング用のアクティブロードバランシング (ALB)を設定します。IPV4 通信用の送信および受信ロードバランシングを含んでいます。受信のロードバランシングは ARP ネゴシエーションによって達成されます。 

※状態の確認

ifconfig
cat /proc/net/bonding/bond0

A.3. イーサネットパラメータ(Red Hat Enterprise Linux 4: リファレンスガイド)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA