Linux配置双网卡绑定实现负载均衡和高可用性配置

1. Bonding简述

双网卡配置设置虚拟为一个网卡实现网卡的冗余,其中一个网卡坏掉后网络通信仍可正常使用,实现网卡层面的负载均衡和高可用性

1.1 Bonding原理

网卡工作在混杂(promisc)模式,接收到达网卡的所有数据包,tcpdump工作用的也是混杂模式(promisc),将两块网卡的MAC地址修改为相同接收特定MAC的数据帧,然后把相应的数据帧传送给bond驱动程序进行处理。

1.2 Bonding模式

  • 轮询策略,值为0,按照设备顺序依次传输数据包,提供负载均衡和容错能力

  • 主备策略,值为1,只有主网卡处于工作状态,备网卡处于备用状态,主网卡坏掉后备网卡开始工作,提供容错能力

  • 异或策略,值为2,根据源MAC地址和目的MAC地址进行异或计算的结果来选择传输设备,提供负载均衡和容错能力

  • 广播策略,值为3,将所有数据包传输给所有接口通过全部设备来传输所有数据,一个报文会复制两份通过bond下的两个网卡分别发送出去,提供高容错能力

  • 动态链接聚合,值为4,按照802.3ad协议的聚合自动配置来共享相同的传输速度,网卡带宽最高可以翻倍,链路聚合控制协议(LACP)自动通知交换机聚合哪些端口,需要交换机支持 802.3ad协议,提供容错能力

  • 输出负载均衡模式,值为5,输出负载均衡模式,只有输出实现负载均衡,输入数据时则只选定其中一块网卡接收,需要网卡和驱动支持ethtool命令

  • 输入/输出负载均衡模式,值为6,输入和输出都实现负载均衡,需要网卡和驱动支持ethtool命令

2. 配置步骤

1. 进入网卡配置目录

# cd /etc/sysconfig/network-scripts

2. 创建双网卡绑定配置文件

# vi ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.1.3
NETMASK=255.255.255.0
#GATEWAY=192.168.1.254
ONBOOT=yes
USERCTL=no
MOCK=yes
NM_Cmock=no
BONDING_OPTS="mode=1 miimon=100"

3. 修改绑定网卡

建议:在网卡绑定前,先对先前的网卡配置信息进行备份

  • 修改网卡1配置
# vi ifcfg-em1
DEVICE=em1
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethemet
USERCTL=no
MASTER=bond0
SLAVE=yes  
  • 修改网卡2配置
# vi ifcfg-em2
DEVICE=em2
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethemet
USERCTL=no
MASTER=bond0
SLAVE=yes 

4. 配置modprobe参数

注意:redhat6 以后没有了modprobe.conf这个配置文件。

vi /etc/modprobe.d/dist.conf
alias bond0 bonding
-- options bond0中mode=1表示的是网卡互备
options bond0 mode=1 miimon=50 

5. 关闭网络管理程序

# service  NetworkManager stop 
# chkconfig NetworkManager off 

6. 重启网络

说明:如果重启网络后不能ping通网络, 需要重启一下机器。

# service network restart

7. 查看当前使用网卡信息

# cat /proc/net/bonding/bond0
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、Bond的工作模式 Linux bonding驱动提供了一个把多个网络接口设备捆为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。 bonding一共有7种工作模式(mode): 1)、bond=0,(balance-rr) Round-robin policy: (平衡轮询策略):传输数据包顺序是依次传输,直到最后一个传输完毕,此模式提供负载平衡和容错能力。 2)、bond=1,(active-backup) Active-backup policy:(活动备份策略):只有一个设备处于活动状态。一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得。此模式提供了容错能力。 3)、bond=2,(balance-xor) XOR policy:(平衡策略):传输根据[(源MAC地址xor目标MAC地址)mod设备数量]的布尔值选择传输设备。 此模式提供负载平衡和容错能力。 4)、bond=3,(broadcast) Broadcast policy:(广播策略):将所有数据包传输给所有设备。此模式提供了容错能力。 5)、bond=4,(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 动态链接聚合:创建共享相同的速度和双工设置的聚合组。此模式提供了容错能力。每个设备需要基于驱动的重新获取速度和全双工支持;如果使用交换机,交换机也需启用 802.3ad 模式。 6)、bond=5,(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡):通道不需要专用的交换机支持。发出的流量根据当前负载分给每一个设备。由当前设备处理接收,如果接受的设 备传不通就用另一个设备接管当前设备正在处理的mac地址。 7)、bond=6,(balance-alb) Adaptive load balancing: (适配器负载均衡):包括mode5,由 ARP 协商完成接收的负载。bonding驱动程序截获 ARP在本地系统发送出的请求,用其中之一的硬件地址覆盖从属设备的原地址。就像是在服务器上不同的人使用不同的硬件地址一样。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值