免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1941 | 回复: 0
打印 上一主题 下一主题

Linux下双网卡绑定技术实现负载均衡 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-13 14:54 |只看该作者 |倒序浏览
保持服务器的高可用性是企业级 IT 环境的重要因素。其中最重要的一点是服务器网络连接的高可用性。网卡(NIC)绑定技术有助于保证高可用性特性并提供其它优势以提高网络性能。
我们在这介绍的Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。下面我们讨论一下bonding 的原理,什么是bonding需要从网卡的混杂(promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身Mac的以太网帧,对于别的数据帧都滤掉,以减轻驱程序的负担。但是网卡也支持外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。
说了半天理论,其实配置很简单,一共四个步骤:
实验的操作系统是Redhat Linux Enterprise 3.0
绑定的前提条件:芯片组型号相同,而且网卡应该具备自己独立的BIOS芯片。
1.编辑虚拟网络接口配置文件,指定网卡IP
vi /etc/sysconfig/network-scripts/ifcfg-bond0
[root@rhas-13 root]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond0
2 #vi ifcfg-bond0
  将第一行改成 DEVICE=bond0
  # cat ifcfg-bond0
  DEVICE=bond0
  BOOTPROTO=static
  IPADDR=172.31.0.13
  NETMASK=255.255.252.0
  BROADCAST=172.31.3.254
  ONBOOT=yes
  TYPE=Ethernet
  这里要主意,不要指定单个网卡的IP 地址、子网掩码或网卡 ID。将上述信息指定到虚拟适配器(bonding)中即可。
[root@rhas-13 network-scripts]# cat ifcfg-eth0
  DEVICE=eth0
  ONBOOT=yes
  BOOTPROTO=dhcp
[root@rhas-13 network-scripts]# cat ifcfg-eth1
  DEVICE=eth0
  ONBOOT=yes
  BOOTPROTO=dhcp
3 # vi /etc/modules.conf
编辑 /etc/modules.conf 文件,加入如下一行内容以使系统在启动时加载bonding模块,对外虚拟网络接口设备为 bond0加入下列两行
alias bond0 bonding
options bond0 miimon=100 mode=1
说明:miimon是用来进行链路监测的。 比如:miimon=100,那么系统每100ms监测一次路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。
mode=0表示load balancing (round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡作,另一块做备份. bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用
4 # vi /etc/rc.d/rc.local 加入两行
ifenslave bond0 eth0 eth1
route add -net 172.31.3.254 netmask 255.255.255.0 bond0
到这时已经配置完毕重新启动机器. 重启会看见以下信息就表示配置成功了
Bringing up interface bond0 OK
Bringing up interface eth0 OK
Bringing up interface eth1 OK
下面我们讨论以下mode分别为0,1时的情况
mode=1工作在主备模式下,这时eth1作为备份网卡是noarp的
root@rhas-13 network-scripts]# ifconfig 验证网卡的配置信息
bond0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 M etric:1
RX packets:18495 errors:0 dropped:0 overruns:0 frame:0
TX packets:480 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1587253 (1.5 Mb) TX bytes:89642 (87.5 Kb)
eth0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:9572 errors:0 dropped:0 overruns:0 frame:0
TX packets:480 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:833514 (813.9 Kb) TX bytes:89642 (87.5 Kb)
Interrupt:11
eth1 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING NOARP SLAVE MULTICAST MTU:1500 Metric:1
RX packets:8923 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:753739 (736.0 Kb) TX bytes:0 (0.0

Interrupt:15
那也就是说在主备模式下,当一个网络接口失效时(例如主交换机掉电等),不回出现网络中断,系统会按照cat /etc/rcd/rc.local里指定网卡的顺序工作,机器仍能对外服务,起到了失效保护的功能.
在mode=0 负载均衡工作模式下,他能提供两倍的带宽,我们来看一下网卡的配置信息
 [root@rhas-13 root]# ifconfig
bond0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:2817 errors:0 dropped:0 overruns:0 frame:0
TX packets:95 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:226957 (221.6 Kb) TX bytes:15266 (14.9 Kb)
eth0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:1406 errors:0 dropped:0 overruns:0 frame:0
TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:113967 (111.2 Kb) TX bytes:7268 (7.0 Kb)
Interrupt:11
eth1 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:1411 errors:0 dropped:0 overruns:0 frame:0
TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:112990 (110.3 Kb) TX bytes:7998 (7.8 Kb)
Interrupt:15
在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用.
通过查看bond0的工作状态查询能详细的掌握bonding的工作状态
[root@rhas-13 bonding]# cat /proc/net/bonding/bond0
  bonding.c:v2.4.1 (September 15, 2003)
  Bonding Mode: load balancing (round-robin)
   MII Status: up
  MII Polling Interval (ms): 0
  Up Delay (ms): 0
  Down Delay (ms): 0
  Multicast Mode: all slaves
  Slave Interface: eth1
  MII Status: up
  Link Failure Count: 0
  Permanent HW addr: 00:0e:7f:25:d9:8a
  Slave Interface: eth0
  MII Status: up
  Link Failure Count: 0
  Permanent HW addr: 00:0e:7f:25:d9:8b


使用NIC 组合技术以在Linux平台获得高可用性

网卡(NIC)组合技术是一种提供服务器高可用性和冗余特性的方法。本文研究了 Broadcom Advanced Server Program (BASP) 和 Intel Advanced Network Services (ANS) 如何实现网卡组合技术,并研究显示了在Dell系统下的 Oracle9i Real Application Clusters 认证配置中,如何基于 Linux 节点进行NIC 组合。

保持服务器的高可用性是企业级 IT 环境的重要因素。其中非常重要的一点是服务器网络连接的高可用性。网卡(NIC)组合技术有助于保证高可用性特性并提供其它优势以提高网络性能。NIC 组合技术是将两块或多块物理网卡集成到单一逻辑网卡中,然后由系统管理员分派一个IP 地址。如果其中一块物理网卡出现错误,由于IP 地址是绑定在逻辑网卡中而不是单一的物理网卡中,因此仍然可以访问该IP 地址。通过在服务器中安装多块网卡并进行数据流量的负载均衡,管理员就至少能够在快速以太网络环境中获得冗余特性并实现更高的吞吐性能。
Linux®  操作系统(OS)环境下的网卡组合技术包括 Broadcom®  Advanced Server Program (BASP)和 Intel®  Advanced Network Services (ANS)软件。本文阐述了两种工具如何实现网络流量的负载均衡和失效保护特性,然后详细描述使用BASP 在Dell系统下的 Oracle9iTM  Real Application Clusters 认证配置中,如何基于Linux节点进行NIC 组合的配置流程。
使用NIC 组合技术实现负载均衡和失效保护
NIC 组合技术提供网络数据流量的负载均衡以及当网络连接失效时的冗余NIC 操作等特性。当在同一台服务器中安装多块网卡时,可以将其创建组合。每个组合必须包含至少两块网卡,最大支持8块网卡。所能够安装的网卡数量取决于网卡组合的数量。
在两块或多块网卡的组合中,如果出现主网卡失效,则二级网卡就作为主网卡或活动网卡。在指定主网卡前,无法提供失效保护特性。当未指定优先级时,支持最高速度的网卡就作为主网卡。如果一块以上的网卡支持最高速度,则最后添加到组合中网卡作为主网卡。网卡组合最多支持8块主网卡。
如果由于网卡、缆线、交换机端口或交换机(如果网卡组合连接到单独交换机,如图1 所示)的问题而导致任何网卡出现失效错误,则启动失效保护特性,将工作负载分配到其它网卡中。如果所有活动网卡都发生问题,则网卡组合中指定配置的备用网卡上线运行。

图1. 使用网卡组合技术提供交换机失效保护特性的拓扑结构
研究Intel ANS 和BASP 的网卡组合技术特性
为了支持网卡组合技术特性,BASP 和Intel ANS 都包含专门的中间驱动程序以适用于各自企业的网络控制器和基本驱动程序。中间驱动程序作为一个或多个基本驱动程序的外壳程序,是基本驱动程序与网络协议集之间的接口。其工作原理是中间驱动程序控制那些数据包发送到那些物理接口,并控制有关网卡组合的其它基本属性。中间驱动程序也允许在网卡组合配置中包含其它品牌的网卡。Intel ANS 软件可以支持异构网卡,即Multi-Vendor Teaming (MVT) 技术特性,使得系统配置非常灵活。BASP 同样也支持该技术特性。
当使用BASP 或Intel ANS 驱动程序创建网卡组合时,其中至少一块网卡是Broadcom(如果使用BASP)或Intel(如果使用Intel ANS)网卡。但是,单个网卡不能同时属于一个以上的网卡组合。换句话说,每个模块中都有相应网卡的工作组合标记。例如,如果要实施Intel ANS 网卡组合,则必须至少使用一块Intel 网卡。
虽然在系统中可以同时存在两种中间驱动程序,但是不推荐在系统中同时使用BASP 和Intel ANS 软件模块,即使是使用不同的物理网络控制器,其原因是输出结果无法预见。
Intel ANS 网卡组合模式
Intel ANS 网卡组合模式包含如下技术特性:
适配器出错冗余(AFT). 该模式提供适配器的自动冗余失效保护特性,并可以与集线器或交换机协同工作。提供高速度、双工技术特性并可以进行其它设置。AFT 在每个网卡组合中支持2-8个适配器。仅有一个网卡处于活动状态以接收或发送网络数据流量。如果主连接(缆线、适配器或端口)出现错误,则由二级或备份适配器提供相应的网络连接。在出现失效错误时,如果主适配器的网络连接恢复,则相应的控制权将自动切换回到主适配器连接。当创建网卡组合后,AFT 是缺省应用的模式;这种模式不提供负载均衡特性。
自适应负载均衡(ALB). 这种模式提供网卡的数据传输流量负载均衡和错误冗余特性。网络传输的负载在组合中的所有适配器中共享。这种组合模式也支持各种网卡的混合速度和混合双工设置,并可以与任何交换机协同工作。
Cisco Fast EtherChannel 骨干网络技术或Intel 链接集合技术. 这种模式为网卡组合中的2块-8块10/100 适配器提供更高的数据传输和接收吞吐性能,并包含AFT 和负载均衡特性(仅适用于可路由协议)。但是,这种模式要求交换机支持Intel 链接集合、 Cisco®  Fast EtherChannel®  或静态 IEEE®  802.3ad 技术特性。并且,在所有网卡组合中有关速度、双工特性的网卡设置必须匹配,同时必须关闭遍历树协议(Spanning Tree Protocol)。
Cisco Gigabit EtherChannel 静态链接集合 这种模式是Fast EtherChannel1 模式的千兆以太网扩展技术。
IEEE 802.3ad 动态链接集合. 这种模式采用各种速度的适配器,应用动态链接集合技术创建一个或多个网卡组合。与静态链接集合模式相同,动态802.3ad 网卡组合提高了数据传输和接收吞吐性能并提供出错冗余保护特性。Link Aggregation Control Protocol (LACP) 提供动态链接集合特性。该协议能够自动检测到其它支持该特性的设备以及其功能,也就是说,LACP 能够使管理员指定集合系统中的某个链接。
如果需要要链接的对象未正确配置802.3ad 链接集合特性,则会检测到错误并发出警告。当使用该模式时,管理员配置组合中的所有网卡,使用同样的Media Access Control(MAC)地址接收数据包。Intel ANS 驱动程序保证输出数据的负载均衡特性,同时网卡组合的链接对象保证输入数据包的负载均衡特性。这种模式要求交换机必须完全支持IEEE 802.3ad 标准。
BASP 网卡组合模式
BASP 网卡组合模式包括下列技术特性:
智能化负载均衡. 这是Broadcom的专有技术,根据IP 流量提供错误冗余和负载均衡特性。这种技术特性能够负载均衡组合中高达8块网卡的网络数据输入、输出IP 流量。在这种模式中,组合中的所有适配器都配置有单独的MAC 地址。智能化负载均衡(SLB)特性提供与组合中的其它网卡或热备用网卡的自动错误检测和动态失效保护特性,并可以与任何交换机或集线器协同工作。
IEEE 802.3ad 链接集合. 这种模式通过静态和动态配置支持链接集合特性,并遵循IEEE 802.3ad 技术规范。与Intel相应的实施方案相同,BASP 驱动程序保证输出数据的负载均衡特性,同时网卡组合的链接对象保证输入数据包的负载均衡特性。
核心链接集合(骨干网络连接). 这种模式与802.3ad 非常类似,组合中的所有网卡都配置以相同的MAC 地址接收数据包。该模式支持多种环境,其网卡的链接对象可以静态配置以支持专有的骨干网络连接机制。例如,可以应用这种模式支持 Lucent®  OpenTrunk或Cisco Fast EtherChannel。基本上将,这种模式是802.3ad 链接集合的简化应用,其原因是该模式没有使用链接集合特性的标准化协议;是协议无关应用模式。骨干网特性支持负载均衡,因此能够扩大网络带宽、并且提供网络输入、输出流量的负载均衡特性。
在Dell的Oracle 认证配置环境中使用BASP 技术特性
Dell研究了网卡组合应用,以提供网卡和交换机级的负载均衡特性,从而保证不会出现群集系统的单点失效错误。DellTM  小组使用Intel ANS 和BASP 网卡组合软件在Oracle9i Real Application Clusters Certified Configuration 中执行测试。由于结果非常类似,本文仅讨论了有关BASP 的详细安装和配置方案;Intel ANS 除了配置文件和命令语法不同外,其它配置方案都完全相同。
研究环境使用四台Dell PowerEdgeTM  6650 服务器作为群集节点、两台Dell PowerConnectTM  5012 千兆交换机和在每个节点中配置两块内置Broadcom BCM5700 千兆网卡。图2 显示了在研究环境中所使用的多交换机、多网卡的硬件连接以及高可用性配置。

图2. Oracle 群集环境的拓扑结构
节点运行 Red Hat®  Linux Advanced Server 2.1 操作系统,核心程序版本2.4-9.e3,并安装Oracle9i Real Application Clusters,version 2.1。节点使用BASP 网卡组合软件(从basplnx-3.0.9-1.i386.rpm 软件包中安装)和BCM5700 驱动程序(从bcm5700-2.2.22-l.i386.rpm 软件包中安装)。
手工安装和配置
管理员可以手工配置BASP 软件,这种手工配置系统的特性仅推荐给有经验的用户使用或使用BASP 配置工具。BASP baspcfg 是命令行工具用于配置BASP 网卡组合、添加和删除网卡以及添加和删除虚拟设备。该工具可以使用定制的初始化脚本程序。
在研究中,Dell小组手工安装并配置BASP 软件。在开始进行配置前,管理员应该以root身份登录到要实施网卡组合的所有节点中。否则,在执行过程中会出现错误。
完成如图2所示的缆线连接。
在安装中间驱动程序前,将要进行组合的网卡脱机并卸载所有现有的链接Broadcom驱动程序模块:
% ifdown eth0
% ifdown eth1
% rmmod bcm5700
在每个节点中,安装最新的BCM5700 系列,应用于Red Hat Linux Advanced Server 2.1 平台的网卡驱动程序。研究环境使用bcm5700-2.2.22-1.i386 软件包:
% rpm -i bcm5700-2.2.22-1.i386.rpm
装载驱动程序模块到核心程序中:
% insmod bcm5700
删除以前安装的任何BASP 以前版本文件:
% rpm -e basplnx
安装最新的BASP 软件包,适用于特定的操作系统版本以及每个节点所需的网卡版本。研究环境使用 basplnx-3.0.9-1.i386.rpm 软件包:
% rpm -i basplnx-3.0.9-1.i386.rpm
装载BASP 模块到核心程序
% insmod basp
在配置组合前,首先配置要加入网卡的物理网卡。例如,如果要配置第一块网卡eth0,在/etc/sysconfig/network-scripts 目录下创建名为ifcfg-eth0 文件。文件应该包含如下信息:
DEVICE=eth0
BOOTPROTO=static
ONBOOT=no不要指定单个网卡的IP 地址、子网掩码或网卡 ID。将上述信息指定到虚拟适配器中(参见步骤10)。
重新启动网络服务以校验已经装载新的驱动程序:
% service network restart
在每个节点中,在/etc/basp 目录下创建网卡组合配置文件:team-private。下面是配置文件的样例:
TEAM_ID=0
TEAM_TYPE=0
TEAM_NAME=team-private
# 1st physical interface in the team
TEAM_PA0_NAME=eth0
TEAM_PA0_ROLE=0
# 2nd physical interface in the team
TEAM_PA1_NAME=eth1
TEAM_PA1_ROLE=0
# 1st virtual interface in the team
TEAM_VA0_NAME=private
文件包含如下参数:
TEAM_ID:唯一标识组合的数字
TEAM_TYPE:0 = SLB;1 = generic trunking, Fast EtherChannel 或Gigabit EtherChannel;2 = 802.3ad
TEAM_NAME:组合的ASCII 名
TEAM_PAx_NAME = 物理接口x的ASCII 名,其中x 可以是从0-7
TEAM_PAx_ROLE = 物理接口x的角色,其中 0 = primary;1 = hot standby;对于generic trunking, Fast EtherChannel 或Gigabit EtherChannel 组合,其参数值必须为0
TEAM_VAx_NAME = 虚拟接口x 的ASCII 名,其中x可以是从0-63
TEAM_VAx_VLAN = 虚拟接口x的802.1Q VLAN ID,有效的VLAN ID 可以是0-4094 (对于未标识的虚拟接口,也就是说未启用VLAN 的接口,则设置ID 为0 )样例文件设置两块网卡作为主网卡;因此网卡同时提供负载均衡和失效保护特性。
所有节点中,在/etc/sysconfig/network-scripts 目录下手工配置虚拟接口网络脚本程序,其愿意是无法自动创建该文件。在研究环境中,虚拟接口"private"的脚本文件为ifcfg-private,包含如下信息:
DEVICE=private
BOOTPROTO=static
IPADDR=192.168.0.1
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=192.168.0.255
ONBOOT=yes
编辑/etc/sysconfig/network 文件以保证包含下列命令行:
NETWORKING=yes
HOSTNAME=racnode1
在创建虚拟接口网络配置文件并作出相应修改后,保证在启动时在所有节点启动BASP 服务:
% chkconfig -level 35 basp on
% service basp start
失效保护测试
在完成手工配置步骤后,研究小组执行多项失效保护测试(参见图3 )。在第三项测试中,"两个交换机中一个交换机的电源未插情况下的失效保护",如果使用后台的简单脚本程序刷新地址解析协议(ARP)的高速缓存,则立刻就能发现失效保护协议已经生效。但是,由于这个脚本程序会产生其它未知的负面的影响,因此通常不推荐使用该程序来加速失效保护进程。

图3.网卡组合配置的失效保护测试
研究显示,从网络方面看,真正有可能减少 Oracle®  群集环境中的单点失效错误。无论是BASP 和Intel ANS 都业已证明是易用、健壮和可接受的系统失效保护特性。
通过网卡组合技术增加网络可靠性
随着要求服务器上线时间的增长,高可用性服务器的地位也越来越重要。由于网卡组合技术能够提高服务器购买者的投资回报(ROI),是迅速、轻松的提高网络可靠性和可扩展性的低成本方法。最重要的是,网卡组合技术能够为用户提供不间断的关键服务。BASP 和Intel ANS 技术提供给管理员创建网卡组合的有用工具。

关于作者:
Amit Bhutani (amit_bhutani@dell.com) 是Dell Product Group 中Linux Development 部门网络部分的软件工程师。Amit获得West Virginia University 的Computer Engineering 硕士学位,专业方向是软件工程(Software Engineering)。
Zafar Mahmood (zafar_mahmood@dell.com) 是Dell Product Group 的软件工程师,主要负责Oracle9i Real Application Clusters。Zafar 获得City University of New York 的Electrical Engineering 硕士学位,专业方向是计算机通信(Computer Communications)。
1 千兆以太网遵循 IEEE®  802.3ab 或 IEEE 802.3z 标准,并不意味着网络连接速度达到1Gbps。





使用多块网卡虚拟成为一块网卡,具有相同的IP地址。这项技术在sun和cisco中已经存在,分别称为Trunking和etherchannel技术,在Linux中,这种技术称为bonding。
  什么是bonding需要从ethernet网卡的promisc模式说起。我们知道,在正常情况下,ethernet网卡只接收目的mac地址是自身mac的ether帧,对于别的数据帧都过滤掉,以减轻驱动程序——也就是软件的负担。但是ethernet网卡也支持另外一种被称为promisc的模式,可以接收网络上所有的帧,很多系统程序如:sniffer、tcpdump,都运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。
  说了半天理论,其实配置很简单,因为在内核中已经包含了,只需要在编译的时候把网络设备选项中的Bonding driver support选中就可以了。
  然后,重新编译核心,重新起动计算机,执行如下命令:
#ifconfig eth0 down
#ifconfig eth1 down
#ifconfig bond0 ipaddress
#ifenslave bond0 eth0
#ifenslave bond0 eth1


例:在RedHat Linux 8.0环境中实现双网卡绑定指南

环境:

  OS: redhat 8.0
1. #cd /etc/sysconfig/network-scripts
    # cp ifcfg-eth0   ifcfg-bond0
----------------------------------------------------------------
2 #vi ifcfg-bond0
     将第一行改成 DEVICE=bond0
----------------------------------------------------------------
3 # vi /etc/modules.conf
     加入两行
alias bond0 bonding
options bond0  miimon=100  mode=1
----------------------------------------------------------------
4 # vi /etc/rc.d/rc.local
     加入两行
   ifenslave bond0 eth0 eth1
     route add -net 192.168.0.0 netmask 255.255.255.0 bond0
----------------------------------------------------------------
5 reboot
重启会看见:
................
Bringing up interface bond0  OK
Bringing up interface eth0    OK
Bringing up interface bond1  OK
----------------------------------------------------------------
6. 检查:
#netstat -r
192.168.0.0    255.255.255.0  0 40 0 0 bond0
192.168.0.0    255.255.255.0  0 40 0 0 eth0
192.168.0.0    255.255.255.0  0 40 0 0 eth1
这时候看看你的网卡后面的灯, 他们闪的频率是一样的.OK.
当#ifdown eth0 时, 转换有5-6秒的延时.
----------------------------------------------------------------
注意:
     如果网络不通需要从启bind
     # ifdown bind0
     #ifup      bind0
网卡绑定用在vncserver 或scp中就不灵了。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/22017/showart_184097.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP