1. 安裝ifenslave
ifenslave的作用是網(wǎng)卡的負(fù)載均衡
# apt-get install ifenslave
2. 修改/etc/network/interface
{root@b01 359 ~}
# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
auto A onclick="tagshow('bond');return false;" href="/tag/bond/">bond/A>0
iface bond0 inet static
address 192.168.1.5
netmask 255.255.255.0
gateway 192.168.1.1
up ifenslave bond0 eth0 eth1
down ifenslave -d bond0 eth0 eth1
dns-nameservers 8.8.8.8
iface eth0 inet static
iface eth1 inet static
3. 加載bonding模塊(這塊費(fèi)了大部分時(shí)間)
# cat /etc/modprobe.d/aliases-bond
install bond0 /sbin/modprobe bonding miimon=100 mode=0
bond的mode一共有七種:
0: (balance-rr) Round-robin policy: (平衡掄循環(huán)策略):傳輸數(shù)據(jù)包順序是依次傳輸,直到最后一個(gè)傳輸完畢, 此模式提供負(fù)載平衡和容錯(cuò)能力。
1: (active-backup) Active-backup policy:(主-備份策略):只有一個(gè)設(shè)備處于活動(dòng)狀態(tài)。 一個(gè)宕掉另一個(gè)馬上由備份轉(zhuǎn)換為主設(shè)備。mac地址是外部可見得。 此模式提供了容錯(cuò)能力。
2:(balance-xor) XOR policy:(廣播策略):將所有數(shù)據(jù)包傳輸給所有接口。 此模式提供了容錯(cuò)能力。
3:(balance-xor) XOR policy:(平衡策略): 傳輸根據(jù)原地址布爾值選擇傳輸設(shè)備。 此模式提供負(fù)載平衡和容錯(cuò)能力。
4:(802.3ad) IEEE 802.3ad Dynamic link aggregation.IEEE 802.3ad 動(dòng)態(tài)鏈接聚合:創(chuàng)建共享相同的速度和雙工設(shè)置的聚合組。
5:(balance-tlb) Adaptive transmit load balancing(適配器傳輸負(fù)載均衡):沒有特殊策略,第一個(gè)設(shè)備傳不通就用另一個(gè)設(shè)備接管第一個(gè)設(shè)備正在處理的mac地址,幫助上一個(gè)傳。
6:(balance-alb) Adaptive load balancing:(適配器傳輸負(fù)載均衡):大致意思是包括mode5,bonding驅(qū)動(dòng)程序截獲 ARP 在本地系統(tǒng)發(fā)送出的請求,用其中之一的硬件地址覆蓋從屬設(shè)備的原地址。就像是在服務(wù)器上不同的人使用不同的硬件地址一樣
一個(gè)小技巧:
為了防止修改網(wǎng)卡配置或其他配置錯(cuò)誤導(dǎo)致不能連接服務(wù)器,寫一個(gè)crontab, 將正確的網(wǎng)卡配置文件恢復(fù)后重新network restart或者
重啟機(jī)器 (iptable等類似風(fēng)險(xiǎn)操作也可以這樣來處理)
{root@b01 361 ~}
# crontab -l
# m h dom mon dow command
#20 * * * * cp -pr /etc/network/interfaces.org /etc/network/interfaces
#21 * * * * /sbin/init 6