Bonding
将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给
两块网卡设置同一IP地址是不可以的。通过bonding,虚拟一块网卡对外提供连接,
物理网卡的被修改为相同的MAC地址
Bonding工作模式:
Mode 0 (balance-rr)
轮转(Round-robin)策略:从头到尾顺序的在每一个slave
接口上面发送数据包。本模式提供负载均衡和容错的能力
Mode 1 (active-backup)
活动-备份(主备)策略:只有一个slave被激活,当且仅当活动的slave接口失
败时才会激活其他slave。 为了避免交换机发生混乱此时绑定的MAC地址只有
一个外部端口上可见
Mode 3 (broadcast)
广播策略:在所有的slave接口上传送所有的报文,提供容错能力
active-backup、 balance-tlb 和 balance-alb 模式不需要交换机的任何特
殊配置。其他绑定模式需要配置交换机以便整合链接。如:Cisco 交换机需
要在模式 0、 2 和 3 中使用 EtherChannel,但在模式4中需要 LACP和
EtherChannel
centos6网卡绑定操作步骤
1.配置bond0
/etc/sysconfig/network-scripts/下创建一个ifcfg-bond0,内容如下:
DEVICE=bond0
BOOTPROTO=static
NM_CONTROLLED=no (这里一定要是no)
ONBOOT=yes
IPADDR=192.168.56.66
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
USERCTL=no
BONDING_OPTS="mode=1 miimon=200" (这里就是配置下绑定模式)
2.修改ifcfg-eth0
vim ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
3.修改ifcfg-eth1
vim ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
4.修改/etc/modprobe.d/dist.conf文件,最后加上
vim /etc/modprobe.d/dist.conf
alias bond0 binding
5.修改/etc/rc.d/rc.local文件,最后加上
vim /etc/rc.d/rc.local
ifenslave bond0 eth0 eth1
6.关闭NetworkManager服务
service NetworkManager stop
chkconfig NetworkManager off
7.reboot机器,必须重启机器不能重启网卡
8.ifconfig查看eth0和eth1与bond0的mac地址是否都一致并且
bond0有MASTER字样
eth0和eth1有SLAVE字样
9.查看bond0的运行状态
cat /proc/net/bonding/bond0
动态监测
watch cat /proc/net/bonding/bond0
如何删除
1.还原/etc/sysconfig/network-scripts中修改过的文件,删除ifcfg-bond0文件
2.删除/etc/modprobe.d/dist.conf
3.卸载bonding驱动 --->>modprobe -r bonding
4.重启网卡