Linux 自带的软件bonding 可以把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。其中网络负载均衡常用于我们的文件服务器中,文件服务器在多用户同时使用的情况下,网络压力非常大的,所以为了解决同一个IP突破流量的限制,使用多网卡绑定是一个极好的办法。网络冗余在生产环境中也特别重要,特别是在网卡在可能发生物理性质损坏而无法同时使用同一IP快速响应的情况下多网卡绑定就显得特别重要了,bonding为网卡提供了冗余的支持,把多网卡绑定到一个IP,即使其中一块网卡发生物理损坏的情况下,另一块网卡自动启用,并且提供正常服务。
下面我们先来了解一下bonding的常用mode种类:
mode=0,即:(balance-rr) Round-robin policy(平衡抡循环策略)数据包的传输方式轮询传输,第一个包传输给eth0 ,第二个包传输给eth1,就这样循环下去,直到传输完毕,这里需要注意的是mode0能作为负载均衡作用,不提供容错功能,如果第一张网卡出现故障网络将面临瘫痪。
mode=1,即:(active-backup) Active-backup policy(主-备份策略)只有一个处于活动状态,当主网卡出现故障时,备网卡马上由备转变成主。这个模式提供了较高的容错能力。但是资源利用率较低。
mode=3,即:broadcast(广播策略)在每个slave接口上传输每个数据包,此模式提供了容错能力
演示环境:VMware 11 版本 ,系统centos 6.8
第一步:
首先我们新添加一张网卡,重启并生效
第二步:关闭NetworkManager服务(在centos6系列版本中开启NetworkManager与bonding会产生冲突)
[root@centos6~]#serviceNetworkManagerstop StoppingNetworkManagerdaemon:[OK] [root@centos6~]#chkconfigNetworkManageroff
第三步:创建虚拟网卡bond0,在/etc/sysconfig/network-scripts目录下新建虚拟网卡band0,在这里使用的mode是1,文件内容如图所示
[root@centos6~]#vim/etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 BOOTPROTO=none BONDING_OPTS="miimon=100,mode=1" IPADDR=10.1.45.181 PREFIX=16 GATEWAY=10.1.0.1
第四步:配置网卡参数,网卡参数中需要标注网卡名,网卡的角色及虚拟主卡名称。
[root@centos6~]#vim/etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 SLAVE=yes MASTER=bond0 [root@centos6~]#vim/etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 SLAVE=yes MASTER=bond0
第五步:重启网卡,查看状态
使用我另一台主机ping状态为通
Connectingto10.1.45.180:22... Connectionestablished. Toescapetolocalshell,press'Ctrl+Alt+]'. Lastlogin:ThuSep114:51:242016from10.1.250.31 WelcometothehomeofsNowbamboo^^ [root@localhost~]#ping10.1.45.181 PING10.1.45.181(10.1.45.181)56(84)bytesofdata. 64bytesfrom10.1.45.181:icmp_seq=1ttl=64time=1.63ms 64bytesfrom10.1.45.181:icmp_seq=2ttl=64time=0.354ms 64bytesfrom10.1.45.181:icmp_seq=3ttl=64time=0.250ms 64bytesfrom10.1.45.181:icmp_seq=4ttl=64time=0.514ms 64bytesfrom10.1.45.181:icmp_seq=5ttl=64time=0.282ms 64bytesfrom10.1.45.181:icmp_seq=6ttl=64time=0.252ms 64bytesfrom10.1.45.181:icmp_seq=7ttl=64time=0.361ms 64bytesfrom10.1.45.181:icmp_seq=8ttl=64time=0.310ms 64bytesfrom10.1.45.181:icmp_seq=9ttl=64time=0.426ms 64bytesfrom10.1.45.181:icmp_seq=10ttl=64time=0.439ms 64bytesfrom10.1.45.181:icmp_seq=11ttl=64time=0.506ms 64bytesfrom10.1.45.181:icmp_seq=12ttl=64time=0.502ms 64bytesfrom10.1.45.181:icmp_seq=13ttl=64time=0.423ms 64bytesfrom10.1.45.181:icmp_seq=14ttl=64time=0.230ms 64bytesfrom10.1.45.181:icmp_seq=15ttl=64time=0.494ms 64bytesfrom10.1.45.181:icmp_seq=16ttl=64time=0.417ms 64bytesfrom10.1.45.181:icmp_seq=17ttl=64time=0.522ms
现在我关闭一张网卡,看网络是否有波动
总结:
在使用bonding的mode1时,必须至少要有两块网卡,一张为活动网卡,另一张为备用状态,当主卡发生故障时备卡马上接替工作,继续完成数据传输。mode0模式时需要注意的是,mode0只支持负载均衡,加速网络数据包传输,没有容错功能。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。