Bond技術(shù),可以有效解決服務(wù)器網(wǎng)絡(luò)壓力過大,以及單個網(wǎng)卡失效導(dǎo)致的網(wǎng)絡(luò)服務(wù)中斷等的題。從而確保文件服務(wù)器的安全、穩(wěn)定及高速訪問運行。
?
?
七種Bond模式
第一種模式
mod=0,即:(balance-rr)?Round-robin?policy(平衡掄循環(huán)策略)
特點:傳輸數(shù)據(jù)包順序是依次傳輸(即:第1個包走eth0,下一個包就走eth1….一直循環(huán)下去,直到最后一個傳輸完畢),此模式提供負(fù)載平衡和容錯能力;但是我們知道如果一個連接或者會話的數(shù)據(jù)包從不同的接口發(fā)出的話,中途再經(jīng)過不同的鏈路,在客戶端很有可能會出現(xiàn)數(shù)據(jù)包無序到達(dá)的問題,而無序到達(dá)的數(shù)據(jù)包需要重新要求被發(fā)送,這樣網(wǎng)絡(luò)的吞吐量就會下降
?
第二種模式
mod=1,即:?(active-backup)?Active-backup?policy(主-備份策略)
?
第三種模式
mod=2,即:(balance-xor)?XOR?policy(平衡策略)
?
第四種模式
mod=3,即:broadcast(廣播策略)
特點:在每個slave接口上傳輸每個數(shù)據(jù)包,此模式提供了容錯能力
?
第五種模式
mod=4,即:(802.3ad)?IEEE?802.3ad?Dynamic?link?aggregation(IEEE?802.3ad?動態(tài)鏈接聚合)
特點:創(chuàng)建一個聚合組,它們共享同樣的速率和雙工設(shè)定。根據(jù)802.3ad規(guī)范將多個slave工作在同一個激活的聚合體下。?外出流量的slave選舉是基于傳輸hash策略,該策略可以通過xmit_hash_policy選項從缺省的XOR策略改變到其他策略。需要注意的?是,并不是所有的傳輸策略都是802.3ad適應(yīng)的,尤其考慮到在802.3ad標(biāo)準(zhǔn)43.2.4章節(jié)提及的包亂序問題。不同的實現(xiàn)可能會有不同的適應(yīng)性。
必要條件:
條件1:ethtool支持獲取每個slave的速率和雙工設(shè)定
條件2:switch(交換機)支持IEEE?802.3ad?Dynamic?link?aggregation
條件3:大多數(shù)switch(交換機)需要經(jīng)過特定配置才能支持802.3ad模式
?
第六種模式
mod=5,即:(balance-tlb)?Adaptive?transmit?load?balancing(適配器傳輸負(fù)載均衡)
必要條件:
ethtool支持獲取每個slave的速率
?
第七種模式
mod=6,即:(balance-alb)?Adaptive?load?balancing(適配器適應(yīng)性負(fù)載均衡)
必要條件:
條件1:ethtool支持獲取每個slave的速率;
?
Bond配置
此文以CentOS為例,兩塊網(wǎng)卡,分別為eth0、eth1,服務(wù)器Bond-IP:192.168.0.100
1.添加bond0文件
vim?/etc/sysconfig/network-scripts/ifcfg-bond0文件中添加如下內(nèi)容
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.0.100
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=192.168.0.255
?
編輯eth0網(wǎng)卡
vim?/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
?
編輯eth1網(wǎng)卡
vim?/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
2.修改modprobe相關(guān)設(shè)定文件,并加載bonding模塊
vim?/etc/modprobe.d/bonding.conf添加如下內(nèi)容
alias?bond0?bonding
options?bonding?mode=0?miimon=200
?
執(zhí)行如下命令加載文件
modprobe?bonding
?
確認(rèn)文件加載結(jié)果
lsmod?|?grep?bonding
bonding?100065?0
上面是配置一塊bond的結(jié)果,如果你有四個網(wǎng)卡,想要設(shè)置兩個bond,可以配制成如下內(nèi)容
同bond模式下的多bond口配置
alias?bond0?bonding
alias?bond1?bonding
options?bonding?max_bonds=2?miimon=200?mode=1
?
不同bond模式下多bond配置
alias?bond0?bonding
options?bond0?miimon=100?mode=1
install?bond1?/sbin/modprobe?bonding?-o?bond1?miimon=200?mode=0
上面的配置,做一下簡單解釋
miimon?監(jiān)視網(wǎng)絡(luò)鏈接的頻度,單位是毫秒,我們設(shè)置的是200毫秒。
max_bonds?配置的bond口個數(shù)
mode?bond模式,主要有以下幾種,在一般的實際應(yīng)用中,0和1用的比較多,
3.重啟網(wǎng)卡,檢查結(jié)果
service?network?restart
常用的模式
mode=0:平衡負(fù)載模式,有自動備援,但需要”Switch”支援及設(shè)定。
mode=1:自動備援模式,其中一條線若斷線,其他線路將會自動備援。
mode=6:平衡負(fù)載模式,有自動備援,不必”Switch”支援及設(shè)定。
根據(jù)自己的需求,自己決定吧
?