redhat as 5 bonding 高可用浅析

redhat as 5 bonding 高可用
环境:vmware+2.6.18-8.el5xen

step1:定义模块
path: /etc/modprobe.conf
alias bond0 bonding
alias bond1 bonding
options bond0 miimon=100 mode=1 max_bonds=2
options bond1 miimon=100 mode=1 max_bonds=2
注:
miimon=100
miimon是指多久时间要检查网路一次,单位是ms(毫秒)
这边的100,是100ms,即是0.1秒
意思是假设其中有一条网路断线,会在0.1秒内自动备援

step2:创建bond0 bond1配置文件
path:/etc/sysconfig/network-scripts/
[root@rac2 network-scripts]# cat ifcfg-bond0
BOOTPROTO=static
STARTMODE=onboot
IPADDR=192.168.206.12
NETMASK=255.255.255.0
GATEWAY=192.168.206.2
DEVICE=bond0
ONBOOT=yes
USERCTL=no
注:bond1雷同 修改ip device即可

step3:装载 驱动模块
modprobe -v bond0--卸载 modprobe  -r bonding
验证:
lsmod |grep bond

[root@rac2 network-scripts]# lsmod |grep bond
bonding                75305  0
step4:重启网络
service network restart
查看bond0
ifconfig bond0 为绑定任何网卡

step5 :绑定网卡
ifenslave - Attach and detach slave network devices to a bonding device.

ifenslave bond0 eth1 eth0
ifenslave bond1 eth2 eth3
同时添加到/etc/rc.local 设置开机绑定 否则重启后就失效
验证:
file:/proc/net/bonding/bond0
[root@rac2 network-scripts]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0 --当期活跃的是 eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth1
MII Status: up
Link Failure Count: 1
Permanent HW addr: 00:0c:29:1f:3a:ca

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0c:29:1f:3a:c0

测试:
vmware右下角 网卡标识  断开eth1

说明(转):

具体的参数列表:
arp_interval
  指定ARP链路监控频率,单位是毫秒(ms)。如果APR监控工作于以太兼容模式(模式0和模式2)下,需要把switch(交换机)配置为在所有链路上均匀的分发网络包。如果switch(交换机)被配置为以XOR方式分发网络包,所有来自ARP目标的应答将会被同一个链路上的其他设备收到,这将会导致其他设备的失败。ARP监控不应该和miimon同时使用。设定为0将禁止ARP监控。缺省值为0。
arp_ip_target
  指定一组IP地址用于ARP监控的目标,它只在arp_interval > 0时有效。这些IP地址是ARP请求发送的目标,用于判定到目标地址的链路是否工作正常。该设定值为ddd.ddd.ddd.ddd格式。多个IP地址通过逗号分隔。至少指定一个IP地址。最多可以指定16个IP地址。缺省值是没有IP地址。
downdelay
  指定一个时间,用于在发现链路故障后,等待一段时间然后禁止一个slave,单位是毫秒(ms)。该选项只对miimon监控有效。downdelay值应该是miimon值的整数倍,否则它将会被取整到最接近的整数倍。缺省值为0。
lacp_rate
  指定在802.3ad模式下,我们希望的链接对端传输LACPDU包的速率。可能的选项:
  slow 或者 0
    请求对端每30s传输LACPDU
  fast 或者 1
    请求对端每1s传输LACPDU
  缺省值是slow
max_bonds
  为bonding驱动指定创建bonding设备的数量。比如,如果max_bonds为3,而且bonding驱动还没有加载,那么bond0,bond1,bond2将会被创建。缺省值为1。
miimon
  指定MII链路监控频率,单位是毫秒(ms)。这将决定驱动检查每个slave链路状态频率。0表示禁止MII链路监控。100可以作为一个很好的初始参考值。下面的use_carrier选项将会影响如果检测链路状态。更多的信息可以参考“高可靠性”章节。缺省值为0。
mode
  指定bonding的策略。缺省是balance-rr (round robin,循环赛)。可选的mode包括:
  balance-rr 或者 0
    Round-robin(循环赛)策略:按顺序传输数据包,从第一个可用的slave到最后一个可用的slave。该模式提供了负载均衡和容错机制。
  active-backup 或者 1
    Active-backup(激活-备份)策略:只有一个slave是激活的(active)。其他的slave只有在当前激活的slave故障后才会变为激活的(active)。从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。
    在bonding 2.6.2和以后的版本中,如果在active-backup模式下出现failover 该模式提供了容错机制。下面的primary选项将会影响该工作模式的行为。
  balance-xor 或者 2
    XOR策略:基于指定的传输HASH策略传输数据包。缺省的策略是:(源MAC地址 XOR 目标MAC地址) % slave数量。其他的传输策略可以通过xmit_hash_policy选项指定,下文将会对之介绍。
    该模式提供了负载均衡和容错机制。
  broadcast 或者 3
    Broadcase(广播)策略:在每个slave接口上传输每个数据包。该模式提供了容错机制。
  802.3ad 或者 4
    IEEE 802.3ad Dynamic link aggregation(动态链接聚合)。创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。
    外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。需要注意的是,并不是所有的传输策略都是802.3ad适应的,尤其考虑到在802.3ad标准43.2.4章节提及的包乱序问题。不同的实现可能会有不同的适应性。
    必要条件:
    1. ethtool支持获取每个slave的速率和双工设定;
    2. switch(交换机)支持IEEE 802.3ad Dynamic link aggregation。
    大多数switch(交换机)需要经过特定配置才能支持802.3ad模式。
  balance-tlb 或者 5
    自适应的传输负载均衡:不需要任何特别的switch(交换机)支持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另一个slave接管失败的slave的MAC地址。
    必要条件:
    ethtool支持获取每个slave的速率。
  balance-alb 或者 6
    自适应均衡负载:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance, rlb),而且不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的。bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。
    来自服务器端的接收流量也会被均衡。当本机发送ARP请求时,bonding驱动把对端的IP信息从ARP包中复制并保存下来。当ARP应答从对端到达时,bonding驱动把它的硬件地址提取出来,并发起一个ARP应答给bond中的某个slave。使用ARP协商进行负载均衡的一个问题是:每次广播 ARP请求时都会使用bond的硬件地址,因此对端学习到这个硬件地址后,接收流量将会全部刘翔当前的slave。这个问题通过给所有的对端发送更新(ARP应答)来解决,应答中包含他们独一无二的硬件地址,从而导致流量重新分布。当新的slave加入到bond中时,或者某个未激活的slave重新激活时,接收流量也要重新分布。接收的负载被顺序地分布(round robin)在bond中最高速的slave上。
    当某个链路被重新接上,或者一个新的slave加入到bond中,接收流量在所有当前激活的slave中全部重新分配,通过使用指定的MAC地址给每个 client发起ARP应答。下面介绍的updelay参数必须被设置为某个大于等于switch(交换机)转发延时的值,从而保证发往对端的ARP应答不会被switch(交换机)阻截

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21993926/viewspace-674677/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/21993926/viewspace-674677/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值