Richard Bruno
navigation
Home
admin









Bonding
October 18th, 2016

Bonding = Aggrégation de liens



La technique de bonding appelée Channel bonding ou Port trucking consiste à regrouper des liens réseaux/interfaces/cartes réseaux afin de mettre en place du load balancing et/ou améliorer la tolérance de pannes.

Pour mettre cette technique en place vous aurez besoin du module kernel : bonding

Il existe 7 mode différents de bonding en gros 7 options pour ce module les voici : Il est biensur possible d'utiliser plus de 2 interfaces réseaux.

Dans l'exemple que je vous propose nous disposons d'un serveur avec une carte eth0 et une carte eth1 non utilisée, n'oubliez pas de brancher eth1 physiquement et sur un switch diffèrent de celui de eth0 si possible.

Le mode 0 ou équilibrage de charge :

Les paquets réseaux passe sur une carte réseau qui est active, puis sur une autre, séquentiellement. Le débit de la bande passante est augmenté (ex: eth0 + eth1) . Si une des cartes réseaux tombe en panne, le bonding ne l'utilisera plus et utilisera les autres.

le mode 1 ou sauvegarde active :

Une seule interface réseau est utilisée. Si un panne est détectée sur celle ci , l'autre interface est activée et prend le relais. La bande passante est donc celle que peut supporter la carte active.

le mode 2 ou balance XOR :

Une interface est affectée à l'envoi vers une même adresse MAC. Ainsi les transferts sont parallélisés et le choix de l'interface suit la règle : (Adresse MAC de la source XOR Adresse MAC de la destination) modulo nombre d'interfaces.

Le mode 3 ou broadcast :

Les données sont transmises sur toutes les interfaces réseaux actives.

Le mode 4 ou 802.3ad :

La norme 802.3ad permet des agrégat de liens, élargissant dynamiquement la bande passante. Les groupes sont créés dynamiquement sur la base d'un paramétrage commun.

Le mode 5 ou Traffic load balancing :

Le trafic sortant est distribué selon la charge courante calculée selon la vitesse de chaque cartes réseaux. Le trafic entrant est reçu par l'interface courante. Si l'interface de réception des données passe en inactive, une autre carte prend son adresse MAC.

Le mode 6 ou Adaptive load balancing :

C'est un mode étendu du mode 5, qui inclut le load balancing aussi réception. L'équilibrage de charge de réception est réalisé au niveau des réponses ARP. Le module intercepte les réponses ARP et change l'adresse MAC par celle d'une de ses interfaces actives.

Source : http://www.system-linux.eu/index.php?post/2010/02/08/Configuration-bonding-avec-deux-cartes-r%C3%A9seaux

Configuration de l’agrégat

[root@zzz ~]# more /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=none
NAME=bond0
BONDING_OPTS="mode=0 miimon=100"
IPADDR=10.165.120.30
PREFIX=24
GATEWAY=10.165.120.1
DNS1=10.165.120.4
DNS2=10.165.120.10



Configuration de la carte 1

[root@zzz ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
NM_CONTROLLED=no
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
GATEWAY=10.165.120.1
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME="System eth0"
UUID=164a78e1-09a8-408d-895b-ada6ac4fd863
SLAVE=yes
MASTER=bond0



Configuration de la carte 2

[root@zzz ~]# more /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
UUID=8bf6590b-f92a-4cab-b711-5c5b40a117e3
ONBOOT=yes
NM_CONTROLLED=no
GATEWAY=10.165.120.1
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME="System eth1"
SLAVE=yes
MASTER=bond0



configuration du switch (ici un dell powerconnect 6224)

interface ethernet 1/g1
channel-group 1 mode auto
description 'statix 1'
spanning-tree disable
switchport mode general
switchport general pvid 8
switchport general allowed vlan add 8
exit
!
interface ethernet 1/g2
channel-group 1 mode auto
spanning-tree disable
switchport mode general
switchport general pvid 8
switchport general allowed vlan add 8
exit



Bonding et Jessie



Paquets

ap-get install ifenslave
/etc/init.d/networking stop



Modification de /etc/modprobe.d/bonding.conf

#/etc/modprobe.d/bonding.conf
alias bond0 bonding
options bonding mode=4 miimon=100 lacp_rate=1



Modification de /etc/network/interfaces


# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth2
auto eth2
iface eth2 inet manual
bond-master bond0
allow-hotplug eth3
auto eth3
iface eth3 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 10....
netmask 255.255.255.0
network 10....
broadcast 10....
gateway 10....
bond-mod 802.3ad
bond-miimon 100
bond-downdelay 200
bond-updelay 200
bond-lacp-rate 4
bond-slaves none



Source : http://crashmag.net/how-to-configure-network-bonding-lacp-on-debian-wheezy

Modification de la config du switch (ici un switch DELL MXL)

https://www.force10networks.com/CSPortal20/TechTips/0052B_HowDoICreateAPortChannel.aspx



Dernières modifs
Systemd (October 24th, 2020)
TP - rsyslogd (June 20th, 2017)
Gestion de la memoire (June 20th, 2017)
Ansible (November 10th, 2016)
Fichiers et systèmes de fichiers (November 8th, 2016)
X (October 20th, 2016)
Obtenir des informations sur le système (October 19th, 2016)

Contact
Pour m'envoyer un mail,
Pour me laisser un commentaire :
richard.brunooo
chez
gmail.com


powered by kure, modified by Bruno