1.双网卡绑定(两块网卡当一块使用)
常用基本模式0,1,6 (所有模式共7个,0-6)
【1】0 :负载均衡,两块网卡同时工作,任何链路为恢复链路,流量提高一倍,需要交换机支持(也需要保证交换机的高可用性)
【2】1 :冗余,1块失败,另外一块开始工作,交换机不需要配置(任意一条链路坏掉以后,丢失秒级的1-3个包,恢复的时候不丢包)
【3】6 :负载均衡,两块网卡同时工作,流量提高一倍,不需要交换机支持(终端任何一个链路不会丢包,但是恢复的时候要丢10-15个包)
balance-rr (mode=0) 默认, 有高可用 (容错) 和负载均衡的功能, 需要交换机的配置,每块网卡轮询发包 (流量分发比较均衡).
active-backup (mode=1) 只有高可用 (容错) 功能, 不需要交换机配置, 这种模式只有一块网卡工作, 对外只有一个mac地址。缺点是端口利用率比较低
balance-xor (mode=2) 不常用
broadcast (mode=3) 不常用
802.3ad (mode=4) IEEE 802.3ad 动态链路聚合,需要交换机配置,没用过
balance-tlb (mode=5) 不常用
balance-alb (mode=6) 有高可用 ( 容错 )和负载均衡的功能,不需要交换机配置 (流量分发到每个接口不是特别均衡)
xmit_hash_policy:这个参数的重要性我认为仅次于mode参数,mode参数定义了分发模式 ,而这个参数定义了分发策略 ,文档上说这个参数用于mode2和mode4。
layer2:使用二层帧头作为计算分发出口的参数,这导致通过同一个网关的数据流将完全从一个端口发送,为了更加细化分发策略,必须使用一些三层信息,然而却增加了计算开销。
layer2+3:在1的基础上增加了三层的ip报头信息,计算量增加了,然而负载却更加均衡了,一个个主机到主机的数据流形成并且同一个流被分发到同一个端口,根据这个思想,如果要使负载更加均衡。
layer3+4:可以形成一个个端口到端口的流,负载更加均衡。通过TCP及UDP端口及其IP地址进行HASH计算。
miimon和arp: 使用miimon仅能检测链路层的状态,也就是链路层的端到端连接(即交换机某个口和与之直连的本地网卡口),然而交换机的上行口如果down掉了还是无法检测到,因此必然需要网络层的状态检测,最简单也是最直接的方式就是arp了,可以直接arp网关,如果定时器到期网关还没有回复arp reply,则认为链路不通了。
#0.加载内核
modprobe bonding
#1.配置绑定网卡接扣配置文件
vi /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 TYPE=Ethernet ONBOOT=yes BOOTPROTO=none USERCTL=no IPADDR=192.168.52.10 GATEWAY=192.168.52.1 BONDING_OPS="miimon=100 mode=1" #该行这里和下面#3,有一个地方写即可,否则会重复
#2.设置绑定网卡中的参与网卡 vi /etc/sysconfig/network-scripts/ifcfg-em2 DEVICE=em2 TYPE=Ethernet ONBOOT=yes BOOTPROTO=none MASTER=bond0 slave=yes #2.设置绑定网卡中的参与网卡 vi /etc/sysconfig/network-scripts/ifcfg-em3 DEVICE=em3 TYPE=Ethernet ONBOOT=yes BOOTPROTO=none MASTER=bond0 slave=yes
#7.双网卡解绑
rm -rf /etc/sysconfig/network-scripts/ifcfg-bond0
还原网卡文件,如果以前没有可以直接删掉
/etc/sysconfig/network-scripts/ifcfg-em2
/etc/sysconfig/network-scripts/ifcfg-em3
rmmod bonding #绑定的模块名干掉
service network restart #重启网络服务