溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux Bonding的配置詳解

發(fā)布時(shí)間:2021-09-03 17:33:36 來(lái)源:億速云 閱讀:171 作者:chen 欄目:系統(tǒng)運(yùn)維

這篇文章主要介紹“Linux Bonding的配置詳解”,在日常操作中,相信很多人在Linux Bonding的配置詳解問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Linux Bonding的配置詳解”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

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

二、配置過(guò)程
配置很簡(jiǎn)單,一共四個(gè)步驟:

實(shí)驗(yàn)的操作系統(tǒng)是Redhat Linux Enterprise 3.0

綁定的前提條件:芯片組型號(hào)相同,而且網(wǎng)卡應(yīng)該具備自己獨(dú)立的BIOS芯片。

1.編輯虛擬網(wǎng)絡(luò)接口配置文件,指定網(wǎng)卡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

這里要主意,不要指定單個(gè)網(wǎng)卡的IP 地址、子網(wǎng)掩碼或網(wǎng)卡 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-eth2</p> <p>DEVICE=eth0</p> <p>ONBOOT=yes</p> <p>BOOTPROTO=dhcp

3 # vi /etc/modules.conf

編輯 /etc/modules.conf 文件,加入如下一行內(nèi)容,以使系統(tǒng)在啟動(dòng)時(shí)加載bonding模塊,對(duì)外虛擬網(wǎng)絡(luò)接口設(shè)備為 bond0

加入下列兩行

代碼如下:

alias bond0 bonding</p> <p>options bond0 miimon=100 mode=1

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

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

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

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

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

加入兩行

代碼如下:

ifenslave bond0 eth0 eth2</p> <p>route add -net 172.31.3.254 netmask 255.255.255.0 bond0

到這時(shí)已經(jīng)配置完畢重新啟動(dòng)機(jī)器.

重啟會(huì)看見(jiàn)以下信息就表示配置成功了

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

Bringing up interface bond0 OK

Bringing up interface eth0 OK

Bringing up interface eth2 OK

Bonding的工作模式


Linux Bonding默認(rèn)使用輪轉(zhuǎn)策略。

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

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

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

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

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

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

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

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

2. 基本驅(qū)動(dòng)支持當(dāng)設(shè)備打開(kāi)時(shí)重新設(shè)置硬件地址。也要求每一個(gè)slave具有唯一的硬件地址。如果curr_active_slave失敗,它的硬件地址被新選上的curr_active_slave硬件地址來(lái)替換

到此,關(guān)于“Linux Bonding的配置詳解”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI