红联Linux门户
Linux帮助

ifenslave:Linux下小巧的负载均衡工具

发布时间:2015-05-12 10:39:27来源:linux网站作者:linux人

ifenslave不知道有没有朋友了解呢?它是一款linux下的负载均衡工具,那么现在我们就来简单说一下这个ifenslave负载均衡工具吧。根据我们前面的网卡负载平衡设置,这个工具中的改动原理也很简单,有些类似。这款工具是一种粘合和分离式的软件,可以将数据包有效的分配,通常结合交换机和路由使用。


工作原理很简单,我举个例子,不一定成功,但能说明原理:建一个组,把eth0和eth1加进去

#ifenslave bond0 eth0
#ifenslave bond0 eth1
#ifconfig bond0 [ip] [submark]

这个时候会新建一个bond0虚拟设备,使用我设置的IP地址,这个时候eth0和eth1工作模式变成了混杂模式,什么数据都收。但数据过来之后由 ifenslave的底层驱动来作负载均衡,决定哪些数据规组里面的哪个成员(eth0,eth1)处理。


大家在注意这个解决方案的配置文件,其中有一句:

options bond0 miimon=100 mode=1

使用这个ifenslave负载均衡工具达到平衡的目的,应该是0,1是热备状态。

miimon是毫秒数,每100毫秒触发检测线路稳定性的事件。

mode= 是ifenslave的工作状态。


一共有7种方式:

=0: (balance-rr) Round-robin policy: (平衡抡循环策略):传输数据包顺序是依次传输,直到最后一个传输完毕, 此模式提供负载平衡和容错能力。

=1: (active-backup) Active-backup policy:(主-备份策略):只有一个设备处于活动状态。 一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得。 此模式提供了容错能力。

=2:(balance-xor) XOR policy:(广播策略):将所有数据包传输给所有接口。 此模式提供了容错能力。

=3:(balance-xor) XOR policy:(平衡策略): 传输根据原地址布尔值选择传输设备。 此模式提供负载平衡和容错能力。

=4:(802.3ad) IEEE 802.3ad Dynamic link aggregation.IEEE 802.3ad 动态链接聚合:创建共享相同的速度和双工设置的聚合组。

=5:(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡):没有特殊策略,第一个设备传不通就用另一个设备接管第一个设备正在处理的mac地址,帮助上一个传。

=6:(balance-alb) Adaptive load balancing:(适配器传输负载均衡):大致意思是包括mode5,bonding驱动程序截获 ARP 在本地系统发送出的请求,用其中之一的硬件地址覆盖从属设备的原地址。就像是在服务器上不同的人使用不同的硬件地址一样。


这款负载均衡工具的7种工作方式。


RHEL6平台LVS实现负载均衡Load Balancer:http://www.linuxdiyf.com/linux/11881.html

Linux双网卡绑定实现负载均衡(Bonding双网卡绑定):http://www.linuxdiyf.com/linux/11452.html

Linux服务器之LVS、Nginx和HAProxy负载均衡器对比总结:http://www.linuxdiyf.com/linux/10787.html

CentOS+Nginx一步一步开始配置负载均衡:http://www.linuxdiyf.com/linux/10205.html

CentOS 6中配置Bond多网卡负载均衡:http://www.linuxdiyf.com/linux/4254.html