aquadrops *

Technologies and Labs, Lifelog and more.

2008-11-10

ネットワークの冗長化・bondingを試す。

すごく今更感ではありますが、Linuxでネットワークの冗長化・bondingを試してみました。

試した機器は下記の通り。

サーバー:PowerEdge SC1435 × 2台、PowerEdge 2650 × 1台

スイッチングハブ:NETGEAR FS526T

サーバー側のNICはいずれもtg3ドライバのものが2基ずつ搭載されています。

2つのNICを束ねてload balancingしてみます。

  1. /etc/modules.conf に bond0デバイスを定義する。

    alias bond0 bonding

  2. /etc/sysconfig/network-scripts/ifcfg-bond0 を作成する。

基本的にはeth0をそのままコピペして、デバイス名を変えて、bondingのオプションを追記します。</p> 
> DEVICE=<span style="color: #99ccff;">bond0</span>

> BOOTPROTO=static

> IPADDR=10.x.x.1

> NETMASK=255.255.0.0

> NETWORK=10.x.x.0

> ONBOOT=yes

> <span style="color: #99ccff;">BONDING_OPTS=&#8221;mode=0 miimon=100&#8243;</span>
  1. /etc/sysconfig/network-scripts/ifcfg-eth0を修正
> DEVICE=eth0

> ONBOOT=yes

> <span style="color: #99ccff;">MASTER=bond0<br /> SLAVE=yes</span>

> BOOTPROTO=none
  1. /etc/sysconfig/network-scripts/ifcfg-eth1を修正
> DEVICE=eth1

> ONBOOT=yes

> <span style="color: #99ccff;">MASTER=bond0<br /> SLAVE=yes</span>

> BOOTPROTO=none
  1. ネットワークを再起動
> \# /etc/init.d/network restart
  1. ステータスを確認
> \# ifconfig bond0

> \# cat /proc/net/bond0

この場合、

bondingされていないfirewall(GbE接続)に対しては180Mbps程度のスループットが出たのですが、

bondingされている機器同士(PE SC1435間、PE SC1435←→PE 2650間)だと10Mbpsも出ない、という不可解な状況となってしまいました。

冗長化とスループット向上に、と思ったのですが、あまり良い結果ではありませんでした。

他のNICやスイッチを使用した場合だとまた違った結果となりそうなので、別環境でリトライしてみようかと思います。