Linux Bonding Switche agregacje

Linux Bonding Switche agregacje

Poniżej opiszę w jaki sposób skonfigurować bonding od strony systemu operacyjnego na przykładzie RHEL do switchy Cisco, Juniper oraz HP z wykożytaniem LACP, oraz konfigurację samych switchy.

Konfiguracja RHEL

załadowanie modułu odpowiedzialnego za bonding w RHEL

# modprobe --first-time bonding

Sprawdzenie możliwości bondingu:

# modinfo bonding
filename:       /lib/modules/2.6.32-504.el6.x86_64/kernel/drivers/net/bonding/bonding.ko
author:         Thomas Davis, tadavis@lbl.gov and many others
description:    Ethernet Channel Bonding Driver, v3.6.0
version:        3.6.0
license:        GPL
srcversion:     332968C1FF133A42ED33D6B
depends:        8021q,ipv6
vermagic:       2.6.32-504.el6.x86_64 SMP mod_unload modversions 
parm:           max_bonds:Max number of bonded devices (int)
parm:           tx_queues:Max number of transmit queues (default = 16) (int)
parm:           num_grat_arp:Number of gratuitous ARP packets to send on failover event (int)
parm:           num_unsol_na:Number of unsolicited IPv6 Neighbor Advertisements packets to send on failover event (int)
parm:           miimon:Link check interval in milliseconds (int)
parm:           updelay:Delay before considering link up, in milliseconds (int)
parm:           downdelay:Delay before considering link down, in milliseconds (int)
parm:           use_carrier:Use netif_carrier_ok (vs MII ioctls) in miimon; 0 for off, 1 for on (default) (int)
parm:           mode:Mode of operation; 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp)
parm:           primary:Primary network device to use (charp)
parm:           primary_reselect:Reselect primary slave once it comes up; 0 for always (default), 1 for only if speed of primary is better, 2 for only on active slave failure (charp)
parm:           lacp_rate:LACPDU tx rate to request from 802.3ad partner; 0 for slow, 1 for fast (charp)
parm:           ad_select:803.ad aggregation selection logic; 0 for stable (default), 1 for bandwidth, 2 for count (charp)
parm:           xmit_hash_policy:balance-xor and 802.3ad hashing method; 0 for layer 2 (default), 1 for layer 3+4, 2 for layer 2+3 (charp)
parm:           arp_interval:arp interval in milliseconds (int)
parm:           arp_ip_target:arp targets in n.n.n.n form (array of charp)
parm:           arp_validate:validate src/dst of ARP probes; 0 for none (default), 1 for active, 2 for backup, 3 for all (charp)
parm:           arp_all_targets:fail on any/all arp targets timeout; 0 for any (default), 1 for all (charp)
parm:           fail_over_mac:For active-backup, do not set all slaves to the same MAC; 0 for none (default), 1 for active, 2 for follow (charp)
parm:           all_slaves_active:Keep all frames received on an interfaceby setting active flag for all slaves; 0 for never (default), 1 for always. (int)
parm:           resend_igmp:Number of IGMP membership reports to send on link failure (int)

Konfiguracja Interfejsów sieciowych, w mym przypadku będzie:

Bond0 – składa się z  2 portu z karty 4 portowej na płycie głównej oraz 2 portu z karty 4 portowej na PCI slot 6

Konfiguracja karty 1

przechodzimy do pliku /etc/sysconfig/network-scripts/ifcfg-em2

# vi /etc/sysconfig/network-scripts/ifcfg-em2
DEVICE="em2"
BOOTPROTO="none"
IPV6INIT="no"
ONBOOT="yes"
MASTER=bond0
SLAVE=yes
Konfiguracja karty 2
vi /etc/sysconfig/network-scripts/ifcfg-p6p2
DEVICE="p6p2"
BOOTPROTO="none"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
MASTER=bond0
SLAVE=yes
Konfiguracja bond0 w trybie lacp:
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=10.200.244.30
NETMASK=255.255.248.0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="miimon=100 mode=4 lacp_rate=1"
GATEWAY=10.200.244.1

Konfiguracja Switcha:

Cisco Catalist 4500x w konfiguraacji VSS:

interface Port-channel1
 description Server1
 switchport
 switchport access vlan 200
interface TenGigabitEthernet1/1/9
 description Server1_em2
 switchport access vlan 200
 channel-group 1 mode active
interface TenGigabitEthernet2/1/9
 description Server1_p6p2
 switchport access vlan 200
 channel-group 1 mode active

Cisco Nexus 5k porty które należą do FEX’a który jest skonfigurowany w vPC

Nexus1

interface port-channel29
  description Server01-Bond0
  switchport access vlan 200
  spanning-tree port type edge
  speed 1000
  vpc 29
interface Ethernet101/1/3
  description Server1_em2
  switchport access vlan 200
  spanning-tree port type edge
  speed 1000
  logging event port link-status
  channel-group 29 mode active 

Nexus2

interface port-channel29
  description Server1_bond0
  switchport access vlan 200
  spanning-tree port type edge
  speed 1000
  vpc 29
interface Ethernet101/1/3
  description Server1_p6p2
  switchport access vlan 200
  spanning-tree port type edge
  speed 1000
  logging event port link-status
  channel-group 29 mode active

Juniper EX:

Jeżeli jeszcze nie tworzyliśmy interfejsów ae na switchu EX musimy, zdefiniować ile interfejsów ae ma być widoczne na urządzeniu, w tym przypadku

# set chassis aggregated-devices ethernet device-count 2  

definiujemy interfejs ae z lacp:

set interface ae0 description Server1_bond0
set interface ae0.0 family ethernet-switching port-mode access
set interface ae0.0 family ethernet-switching vlan members vlan200
set interface ae0 aggregated-ether-options lacp active

dodajemy interfejsy do ae0

set interface xe-0/1/0 description Serwer1_em2
set interface xe-0/1/0 ether-options 802.3ad ae0
set interface xe-1/1/0 description Serwer1_p6p2
set interface xe-1/1/0 ether-options 802.3ad ae0

na koniec wykonujemy commit:

# commit 
fpc0: 
configuration check succeeds
fpc1: 
commit complete
fpc0: 
commit complete

HP:

Tworzymy interfejs trk  z przypisanie portów:

trunk A7-A8 trk10 lacp

dajemy opis portów

interface A7 name "Server1_em2"
interface A8 name "Server1_p6p2"

przypisujemy interfejs trk10 do vlanu 200 w trybie access

vlan 4 untagged trk10

 

Pasjonat komputerowy od zawsze oraz maniak w zakresie sieci, wirtualizacji oraz bezpieczeństwa IT. Kompetentny inżynier z dużym doświadczeniem w realizacji projektów informatycznych i telekomunikacyjnych. Wieloletni administrator IT, który utrzymuje systemy informatyczne dostosowując je do wymogów biznesowych z zapewnieniem dostępności 24/7/365.
Posts created 126

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top