Linux/Distribution/bonding
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
ns-lab
nowsky system-lab
DigiLoog
Linux
Windows
開始行:
*bonding [#bef1a23d]
複数のNICを束ねる事で、耐障害性向上・トラフィック負荷分散...
目的に応じて最適な負荷分散アルゴリズムを選択する必要があ...
様々な別名があり、Bonding(ボンディング)以外には、チーミン...
CiscoだとPortChannel(ポートチャネル)、LAG(リンクアグリゲ...
~
*参考サイト [#m73805f7]
-[[【RHEL6】 チャンネルボンディングの使用:+https://access...
-[[【waruko2 Note 】 CentOS/NICの冗長化(bonding設定):+h...
-[[【weblog of key_amb】 誤って作成したbonding deviceをき...
~
*冗長化アルゴリズム [#z3e53e31]
&font(b){モードを何も指定しない場合は、&color(#ff0000){ba...
bondingインターフェースの&font(b){対向L2SWでLACPを設定出...
&font(b){blance-rr};はラウンドロビン方式となる為、対向L2S...
パケット送信元のMACアドレスが都度変化する事となり、&font(...
これは、Linux・UNIX系OSを使っているアプライアンス(SANディ...
その為、blance-rrは基本的に使用しない事を推奨する。
どうしてもblance-rrを使用する場合は、対向L2SWが1台である...
MACアドレス分散が発生しない事を踏まえた上で、設計する必要...
#region(&color(#ff0000){アルゴリズム一覧};)
| mode | 別名 | 説明 ...
| 0 | balance-rr | 耐障害性とロードバランシングのた...
| 1 | active-backup | 耐障害性のためアクティブなバック...
| 2 | balance-xor | 耐障害性とロードバランシングのた...
| 3 | broadcast | 耐障害性のためブロードキャストポ...
| 4 | 802.3ad | IEEE802.3ad動的リンクアグリゲー...
| 5 | balance-tlb | 耐障害性とロードバランシングのた...
| 6 | balance-alb | 耐障害性とロードバランシングのた...
#endregion
~
*送信ポリシー [#w3b321a6]
bondingには負荷分散アルゴリズムとは別に、&font(b){パケッ...
L2~L4で分散方式に重み付けをする事で、通信が1インターフェ...
何も設定しない場合は、&font(b){&color(#ff0000){L2};(MACア...
送信元のLinuxサーバが仮想化している場合、パケット送信元が...
このような場合は&font(b){&color(#ff0000){L2+L3};(MACアド...
#region(&color(#ff0000){ポリシ一覧};)
| policy | 別名 | 802.3ad | 説明 ...
| 0 | Layer2 | 対応している | ハードウェアMAC...
| 1 | Layer3+Layer4 | 対応してない | 上位レイヤープ...
| 2 | Layer2+Layer3 | 対応している | Layer2及びLayer...
#endregion
~
*設定方法(Linux) [#uda6492c]
CentOS4、CentOS5~7でパラメータの指定方法が変化する。
今回は下記の条件でbondingする事を想定して設定を行う
| 使用I/F | eth0/eth1 |
| 生成I/F | bond0 |
| アルゴリズム | 802.3ad (LACP) |
| ポリシー | L2+L3 |
#region(&color(#ff0000){設定内容};)
# vi /etc/modprobe.d/if-bondig.conf
---
alias bond0 bonding
## CentOS4の場合は下記も追加
options bond0 mode=4 xmit_hash_policy=2 miimon=100
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
---
DEVICE="eth0"
USERCTL="none"
BOOTPROTO="none"
HWADDR="NICの実MACアドレスを設定"
ONBOOT="yes"
MASTER="bond0"
SLAVE="yes"
UUID="適当にUUIDを生成して設定"
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
---
DEVICE="eth1"
USERCTL="none"
BOOTPROTO="none"
HWADDR="NICの実MACアドレスを設定"
ONBOOT="yes"
MASTER="bond0"
SLAVE="yes"
UUID="適当にUUIDを生成して設定"
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
---
DEVICE="bond0"
BOOTPROTO="static"
BROADCAST="ブロードキャストアドレス"
IPADDR="bondigI/FのIPアドレス"
IPV6INIT="no"
IPV6_AUTOCONF="no"
NETMASK="サブネットマスク"
PEERDNS="no"
NM_CONTROLLED="no"
ONBOOT="yes"
TYPE="Ethernet"
BONDING_OPTS="bond0 mode=4 xmit_hash_policy=2 miimon=100"
UUID="適当にUUIDを生成して設定"
#endregion
~
*設定方法(L2SW) [#m2946a88]
L2SWではPort-ChannelインターフェースをLACPモードで作成する
事前にPort-Channelを形成した上でLANケーブル結線を行わない...
#region(&color(#ff0000){L2SW設定例};)
-Cisco Catalyst
interface Port-Channel1
switchport access vlan ***
switchport mode access
!
interface GigabitEthernet 1/0/1
switchport access vlan ***
switchport mode access
channel-group 1 mode active
!
interface GigabitEthernet 1/0/2
switchport access vlan ***
switchport mode access
channel-group 1 mode active
-AlliedTelesis CentreCOM
interface port1.0.1-1.0.2
switchport
switchport mode access
switchport access vlan ***
channel-group 1 mode active
!
interface po1
switchport
switchport mode access
switchport access vlan ***
#endregion
~
*ステータス確認 [#l45c9551]
設定した後は、下記コマンドを使って設定が反映されているか...
bondingはL2SWとのモード不一致、LACPDU送信タイミング不一致...
#region(&color(#ff0000){確認コマンド};)
- Linux
# cat /proc/net/bonding/bond0
- Catalyst
# show lacp 1 neighbor
# show etherchannel detail
# show etherchannel protocol
#endregion
~
*bondingデバイス(インターフェース)の削除 [#sd5666d3]
bondingのインターフェース番号を間違えた場合、間違えた番号...
bondingデバイスを削除出来なくなる。
使わないデバイスが残っているのは後々障害になりかねないの...
いらないbondingデバイスは下記のコマンド2つを実行して削除...
例として、bond0デバイスを手動削除する方法をメモしておく
#region(&color(#ff0000){削除コマンド};)
- /proc/net/bonding/bond0の削除
# echo "-bond0" > /sys/class/net/bonding_masters
- /proc/net/bondingの削除
# rmmod bonding
#endregion
終了行:
*bonding [#bef1a23d]
複数のNICを束ねる事で、耐障害性向上・トラフィック負荷分散...
目的に応じて最適な負荷分散アルゴリズムを選択する必要があ...
様々な別名があり、Bonding(ボンディング)以外には、チーミン...
CiscoだとPortChannel(ポートチャネル)、LAG(リンクアグリゲ...
~
*参考サイト [#m73805f7]
-[[【RHEL6】 チャンネルボンディングの使用:+https://access...
-[[【waruko2 Note 】 CentOS/NICの冗長化(bonding設定):+h...
-[[【weblog of key_amb】 誤って作成したbonding deviceをき...
~
*冗長化アルゴリズム [#z3e53e31]
&font(b){モードを何も指定しない場合は、&color(#ff0000){ba...
bondingインターフェースの&font(b){対向L2SWでLACPを設定出...
&font(b){blance-rr};はラウンドロビン方式となる為、対向L2S...
パケット送信元のMACアドレスが都度変化する事となり、&font(...
これは、Linux・UNIX系OSを使っているアプライアンス(SANディ...
その為、blance-rrは基本的に使用しない事を推奨する。
どうしてもblance-rrを使用する場合は、対向L2SWが1台である...
MACアドレス分散が発生しない事を踏まえた上で、設計する必要...
#region(&color(#ff0000){アルゴリズム一覧};)
| mode | 別名 | 説明 ...
| 0 | balance-rr | 耐障害性とロードバランシングのた...
| 1 | active-backup | 耐障害性のためアクティブなバック...
| 2 | balance-xor | 耐障害性とロードバランシングのた...
| 3 | broadcast | 耐障害性のためブロードキャストポ...
| 4 | 802.3ad | IEEE802.3ad動的リンクアグリゲー...
| 5 | balance-tlb | 耐障害性とロードバランシングのた...
| 6 | balance-alb | 耐障害性とロードバランシングのた...
#endregion
~
*送信ポリシー [#w3b321a6]
bondingには負荷分散アルゴリズムとは別に、&font(b){パケッ...
L2~L4で分散方式に重み付けをする事で、通信が1インターフェ...
何も設定しない場合は、&font(b){&color(#ff0000){L2};(MACア...
送信元のLinuxサーバが仮想化している場合、パケット送信元が...
このような場合は&font(b){&color(#ff0000){L2+L3};(MACアド...
#region(&color(#ff0000){ポリシ一覧};)
| policy | 別名 | 802.3ad | 説明 ...
| 0 | Layer2 | 対応している | ハードウェアMAC...
| 1 | Layer3+Layer4 | 対応してない | 上位レイヤープ...
| 2 | Layer2+Layer3 | 対応している | Layer2及びLayer...
#endregion
~
*設定方法(Linux) [#uda6492c]
CentOS4、CentOS5~7でパラメータの指定方法が変化する。
今回は下記の条件でbondingする事を想定して設定を行う
| 使用I/F | eth0/eth1 |
| 生成I/F | bond0 |
| アルゴリズム | 802.3ad (LACP) |
| ポリシー | L2+L3 |
#region(&color(#ff0000){設定内容};)
# vi /etc/modprobe.d/if-bondig.conf
---
alias bond0 bonding
## CentOS4の場合は下記も追加
options bond0 mode=4 xmit_hash_policy=2 miimon=100
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
---
DEVICE="eth0"
USERCTL="none"
BOOTPROTO="none"
HWADDR="NICの実MACアドレスを設定"
ONBOOT="yes"
MASTER="bond0"
SLAVE="yes"
UUID="適当にUUIDを生成して設定"
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
---
DEVICE="eth1"
USERCTL="none"
BOOTPROTO="none"
HWADDR="NICの実MACアドレスを設定"
ONBOOT="yes"
MASTER="bond0"
SLAVE="yes"
UUID="適当にUUIDを生成して設定"
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
---
DEVICE="bond0"
BOOTPROTO="static"
BROADCAST="ブロードキャストアドレス"
IPADDR="bondigI/FのIPアドレス"
IPV6INIT="no"
IPV6_AUTOCONF="no"
NETMASK="サブネットマスク"
PEERDNS="no"
NM_CONTROLLED="no"
ONBOOT="yes"
TYPE="Ethernet"
BONDING_OPTS="bond0 mode=4 xmit_hash_policy=2 miimon=100"
UUID="適当にUUIDを生成して設定"
#endregion
~
*設定方法(L2SW) [#m2946a88]
L2SWではPort-ChannelインターフェースをLACPモードで作成する
事前にPort-Channelを形成した上でLANケーブル結線を行わない...
#region(&color(#ff0000){L2SW設定例};)
-Cisco Catalyst
interface Port-Channel1
switchport access vlan ***
switchport mode access
!
interface GigabitEthernet 1/0/1
switchport access vlan ***
switchport mode access
channel-group 1 mode active
!
interface GigabitEthernet 1/0/2
switchport access vlan ***
switchport mode access
channel-group 1 mode active
-AlliedTelesis CentreCOM
interface port1.0.1-1.0.2
switchport
switchport mode access
switchport access vlan ***
channel-group 1 mode active
!
interface po1
switchport
switchport mode access
switchport access vlan ***
#endregion
~
*ステータス確認 [#l45c9551]
設定した後は、下記コマンドを使って設定が反映されているか...
bondingはL2SWとのモード不一致、LACPDU送信タイミング不一致...
#region(&color(#ff0000){確認コマンド};)
- Linux
# cat /proc/net/bonding/bond0
- Catalyst
# show lacp 1 neighbor
# show etherchannel detail
# show etherchannel protocol
#endregion
~
*bondingデバイス(インターフェース)の削除 [#sd5666d3]
bondingのインターフェース番号を間違えた場合、間違えた番号...
bondingデバイスを削除出来なくなる。
使わないデバイスが残っているのは後々障害になりかねないの...
いらないbondingデバイスは下記のコマンド2つを実行して削除...
例として、bond0デバイスを手動削除する方法をメモしておく
#region(&color(#ff0000){削除コマンド};)
- /proc/net/bonding/bond0の削除
# echo "-bond0" > /sys/class/net/bonding_masters
- /proc/net/bondingの削除
# rmmod bonding
#endregion
ページ名: