bonding多个物理网卡聚合成一个虚拟网卡
Bonding,其原理是讲多个物理网卡聚合成一个虚拟网卡,一张网卡正常工作,其余网卡作为备用,每隔一段时间(miimon=毫秒),向正常工作的网卡发一状态询问,若没回复,则认为其运行失败,然后就会启用备用网卡,但是IP地址不会改变。
作为一个稳定的服务器系统而言,bonding可以解决物理性的网络中断,如单网卡的运行失败,单边网线中断等问题,其重要性如同raid 1,能提高系统容错能力,但是不会硬性网络性能(除了网卡切换的短暂时间)。下边是bonding的设置详解:
在启用bonding时建议关闭不稳定服务 NetworkManager
centos 底层网络服务 NetworkManager (NM) 并不是很稳定,在开启bonding时需要手动关闭
service NetworkManager stop #关闭NetworkManager服务
service NetworkManager status #查看NetworkManager状态
chkconfig NetworkManager on(off) #默认开机(不)启动
网络接口配置-bonding
• Bonding
再次说一下,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接口上传送所有的报文。本模式提供容错能力。
Bonding配置
配置bonding前需要关闭NetworkManager服务
1、创建bonding设备的配置文件
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS= “miimon=100 mode=1”
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
2、手动重启network
service network restart
3、物理断开网络(网卡:如果在VMWaer上试验,则直接在VMWaer窗口右下角断开网卡连接)
添加网卡但是没有添加配置文件,会处于非活动 用 ifconfig -a 查看
添加配置文件
BONDING_OPTS= “miimon=100 mode=1”
100毫秒发一次消息,没有回答则使用备用网卡顶替(mode=1)
查询状态bonding工作状态
cat /proc/net/bonding/bond0
4、测试
VMware右下角点击网络适配器,选择断开
总结:其实bonding也可以和磁盘阵列一样,组成bonding 10,以提高系统网络可靠性。
原创文章,作者:hunter,如若转载,请注明出处:http://www.178linux.com/43871