ib-bonding による冗長構成
インフィニバンドでもイーサネットと同様 bonding を使用することができます。この ib-bonding は ipoib 上で動作し、現在 active / backup のモード ( mode=1) でのみ使用することができます(MLNX_OFED-1.5.2-2.1.0にて確認)。設定はイーサネットとほぼ同様です。
ネットワークスクリプトへの記述 (RHEL5.5を使用)
1. マスター (bond0) インタフェースには次の記述を追加してください。
TYPE=Bonding MTU=<スレーブのMTUと合わせる>
例:/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.1
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
TYPE=Bonding
MTU=65520
※ MTU=65520 はすべての IPoIB スレーブが Connected Mode (CM) で動作している必要があり、すべて同じ値に設定します。Datagram Mode で使用する場合は MTU=2044 となります。
例:/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.1
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
TYPE=Bonding
MTU=65520
※ MTU=65520 はすべての IPoIB スレーブが Connected Mode (CM) で動作している必要があり、すべて同じ値に設定します。Datagram Mode で使用する場合は MTU=2044 となります。
2. スレーブ (ib) インタフェースには次の記述を追加してください。
SLAVE=yes
MASTER=
TYPE=InfiniBand
PRIMARY=
例:/etc/sysconfig/network-scripts/ifcfg-ib0
DEVICE=ib0
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
TYPE=InfiniBand
PRIMARY=yes
3. /etc/modprobe.conf に以下の記述を追加してください。
alias bond0 bonding
options bond0 miimon=100 mode=1 max_bonds=1
※ max_bonds はボンディングの本数です。以下のように動作を確認できます。

ib0 のインターフェースにて障害が発生
自動的にバックアップの ib1 にてデータを送信

詳細に関しては MLNX_OFED-1.5.2-2.10 インストールディレクトリの ib-bonding.txt をご参照ください。