インフラエンジニアbacchiのわかったことまとめ

bacchi.me

CentOS6(RHEL6)でbondingの設定

CentOS6(RHEL6)なサーバーでbondingの設定をしたのでメモ。

RHEL7系のbondingの設定をしたい場合は↓をご覧ください。

CentOS7(RHEL7)でbondingの設定

各種設定

bonding ドライバの設定

設定ファイル編集

vim /etc/modprobe.d/bonding.conf
下記を追記する。
---
alias bond0 bonding
---

bonding モジュールをカーネルに登録

lsmod で bonding ドライバーがロードされていることを確認します。

ロードされていない場合は、modprobe でロードします。

lsmod | grep bonding
modprobe bonding
lsmod | grep bonding

bondingの設定

em1の設定

em1にbonding用の設定を書き加えます。

vim /etc/sysconfig/network-scripts/ifcfg-em1
以下のように書き換える。
---
DEVICE=em1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no

em2の設定

em2にbonding用の設定を書き加えます。

vim /etc/sysconfig/network-scripts/ifcfg-em2
以下のように書き換える。
---
DEVICE=em2
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no

チーミングNIC bond0 及び bondingモードの設定

bond0にネットワーク設定とbondingモードの設定を書き加えます。

vim /etc/sysconfig/network-scripts/ifcfg-bond0
以下のように書き換える。
---
DEVICE=bond0
IPADDR=192.168.0.1     #適宜変更する。
NETMASK=255.255.255.0  #適宜変更する。
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimon=100"

ネットワークの再起動

ネットワークの再起動を行うと、bond0が有効になります。

/etc/init.d/network restart

動作検証

em1,em2のリンク状態の確認

ethtool にて、「Speed:1000Mb/s」「Duplex:Full」「Link detected: yes」になっていること

/sbin/ethtool em1
/sbin/ethtool em2

チーミング状態の確認

# cat /proc/net/bonding/bond0

以下のような出力になること

cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: em1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: fd:g5:cc:g1:4b:d9
Slave queue ID: 0

Slave Interface: em2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: fd:g5:cc:g1:4b:da
Slave queue ID: 0

フェイルオーバーの確認(em1 → em2)

em1を落とします。

ifconfig em1 down

cat /proc/net/bonding/bond0 を実行し、以下の点を確認します。

  • /proc/net/bonding/bond0 の表示で、「Currently Active Slave:em2」になっていること。
cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: em2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em1
MII Status: down
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:d9
Slave queue ID: 0

Slave Interface: em2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: fd:g5:cc:g1:4b:da
Slave queue ID: 0

em1を立ち上げます。

ifconfig em1 up

cat /proc/net/bonding/bond0 を実行し、以下の点を確認します。

  • /proc/net/bonding/bond0 の表示で、Slave Interface: em1 が「MII Status: up」になっていること。
cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: em2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:d9
Slave queue ID: 0

Slave Interface: em2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: fd:g5:cc:g1:4b:da
Slave queue ID: 0

フェイルオーバーの確認(em2 → em1)

em2を落とします。

ifconfig em2 down

cat /proc/net/bonding/bond0 を実行し、以下の点を確認します。

  • /proc/net/bonding/bond0 の表示で、「Currently Active Slave:em1」になっていること。
cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: em1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:d9
Slave queue ID: 0

Slave Interface: em2
MII Status: down
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:da
Slave queue ID: 0

em2を立ち上げます。

ifconfig em2 up

cat /proc/net/bonding/bond0 を実行し、以下の点を確認します。

  • /proc/net/bonding/bond0 の表示で、Slave Interface: em2 が「MII Status: up」になっていること。
cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: em1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:d9
Slave queue ID: 0

Slave Interface: em2
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 1
Permanent HW addr: fd:g5:cc:g1:4b:da
Slave queue ID: 0
  • B!