主頁 > 知識庫 > Linux Bonding配置詳解

Linux Bonding配置詳解

熱門標簽:家政服務網絡 服務器配置 電話機器人搭建 硅谷的囚徒呼叫中心 外呼系統(tǒng) 解決方案 百度競價點擊價格的計算公式 美團

一、什么是bonding
多塊網卡綁在一起,作為一個網卡用,實現(xiàn)負載均衡和提高帶寬,linux雙網卡綁定一個IP地址,實質工作就是使用兩塊網卡虛擬為一塊,使用同一個IP地址,是我們能夠得到更好的更快的服務。

二、配置過程
配置很簡單,一共四個步驟:

實驗的操作系統(tǒng)是Redhat Linux Enterprise 3.0

綁定的前提條件:芯片組型號相同,而且網卡應該具備自己獨立的BIOS芯片。

1.編輯虛擬網絡接口配置文件,指定網卡IP


復制代碼
代碼如下:
vi /etc/sysconfig/ network-scripts/ ifcfg-bond0/p> p>[root@rhas-13 root]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond0

2 #vi ifcfg-bond0

將第一行改成 DEVICE=bond0


復制代碼
代碼如下:
# cat ifcfg-bond0/p> p>DEVICE=bond0/p> p>BOOTPROTO=static/p> p>IPADDR=172.31.0.13/p> p>NETMASK=255.255.252.0/p> p>BROADCAST=172.31.3.254/p> p>ONBOOT=yes/p> p>TYPE=Ethernet

這里要主意,不要指定單個網卡的IP 地址、子網掩碼或網卡 ID。將上述信息指定到虛擬適配器(bonding)中即可。


復制代碼
代碼如下:
[root@rhas-13 network-scripts]# cat ifcfg-eth0/p> p>DEVICE=eth0/p> p>ONBOOT=yes/p> p>BOOTPROTO=dhcp/p> p>[root@rhas-13 network-scripts]# cat ifcfg-eth1/p> p>DEVICE=eth0/p> p>ONBOOT=yes/p> p>BOOTPROTO=dhcp

3 # vi /etc/modules.conf

編輯 /etc/modules.conf 文件,加入如下一行內容,以使系統(tǒng)在啟動時加載bonding模塊,對外虛擬網絡接口設備為 bond0

 

加入下列兩行


復制代碼
代碼如下:
alias bond0 bonding/p> p>options bond0 miimon=100 mode=1

說明:miimon是用來進行鏈路監(jiān)測的。 比如:miimon=100,那么系統(tǒng)每100ms監(jiān)測一次鏈路連接狀態(tài),如果有一條線路不通就轉入另一條線路;mode的值表示工作模式,他共有0,1,2,3四種模式,常用的為0,1兩種。

mode=0表示load balancing (round-robin)為負載均衡方式,兩塊網卡都工作。

mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主備的工作方式,也就是說默認情況下只有一塊網卡工作,另一塊做備份.

bonding只能提供鏈路監(jiān)測,即從主機到交換機的鏈路是否接通。如果只是交換機對外的鏈路down掉了,而交換機本身并沒有故障,那么bonding會認為鏈路沒有問題而繼續(xù)使用

4 # vi /etc/rc.d/rc.local

加入兩行


復制代碼
代碼如下:
ifenslave bond0 eth0 eth1/p> p>route add -net 172.31.3.254 netmask 255.255.255.0 bond0

到這時已經配置完畢重新啟動機器.

重啟會看見以下信息就表示配置成功了

................

Bringing up interface bond0 OK

Bringing up interface eth0 OK

Bringing up interface eth1 OK

Bonding的工作模式


Linux Bonding默認使用輪轉策略。

基本類別是主備模式與負載均衡兩種模式:
balance-rr (mode=0)

輪轉(Round-robin)策略:從頭到尾順序的在每一個slave接口上面發(fā)送數(shù)據(jù)包。本模式提供負載均衡和容錯的能力。
active-backup(mode=1)

活動-備份(主備)策略:在綁定中,只有一個slave被激活。當且僅當活動的slave接口失敗時才會激活其他slave。為了避免交換機發(fā)生混亂此時綁定的MAC地址只有一個外部端口上可見。在bongding的2.6.2及其以后的版本中,主備模式下發(fā)生一次故障遷移時,bonding將在新激活的slave上會送一個或者多個gratuitous ARP.bonding的主salve接口上以及配置在接口上的所有VLAN接口都會發(fā)送gratuitous ARP,只要這些接口上配置了至少一個IP地址。VLAN接口上發(fā)送的的gratuitous ARP將會附上適當?shù)腣LAN id。本模式提供容錯能力,primary option,documented below會影響本模式的行為。
balance-xor(mode=2)

XOR策略:基于所選擇的傳送hash策略。
本模式提供負載均衡和容錯的能力。
broadcast(mode=3)

廣播策略:在所有的slave接口上傳送所有的報文。本模式提供容錯能力。
802.3ad(mode=4)

IEEE 802.3ad 動態(tài)鏈路聚合。創(chuàng)建共享相同的速率和雙工模式的聚合組。能根據(jù)802.3ad規(guī)范利用所有的slave來建立聚合鏈路。Salve的出站選擇取決于傳輸?shù)膆ash策略,默認策略是簡單的XOR策略,而hash策略則可以通xmit_hash_policy選項加以改變。需要注意的是:不是所有的傳輸策略都與802.3ad兼容,尤其是802.3ad標準的43.2.4章節(jié)中關于 packet mis-ordering要求的地方。不同個體的實現(xiàn)往往出現(xiàn)很大的不兼容。
先決條件:
1. 每個slave的基本驅動支持Ehtool獲取速率和雙工狀態(tài)。
2.交換機支持IEEE 802.3ad動態(tài)鏈路聚合。大多數(shù)的交換機都需要使用某種配置方式來啟用802.3ad模式。
balance-tlb(mode=5)

自適應傳輸負載均衡:信道綁定不需要特殊的交換機支持。出口流量的分布取決于當前每個slave的負載(計算相對速度)。進口流量從當前的slave的接收。如果接收salve出錯,其他的slave接管失敗的slave的MAC地址繼續(xù)接收。
先決條件:
每個slave的基本驅動支持Ehtool獲取速率狀態(tài)。
balance-alb(mode=6)

自適應負載均衡:包括balance-tlb(模式5)以及用于IPV4流量的接收負載均衡,并且不需要特殊的交換機支持。接收負載均衡通過ARP協(xié)商實現(xiàn)。bonding的驅動攔截本機發(fā)出的ARP Replies(ARP回應報文),并且用bond的某一個slave的硬件地址改寫ARP報文的源地址,使得本服務器對不同的設備使用不同的硬件地址。本服務器建立的連接的接收流量也是負載均衡的。當本機發(fā)送ARP Request時,bonding驅動通過ARP報文復制并保存節(jié)點的IP信息。當從其他節(jié)點接收到ARP Reply,bonding驅動獲取節(jié)點的硬件地址并且會回應一個包含綁定好的slave的硬件地址的ARP Reply給發(fā)送的節(jié)點。用ARP協(xié)商的負載均衡的有一個問題是每次用bond的硬件地址廣播ARP報文,那么其他節(jié)點發(fā)送的數(shù)據(jù)全部集中在一個slave上,處理ARP更新給其他所有節(jié)點的時候,每個節(jié)點會重新學習硬件地址,導致流量重新分配。當新加入一個slave或者一個非激活的slave重新激活的時候也會導致接收流量重新分配。接收流量負載是串行(輪轉)的分配在bond的一組速率最高的slave上。
當一個鏈路重連或者一個新的slave加入的時候,bond會重新初始化ARP Replies給所有的客戶端。updelay參數(shù)的值必須等于或者大于交換機的forwarding delay,以免ARP Replies被交換機阻塞。
先決條件:
1.每個slave的基本驅動支持Ehtool獲取速率狀態(tài)。

2. 基本驅動支持當設備打開時重新設置硬件地址。也要求每一個slave具有唯一的硬件地址。如果curr_active_slave失敗,它的硬件地址被新選上的curr_active_slave硬件地址來替換

標簽:烏蘭察布 南昌 北海 防城港 撫州 韶關 邢臺 臨沂

巨人網絡通訊聲明:本文標題《Linux Bonding配置詳解》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266