#author("2016-12-05T03:20:54+09:00","default:nowsky","nowsky") *bonding [#bef1a23d] 複数のNICを束ねる事で、耐障害性向上・トラフィック負荷分散を図る技術。 目的に応じて複数の分散方法から最適な物を選択する必要がある。 様々な別名があり、Bonding(ボンディング)以外には、チーミング(Teaming)、 CiscoだとPortChannel(リンクアグリゲーション)と呼ぶ事もある。 ~ *参考サイト [#m73805f7] -[[RHEL6 チャンネルボンディングの使用:+https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-Using_Channel_Bonding.html]] ~ *冗長化アルゴリズム [#z3e53e31] &font(b){モードを何も指定しない場合は、&color(#ff0000){balance-rr};};が自動的に選択される。 bondingインターフェースの&font(b){対向L2SWでLACPを設定出来る場合、&color(#ff0000){802.3ad};を選択する};のが汎用性が高い。 &font(b){blance-rr};はラウンドロビン方式となる為、対向L2SWがスタック構成の場合は、 パケット送信元のMACアドレスが都度変化する事となり、&font(b){稀に&color(#ff0000){接続断が発生};};する。 これは、Linux・UNIXのOSを使っているアプライアンス(SANディスク装置、負荷分散装置、ファイアウォール)全般に当てはまる事が多い。 その為、blance-rrは基本的に使用しない事を推奨する。 どうしても使用する場合は、対向L2SWが1台である事を前提に設計する必要がある。 #region(&color(#ff0000){アルゴリズム一覧};) | mode | 別名 | 説明 | | 0 | balance-rr | 耐障害性とロードバランシングのためラウンドロビンポリシーを設定します。&br;利用可能な第1のインターフェースからそれぞれのボンディングされた、&br;スレーブインターフェースで送受信が順次行われます。 | | 1 | active-backup | 耐障害性のためアクティブなバックアップポリシーを設定します。&br;利用可能な第1のボンディングされたスレーブインターフェースにより送受信が行われます。&br;別のボンディングされたスレーブインターフェースは、&br;アクティブなボンディングされたスレーブインターフェースが失敗した場合にのみ使用されます。 | | 2 | balance-xor | 耐障害性とロードバランシングのためXOR(排他的論理和)ポリシーを設定します。&br;この方法を使用すると、インターフェースによって受信要求のMACアドレスと、&br;スレーブNICの1つのMACアドレスが一致します。&br;このリンクが確立すると、利用可能な第1のインターフェースから送信が順次行われます。 | | 3 | broadcast | 耐障害性のためブロードキャストポリシーを設定します。&br;すべての送信は、すべてのスレーブインターフェースで行われます。 | | 4 | 802.3ad | IEEE802.3ad動的リンクアグリゲーションのポリシーを設定します。&br;同一の速度とデュプレックス設定を共有するアグリゲーショングループを作成します。&br;アクティブなアグリゲーターのすべてのスレーブで送受信を行います。&br;802.3adに対応するスイッチが必要です。 | | 5 | balance-tlb | 耐障害性とロードバランシングのため送信ロードバランシング(TLB)ポリシーを設定します。&br;発信トラフィックは、各スレーブインターフェースの現在の負荷に従って分散されます。&br;受信トラフィックは、現在のスレーブにより受信されます。&br;受信しているスレーブが失敗すると、別のスレーブが失敗したスレーブの MAC アドレスを引き継ぎます。 | | 6 | balance-alb | 耐障害性とロードバランシングのためアクティブロードバランシング(ALB)ポリシーを設定します。&br;IPV4トラフィック用の送受信ロードバランシングが含まれます。&br;ARPネゴシエーションにより、受信ロードバランシングが可能です。 | #endregion ~ *送信ポリシー [#w3b321a6] bondingには負荷分散アルゴリズムとは別に、パケット送信ポリシーが存在する。 L2~L4で分散方式に重み付けをする事で、bondingしているのに1インターフェースに偏るのを解消する事が出来る。 何も設定しない場合は、&font(b){&color(#ff0000){L2};(MACアドレス)};ベースでの負荷分散になる。 送信元のLinuxサーバが仮想化している場合パケット送信元が全て同じMACアドレスとなる為、L2制御では偏りが発生する。 このような場合は&font(b){&color(#ff0000){L2+L3};(MACアドレスとIPアドレスのハッシュ)};で分散を行う方が良い。 #region(&color(#ff0000){ポリシ一覧};) | policy | 別名 | 802.3ad | 説明 | | 0 | Layer2 | 対応している | ハードウェアMACアドレスのXORを使用してハッシュを生成します。&br;すべてのトラフィックを同じスレーブの特定のネットワークピアに割り振ります。 | | 1 | Layer3+Layer4 | 対応してない | 上位レイヤープロトコルの情報を使用して、ハッシュを生成します。&br;断片化されたTCPまたはUDPパケットと他の全IPプロトコルトラフィックについては、&br;送信元及び宛先ポート情報が省略されます。 | | 2 | Layer2+Layer3 | 対応している | Layer2及びLayer3プロトコル情報の組み合わせを使用して、ハッシュを生成します。&br;すべてのトラフィックを同じスレーブの特定のネットワークピアに割り振ります。 | #endregion ~ *設定方法 [#uda6492c] CentOS4、CentOS5~7でパラメータの指定方法が変化する。 CentOS以外のディストリビューションを使っている場合は、それぞれに合わせて設定を作成する。