Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Treaming NICs 3

Status
Not open for further replies.

frelaxx

IS-IT--Management
Jul 16, 2004
40
US
I wanted to configure some of our server for HA using NIC teaming. I am running Red Hat 5 on Dell 1425 machines. Is it possible to do teaming on these machines?
 
What you want is called bonding. I've done it plenty of times on SuSE and gentoo. Last time I did it on RedHat was for RedHat 9. I don't think its changed too much.

On the NICs you want use, configure as such...

/etc/sysconfig/network-scripts/ifcfg-eth0
Code:
DEVICE=eth0
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

/etc/sysconfig/network-scripts/ifcfg-eth1
Code:
DEVICE=eth1
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

Then make a new file
/etc/sysconfig/network-scripts/ifcfg-bond0
and place these lines in it with the correct addresses for your site.
Code:
DEVICE=bond0
USERCTL=no
ONBOOT=yes
BOOTPROTO=static
BROADCAST=<broadcast>
NETWORK=<network>
NETMASK=<netmask>
IPADDR=<address>

Then in /etc/modules.conf add the following lines to load the module at startup.
Code:
alias bond0 bonding
options bonding miimon=100

Taken from here
The following module parameters can be passed:

mode=

Possible values are 0 (round robin policy, default) and 1 (active backup
policy), and 2 (XOR). See question 9 and the HA section for additional info.

miimon=

Use integer value for the frequency (in ms) of MII link monitoring. Zero value
is default and means the link monitoring will be disabled. A good value is 100
if you wish to use link monitoring. See HA section for additional info.

downdelay=

Use integer value for delaying disabling a link by this number (in ms) after
the link failure has been detected. Must be a multiple of miimon. Default
value is zero. See HA section for additional info.

updelay=

Use integer value for delaying enabling a link by this number (in ms) after
the "link up" status has been detected. Must be a multiple of miimon. Default
value is zero. See HA section for additional info.

arp_interval=

Use integer value for the frequency (in ms) of arp monitoring. Zero value
is default and means the arp monitoring will be disabled. See HA section
for additional info. This field is value in active_backup mode only.

arp_ip_target=

An ip address to use when arp_interval is > 0. This is the target of the
arp request sent to determine the health of the link to the target.
Specify this value in ddd.ddd.ddd.ddd format.

If you need to configure several bonding devices, the driver must be loaded
several times. I.e. for two bonding devices, your /etc/conf.modules must look
like this:

alias bond0 bonding
alias bond1 bonding

options bond0 miimon=100
options bond1 -o bonding1 miimon=100

Check your kernel docs for updated info.

Have Fun!

[pipe]

P.S. Make sure the switch your connecting to is set up as well.
 
Can I connect the bonded interfaces to different switches to provide a level of high availability?
 
Yes.

Taken from here - better explanations than the first one I linked.
Another resource for Ethernet Bonding & more.

6. Switch Configuration

For this section, "switch" refers to whatever system the bonded devices are directly connected to (i.e., where the other end of the cable plugs into). This may be an actual dedicated switch device, or it may be another regular system (e.g., another computer running Linux),

The active-backup, balance-tlb and balance-alb modes do not require any specific configuration of the switch.

The 802.3ad mode requires that the switch have the appropriate ports configured as an 802.3ad aggregation. The precise method used to configure this varies from switch to switch, but, for example, a Cisco 3550 series switch requires that the appropriate ports first be grouped together in a single etherchannel instance, then that etherchannel is set to mode "lacp" to enable 802.3ad (instead of standard EtherChannel).

The balance-rr, balance-xor and broadcast modes generally require that the switch have the appropriate ports grouped together. The nomenclature for such a group differs between switches, it may be called an "etherchannel" (as in the Cisco example, above), a "trunk group" or some other similar variation. For these modes, each switch will also have its own configuration options for the switch's transmit policy to the bond. Typical choices include XOR of either the MAC or IP addresses. The transmit policy of the two peers does not need to match. For these three modes, the bonding mode really selects a transmit policy for an EtherChannel group; all three will interoperate with another EtherChannel group.

I hope this helps.

Have Fun!

[pipe]
 
frelaxx,
Bonding is generally used to either 1) increase bandwidth to a specific switch through ganging the NICs, or 2) to provide redundancy of the path by allowing for a failure of a nic in a bonded team to a virtual IP.

Bonding is not, generally, intended to straddle two switches.

IANACCIE, but if you want to design for tolerance to switch/router failure, you should be putting in two distinct NICs (bonded teams or singles) with their own IPs. THEN you program the virtual IP into the server, into the network routing, and into the failure management into the routers/switches so that you have redundant paths for delivery to the endpoint.


D.E.R. Management - IT Project Management Consulting
 
I tend to disagree, thedaver. I currently have my linux boxes, with bonded NICs, connected to a pair of 3com 4924s with the XRN interconnect. This allows the bond to work across two physically distinct switches while allowing the aggregate link to function.

Cisco has similar. A distributed switch fabric needs to be in place for this to work or your stuck with using on one switch.

Later. [pipe]
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top