[转]centos5、6网卡聚合 linux多网卡绑定聚合 bond

原文链接:https://www.xiaohuai.com/4896

From : https://www.xiaohuai.com/4896

1技术说明
通过网口绑定(bond)技术,可以很容易实现网口冗余,负载均衡,从而达到高可用负载均衡的目的。
miimon是用来进行链路监测的。比如:miimon=100,单位是ms(毫秒)这边的100,是100ms,即是0.1
秒那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路。
Bonding的模式一共有7种(即mode=0、1、2、3、4、5、6):
#defineBOND_MODE_ROUNDROBIN 0 (balance-rr模式)网卡的负载均衡模式
#defineBOND_MODE_ACTIVEBACKUP 1 (active-backup模式)网卡的容错模式
#defineBOND_MODE_XOR 2 (balance-xor模式)需要交换机支持
#defineBOND_MODE_BROADCAST 3 (broadcast模式)
#defineBOND_MODE_8023AD 4 (IEEE 802.3ad动态链路聚合模式)需要交换机支持
#defineBOND_MODE_TLB 5 自适应传输负载均衡模式
#defineBOND_MODE_ALB 6 网卡虚拟化方式
mode共有七种(0~6),这里解释两个常用的选项。
mode=0:表示load balancing (round-robin)为负载均衡方式,两块网卡都在工作,需要交换机作支持。
mode=1:表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,其中一块
网卡在工作(若eth0断掉),则自动切换到另一个块网卡(eth1做备份)。
mode=6 表示负载均衡方式,两块网卡都工作,不需要交换机作支持。
bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。

2.新增/etc/modprobe.d/bonding.conf,配置绑定模型,配置文件最后加入以下内容:

1

2

3

4

5

vi /etc/modprobe.d/bonding.conf

alias bond0 bonding

options bond0 miimon=100 mode=0

#选项 millmon 是指定隔多长时间来进行链路监测,单位是ms。

#选项 mode 是表示绑定口的工作模式,有0-6共7种模式。

3.创建绑定接口bond0

1

2

3

4

5

6

7

8

9

10

11

vi /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0

NAME=bond0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=none

IPADDR=x.x.46.110

NETMASK=255.255.255.192

GATEWAY=x.x.46.193

BONDING_OPTS="miimon=100 mode=0"

4.修改/etc/sysconfig/network-scripts/ifcfg-eth0

1

2

3

4

5

6

7

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

USERCTL=no

MASTER=bond0

SLAVE=yes

注意:建议不要指定MAC地址

修改/etc/sysconfig/network-scripts/ifcfg-eth1

1

2

3

4

5

6

7

vi /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

BOOTPROTO=none

ONBOOT=yes

USERCTL=no

MASTER=bond0

SLAVE=yes

注意:建议不要指定MAC地址

如果有eth2、eth3按如上方法修改

5重启系统,让配置生效。

1

reboot

6.检测、验证配置
首先执行命令装载bonding模块:

1

modprobe bonding

重启网络服务,并确认bond0正确启动:

1

service network restart

确认设备已经正确加载:

1

2

3

4

5

less /proc/net/bonding/bond0

 

 

cat /proc/net/bonding/bond0

列出所有网口:

1

ifconfig

注意:编辑网卡配置的时候一定要注意编码的问题,网上直接复制的配置可能编码不正确,重启网卡会导致网络中断,最好在编辑器(notepad++ editplus等)下转为utf8编码后再复制到配置里。

上一篇:极客时间--趣谈网络协议--第二模块 底层网络知识详解:从二层到三层 总结


下一篇:网络接口配置bonding